// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 46;
	objects = {

/* Begin PBXBuildFile section */
		30A1F52E1CE68465008FC205 /* BasicDatabaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30A1F52D1CE68465008FC205 /* BasicDatabaseTests.swift */; };
		30AD2E0A1CDD506700A28A0C /* SyncbaseCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 30AD2DFF1CDD506700A28A0C /* SyncbaseCore.framework */; };
		30AD2E311CDD508700A28A0C /* Batch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E1B1CDD508700A28A0C /* Batch.swift */; };
		30AD2E321CDD508700A28A0C /* Blob.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E1C1CDD508700A28A0C /* Blob.swift */; };
		30AD2E331CDD508700A28A0C /* Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E1D1CDD508700A28A0C /* Collection.swift */; };
		30AD2E341CDD508700A28A0C /* Database.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E1E1CDD508700A28A0C /* Database.swift */; };
		30AD2E351CDD508700A28A0C /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E1F1CDD508700A28A0C /* Errors.swift */; };
		30AD2E361CDD508700A28A0C /* Identifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E201CDD508700A28A0C /* Identifier.swift */; };
		30AD2E381CDD508700A28A0C /* Marshal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E221CDD508700A28A0C /* Marshal.swift */; };
		30AD2E391CDD508700A28A0C /* Permissions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E231CDD508700A28A0C /* Permissions.swift */; };
		30AD2E3A1CDD508700A28A0C /* RowRange.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E241CDD508700A28A0C /* RowRange.swift */; };
		30AD2E3B1CDD508700A28A0C /* Security.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E251CDD508700A28A0C /* Security.swift */; };
		30AD2E3C1CDD508700A28A0C /* Service.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E261CDD508700A28A0C /* Service.swift */; };
		30AD2E3D1CDD508700A28A0C /* Stream.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E271CDD508700A28A0C /* Stream.swift */; };
		30AD2E3E1CDD508700A28A0C /* SyncbaseCore.h in Headers */ = {isa = PBXBuildFile; fileRef = 30AD2E281CDD508700A28A0C /* SyncbaseCore.h */; settings = {ATTRIBUTES = (Public, ); }; };
		30AD2E3F1CDD508700A28A0C /* Syncbase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E291CDD508700A28A0C /* Syncbase.swift */; };
		30AD2E401CDD508700A28A0C /* Syncgroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E2A1CDD508700A28A0C /* Syncgroup.swift */; };
		30AD2E441CDD508700A28A0C /* Vom.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E2E1CDD508700A28A0C /* Vom.swift */; };
		30AD2E451CDD508700A28A0C /* Watch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E2F1CDD508700A28A0C /* Watch.swift */; };
		30AD2E4D1CDD508D00A28A0C /* JSONTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E491CDD508D00A28A0C /* JSONTests.swift */; };
		30AD2E4E1CDD508D00A28A0C /* NSNumberTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E4A1CDD508D00A28A0C /* NSNumberTests.swift */; };
		30AD2E761CDD55F400A28A0C /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 30AD2E641CDD547F00A28A0C /* Alamofire.framework */; };
		30AD2E801CDD569200A28A0C /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E791CDD569200A28A0C /* Logging.swift */; };
		30AD2E811CDD569200A28A0C /* Strings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E7A1CDD569200A28A0C /* Strings.swift */; };
		30AD2E821CDD569200A28A0C /* Threads.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E7B1CDD569200A28A0C /* Threads.swift */; };
		30AD2E891CDD56B700A28A0C /* Exceptions.h in Headers */ = {isa = PBXBuildFile; fileRef = 30AD2E861CDD56B700A28A0C /* Exceptions.h */; settings = {ATTRIBUTES = (Public, ); }; };
		30AD2E8A1CDD56B700A28A0C /* Exceptions.m in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E871CDD56B700A28A0C /* Exceptions.m */; };
		30AD2E8B1CDD56B700A28A0C /* NSNumber.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E881CDD56B700A28A0C /* NSNumber.swift */; };
		30AD2E911CDD593000A28A0C /* Principal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E901CDD593000A28A0C /* Principal.swift */; };
		30AD2E931CDD60A600A28A0C /* Types.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30AD2E921CDD60A600A28A0C /* Types.swift */; };
		30BCD5C71CEFA0FE00C76DA2 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 30BCD5C61CEFA0FE00C76DA2 /* CoreBluetooth.framework */; };
		30D45FC91CE14A8A004A59FA /* cgo_exports.h in Headers */ = {isa = PBXBuildFile; fileRef = 30D45FC41CE14A8A004A59FA /* cgo_exports.h */; settings = {ATTRIBUTES = (Public, ); }; };
		30D45FCA1CE14A8A004A59FA /* go_types.h in Headers */ = {isa = PBXBuildFile; fileRef = 30D45FC51CE14A8A004A59FA /* go_types.h */; settings = {ATTRIBUTES = (Public, ); }; };
		30D45FCD1CE14A8A004A59FA /* sbcore_arm64.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 30D45FC81CE14A8A004A59FA /* sbcore_arm64.a */; };
		9351A4941CE46DB9009CC4F4 /* sbcore_amd64.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9351A4931CE46DB9009CC4F4 /* sbcore_amd64.a */; };
		93D3AD5C1CE4392A00A80CDA /* libleveldb_amd64.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 93D3AD581CE4392A00A80CDA /* libleveldb_amd64.a */; };
		93D3AD5D1CE4392A00A80CDA /* libleveldb_arm64.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 93D3AD591CE4392A00A80CDA /* libleveldb_arm64.a */; };
		93D3AD5E1CE4392A00A80CDA /* libsnappy_amd64.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 93D3AD5A1CE4392A00A80CDA /* libsnappy_amd64.a */; };
		93D3AD5F1CE4392A00A80CDA /* libsnappy_arm64.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 93D3AD5B1CE4392A00A80CDA /* libsnappy_arm64.a */; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
		30AD2E0B1CDD506700A28A0C /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 30AD2DF61CDD506700A28A0C /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 30AD2DFE1CDD506700A28A0C;
			remoteInfo = SyncbaseCore;
		};
		30AD2E631CDD547F00A28A0C /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 30AD2E591CDD547F00A28A0C /* Alamofire.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = F8111E3319A95C8B0040E7D1;
			remoteInfo = "Alamofire iOS";
		};
		30AD2E651CDD547F00A28A0C /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 30AD2E591CDD547F00A28A0C /* Alamofire.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = F8111E3E19A95C8B0040E7D1;
			remoteInfo = "Alamofire iOS Tests";
		};
		30AD2E671CDD547F00A28A0C /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 30AD2E591CDD547F00A28A0C /* Alamofire.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = 4DD67C0B1A5C55C900ED2280;
			remoteInfo = "Alamofire OSX";
		};
		30AD2E691CDD547F00A28A0C /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 30AD2E591CDD547F00A28A0C /* Alamofire.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = F829C6B21A7A94F100A2CD59;
			remoteInfo = "Alamofire OSX Tests";
		};
		30AD2E6B1CDD547F00A28A0C /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 30AD2E591CDD547F00A28A0C /* Alamofire.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = 4CF626EF1BA7CB3E0011A099;
			remoteInfo = "Alamofire tvOS";
		};
		30AD2E6D1CDD547F00A28A0C /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 30AD2E591CDD547F00A28A0C /* Alamofire.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = 4CF626F81BA7CB3E0011A099;
			remoteInfo = "Alamofire tvOS Tests";
		};
		30AD2E6F1CDD547F00A28A0C /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 30AD2E591CDD547F00A28A0C /* Alamofire.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = E4202FE01B667AA100C997FB;
			remoteInfo = "Alamofire watchOS";
		};
		30D45FCF1CE14ECF004A59FA /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 30AD2E591CDD547F00A28A0C /* Alamofire.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = F8111E3219A95C8B0040E7D1;
			remoteInfo = "Alamofire iOS";
		};
/* End PBXContainerItemProxy section */

/* Begin PBXFileReference section */
		30A1F52D1CE68465008FC205 /* BasicDatabaseTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BasicDatabaseTests.swift; sourceTree = "<group>"; };
		30AD2DFF1CDD506700A28A0C /* SyncbaseCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SyncbaseCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
		30AD2E091CDD506700A28A0C /* SyncbaseCoreTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SyncbaseCoreTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
		30AD2E1B1CDD508700A28A0C /* Batch.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Batch.swift; sourceTree = "<group>"; };
		30AD2E1C1CDD508700A28A0C /* Blob.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Blob.swift; sourceTree = "<group>"; };
		30AD2E1D1CDD508700A28A0C /* Collection.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Collection.swift; sourceTree = "<group>"; };
		30AD2E1E1CDD508700A28A0C /* Database.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Database.swift; sourceTree = "<group>"; };
		30AD2E1F1CDD508700A28A0C /* Errors.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Errors.swift; sourceTree = "<group>"; };
		30AD2E201CDD508700A28A0C /* Identifier.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Identifier.swift; sourceTree = "<group>"; };
		30AD2E211CDD508700A28A0C /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
		30AD2E221CDD508700A28A0C /* Marshal.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Marshal.swift; sourceTree = "<group>"; };
		30AD2E231CDD508700A28A0C /* Permissions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Permissions.swift; sourceTree = "<group>"; };
		30AD2E241CDD508700A28A0C /* RowRange.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RowRange.swift; sourceTree = "<group>"; };
		30AD2E251CDD508700A28A0C /* Security.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Security.swift; sourceTree = "<group>"; };
		30AD2E261CDD508700A28A0C /* Service.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Service.swift; sourceTree = "<group>"; };
		30AD2E271CDD508700A28A0C /* Stream.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Stream.swift; sourceTree = "<group>"; };
		30AD2E281CDD508700A28A0C /* SyncbaseCore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SyncbaseCore.h; sourceTree = "<group>"; };
		30AD2E291CDD508700A28A0C /* Syncbase.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Syncbase.swift; sourceTree = "<group>"; };
		30AD2E2A1CDD508700A28A0C /* Syncgroup.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Syncgroup.swift; sourceTree = "<group>"; };
		30AD2E2E1CDD508700A28A0C /* Vom.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Vom.swift; sourceTree = "<group>"; };
		30AD2E2F1CDD508700A28A0C /* Watch.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Watch.swift; sourceTree = "<group>"; };
		30AD2E481CDD508D00A28A0C /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
		30AD2E491CDD508D00A28A0C /* JSONTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = JSONTests.swift; sourceTree = "<group>"; };
		30AD2E4A1CDD508D00A28A0C /* NSNumberTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NSNumberTests.swift; sourceTree = "<group>"; };
		30AD2E591CDD547F00A28A0C /* Alamofire.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Alamofire.xcodeproj; path = "../../../../third_party/swift/Alamofire-3.3.0/Alamofire.xcodeproj"; sourceTree = "<group>"; };
		30AD2E791CDD569200A28A0C /* Logging.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Logging.swift; path = util/Logging.swift; sourceTree = "<group>"; };
		30AD2E7A1CDD569200A28A0C /* Strings.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Strings.swift; path = util/Strings.swift; sourceTree = "<group>"; };
		30AD2E7B1CDD569200A28A0C /* Threads.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Threads.swift; path = util/Threads.swift; sourceTree = "<group>"; };
		30AD2E861CDD56B700A28A0C /* Exceptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Exceptions.h; path = util/Exceptions.h; sourceTree = "<group>"; };
		30AD2E871CDD56B700A28A0C /* Exceptions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Exceptions.m; path = util/Exceptions.m; sourceTree = "<group>"; };
		30AD2E881CDD56B700A28A0C /* NSNumber.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = NSNumber.swift; path = util/NSNumber.swift; sourceTree = "<group>"; };
		30AD2E901CDD593000A28A0C /* Principal.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Principal.swift; sourceTree = "<group>"; };
		30AD2E921CDD60A600A28A0C /* Types.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Types.swift; path = util/Types.swift; sourceTree = "<group>"; };
		30BCD5C61CEFA0FE00C76DA2 /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = System/Library/Frameworks/CoreBluetooth.framework; sourceTree = SDKROOT; };
		30D45FC41CE14A8A004A59FA /* cgo_exports.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cgo_exports.h; sourceTree = "<group>"; };
		30D45FC51CE14A8A004A59FA /* go_types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = go_types.h; sourceTree = "<group>"; };
		30D45FC81CE14A8A004A59FA /* sbcore_arm64.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = sbcore_arm64.a; sourceTree = "<group>"; };
		9351A4931CE46DB9009CC4F4 /* sbcore_amd64.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = sbcore_amd64.a; sourceTree = "<group>"; };
		93D3AD581CE4392A00A80CDA /* libleveldb_amd64.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libleveldb_amd64.a; sourceTree = "<group>"; };
		93D3AD591CE4392A00A80CDA /* libleveldb_arm64.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libleveldb_arm64.a; sourceTree = "<group>"; };
		93D3AD5A1CE4392A00A80CDA /* libsnappy_amd64.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libsnappy_amd64.a; sourceTree = "<group>"; };
		93D3AD5B1CE4392A00A80CDA /* libsnappy_arm64.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libsnappy_arm64.a; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		30AD2DFB1CDD506700A28A0C /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				30BCD5C71CEFA0FE00C76DA2 /* CoreBluetooth.framework in Frameworks */,
				30D45FCD1CE14A8A004A59FA /* sbcore_arm64.a in Frameworks */,
				93D3AD5E1CE4392A00A80CDA /* libsnappy_amd64.a in Frameworks */,
				93D3AD5F1CE4392A00A80CDA /* libsnappy_arm64.a in Frameworks */,
				93D3AD5C1CE4392A00A80CDA /* libleveldb_amd64.a in Frameworks */,
				30AD2E761CDD55F400A28A0C /* Alamofire.framework in Frameworks */,
				93D3AD5D1CE4392A00A80CDA /* libleveldb_arm64.a in Frameworks */,
				9351A4941CE46DB9009CC4F4 /* sbcore_amd64.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		30AD2E061CDD506700A28A0C /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				30AD2E0A1CDD506700A28A0C /* SyncbaseCore.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		30AD2DF51CDD506700A28A0C = {
			isa = PBXGroup;
			children = (
				30AD2E191CDD508700A28A0C /* Source */,
				30AD2E4F1CDD542000A28A0C /* Generated */,
				30AD2E581CDD546F00A28A0C /* Frameworks */,
				30AD2E461CDD508D00A28A0C /* Tests */,
				30AD2E001CDD506700A28A0C /* Products */,
			);
			sourceTree = "<group>";
		};
		30AD2E001CDD506700A28A0C /* Products */ = {
			isa = PBXGroup;
			children = (
				30AD2DFF1CDD506700A28A0C /* SyncbaseCore.framework */,
				30AD2E091CDD506700A28A0C /* SyncbaseCoreTests.xctest */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		30AD2E191CDD508700A28A0C /* Source */ = {
			isa = PBXGroup;
			children = (
				30AD2E281CDD508700A28A0C /* SyncbaseCore.h */,
				30AD2E211CDD508700A28A0C /* Info.plist */,
				30AD2E1B1CDD508700A28A0C /* Batch.swift */,
				30AD2E1C1CDD508700A28A0C /* Blob.swift */,
				30AD2E1D1CDD508700A28A0C /* Collection.swift */,
				30AD2E1E1CDD508700A28A0C /* Database.swift */,
				30AD2E1F1CDD508700A28A0C /* Errors.swift */,
				30AD2E201CDD508700A28A0C /* Identifier.swift */,
				30AD2E221CDD508700A28A0C /* Marshal.swift */,
				30AD2E231CDD508700A28A0C /* Permissions.swift */,
				30AD2E901CDD593000A28A0C /* Principal.swift */,
				30AD2E241CDD508700A28A0C /* RowRange.swift */,
				30AD2E251CDD508700A28A0C /* Security.swift */,
				30AD2E261CDD508700A28A0C /* Service.swift */,
				30AD2E271CDD508700A28A0C /* Stream.swift */,
				30AD2E291CDD508700A28A0C /* Syncbase.swift */,
				30AD2E2A1CDD508700A28A0C /* Syncgroup.swift */,
				30AD2E2E1CDD508700A28A0C /* Vom.swift */,
				30AD2E2F1CDD508700A28A0C /* Watch.swift */,
				30AD2E771CDD567D00A28A0C /* Util */,
			);
			path = Source;
			sourceTree = "<group>";
		};
		30AD2E461CDD508D00A28A0C /* Tests */ = {
			isa = PBXGroup;
			children = (
				30AD2E481CDD508D00A28A0C /* Info.plist */,
				30AD2E491CDD508D00A28A0C /* JSONTests.swift */,
				30AD2E4A1CDD508D00A28A0C /* NSNumberTests.swift */,
				30A1F52D1CE68465008FC205 /* BasicDatabaseTests.swift */,
			);
			path = Tests;
			sourceTree = "<group>";
		};
		30AD2E4F1CDD542000A28A0C /* Generated */ = {
			isa = PBXGroup;
			children = (
				30D45FC41CE14A8A004A59FA /* cgo_exports.h */,
				30D45FC51CE14A8A004A59FA /* go_types.h */,
				93D3AD581CE4392A00A80CDA /* libleveldb_amd64.a */,
				93D3AD591CE4392A00A80CDA /* libleveldb_arm64.a */,
				93D3AD5A1CE4392A00A80CDA /* libsnappy_amd64.a */,
				93D3AD5B1CE4392A00A80CDA /* libsnappy_arm64.a */,
				9351A4931CE46DB9009CC4F4 /* sbcore_amd64.a */,
				30D45FC81CE14A8A004A59FA /* sbcore_arm64.a */,
			);
			path = Generated;
			sourceTree = "<group>";
		};
		30AD2E581CDD546F00A28A0C /* Frameworks */ = {
			isa = PBXGroup;
			children = (
				30BCD5C61CEFA0FE00C76DA2 /* CoreBluetooth.framework */,
				30AD2E591CDD547F00A28A0C /* Alamofire.xcodeproj */,
			);
			name = Frameworks;
			path = Tests;
			sourceTree = "<group>";
		};
		30AD2E5A1CDD547F00A28A0C /* Products */ = {
			isa = PBXGroup;
			children = (
				30AD2E641CDD547F00A28A0C /* Alamofire.framework */,
				30AD2E661CDD547F00A28A0C /* Alamofire iOS Tests.xctest */,
				30AD2E681CDD547F00A28A0C /* Alamofire.framework */,
				30AD2E6A1CDD547F00A28A0C /* Alamofire OSX Tests.xctest */,
				30AD2E6C1CDD547F00A28A0C /* Alamofire.framework */,
				30AD2E6E1CDD547F00A28A0C /* Alamofire tvOS Tests.xctest */,
				30AD2E701CDD547F00A28A0C /* Alamofire.framework */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		30AD2E771CDD567D00A28A0C /* Util */ = {
			isa = PBXGroup;
			children = (
				30AD2E861CDD56B700A28A0C /* Exceptions.h */,
				30AD2E871CDD56B700A28A0C /* Exceptions.m */,
				30AD2E881CDD56B700A28A0C /* NSNumber.swift */,
				30AD2E791CDD569200A28A0C /* Logging.swift */,
				30AD2E7A1CDD569200A28A0C /* Strings.swift */,
				30AD2E7B1CDD569200A28A0C /* Threads.swift */,
				30AD2E921CDD60A600A28A0C /* Types.swift */,
			);
			name = Util;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXHeadersBuildPhase section */
		30AD2DFC1CDD506700A28A0C /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				30AD2E891CDD56B700A28A0C /* Exceptions.h in Headers */,
				30D45FC91CE14A8A004A59FA /* cgo_exports.h in Headers */,
				30D45FCA1CE14A8A004A59FA /* go_types.h in Headers */,
				30AD2E3E1CDD508700A28A0C /* SyncbaseCore.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXHeadersBuildPhase section */

/* Begin PBXNativeTarget section */
		30AD2DFE1CDD506700A28A0C /* SyncbaseCore */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 30AD2E131CDD506700A28A0C /* Build configuration list for PBXNativeTarget "SyncbaseCore" */;
			buildPhases = (
				30AD2DFA1CDD506700A28A0C /* Sources */,
				30AD2DFB1CDD506700A28A0C /* Frameworks */,
				30AD2DFC1CDD506700A28A0C /* Headers */,
				30AD2DFD1CDD506700A28A0C /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
				30D45FD01CE14ECF004A59FA /* PBXTargetDependency */,
			);
			name = SyncbaseCore;
			productName = SyncbaseCore;
			productReference = 30AD2DFF1CDD506700A28A0C /* SyncbaseCore.framework */;
			productType = "com.apple.product-type.framework";
		};
		30AD2E081CDD506700A28A0C /* SyncbaseCoreTests */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 30AD2E161CDD506700A28A0C /* Build configuration list for PBXNativeTarget "SyncbaseCoreTests" */;
			buildPhases = (
				30AD2E051CDD506700A28A0C /* Sources */,
				30AD2E061CDD506700A28A0C /* Frameworks */,
				30AD2E071CDD506700A28A0C /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
				30AD2E0C1CDD506700A28A0C /* PBXTargetDependency */,
			);
			name = SyncbaseCoreTests;
			productName = SyncbaseCoreTests;
			productReference = 30AD2E091CDD506700A28A0C /* SyncbaseCoreTests.xctest */;
			productType = "com.apple.product-type.bundle.unit-test";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		30AD2DF61CDD506700A28A0C /* Project object */ = {
			isa = PBXProject;
			attributes = {
				LastSwiftUpdateCheck = 0730;
				LastUpgradeCheck = 0730;
				ORGANIZATIONNAME = "Google Inc.";
				TargetAttributes = {
					30AD2DFE1CDD506700A28A0C = {
						CreatedOnToolsVersion = 7.3;
					};
					30AD2E081CDD506700A28A0C = {
						CreatedOnToolsVersion = 7.3;
					};
				};
			};
			buildConfigurationList = 30AD2DF91CDD506700A28A0C /* Build configuration list for PBXProject "SyncbaseCore" */;
			compatibilityVersion = "Xcode 3.2";
			developmentRegion = English;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
			);
			mainGroup = 30AD2DF51CDD506700A28A0C;
			productRefGroup = 30AD2E001CDD506700A28A0C /* Products */;
			projectDirPath = "";
			projectReferences = (
				{
					ProductGroup = 30AD2E5A1CDD547F00A28A0C /* Products */;
					ProjectRef = 30AD2E591CDD547F00A28A0C /* Alamofire.xcodeproj */;
				},
			);
			projectRoot = "";
			targets = (
				30AD2DFE1CDD506700A28A0C /* SyncbaseCore */,
				30AD2E081CDD506700A28A0C /* SyncbaseCoreTests */,
			);
		};
/* End PBXProject section */

/* Begin PBXReferenceProxy section */
		30AD2E641CDD547F00A28A0C /* Alamofire.framework */ = {
			isa = PBXReferenceProxy;
			fileType = wrapper.framework;
			path = Alamofire.framework;
			remoteRef = 30AD2E631CDD547F00A28A0C /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		30AD2E661CDD547F00A28A0C /* Alamofire iOS Tests.xctest */ = {
			isa = PBXReferenceProxy;
			fileType = wrapper.cfbundle;
			path = "Alamofire iOS Tests.xctest";
			remoteRef = 30AD2E651CDD547F00A28A0C /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		30AD2E681CDD547F00A28A0C /* Alamofire.framework */ = {
			isa = PBXReferenceProxy;
			fileType = wrapper.framework;
			path = Alamofire.framework;
			remoteRef = 30AD2E671CDD547F00A28A0C /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		30AD2E6A1CDD547F00A28A0C /* Alamofire OSX Tests.xctest */ = {
			isa = PBXReferenceProxy;
			fileType = wrapper.cfbundle;
			path = "Alamofire OSX Tests.xctest";
			remoteRef = 30AD2E691CDD547F00A28A0C /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		30AD2E6C1CDD547F00A28A0C /* Alamofire.framework */ = {
			isa = PBXReferenceProxy;
			fileType = wrapper.framework;
			path = Alamofire.framework;
			remoteRef = 30AD2E6B1CDD547F00A28A0C /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		30AD2E6E1CDD547F00A28A0C /* Alamofire tvOS Tests.xctest */ = {
			isa = PBXReferenceProxy;
			fileType = wrapper.cfbundle;
			path = "Alamofire tvOS Tests.xctest";
			remoteRef = 30AD2E6D1CDD547F00A28A0C /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		30AD2E701CDD547F00A28A0C /* Alamofire.framework */ = {
			isa = PBXReferenceProxy;
			fileType = wrapper.framework;
			path = Alamofire.framework;
			remoteRef = 30AD2E6F1CDD547F00A28A0C /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
/* End PBXReferenceProxy section */

/* Begin PBXResourcesBuildPhase section */
		30AD2DFD1CDD506700A28A0C /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		30AD2E071CDD506700A28A0C /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		30AD2DFA1CDD506700A28A0C /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				30AD2E391CDD508700A28A0C /* Permissions.swift in Sources */,
				30AD2E3A1CDD508700A28A0C /* RowRange.swift in Sources */,
				30AD2E911CDD593000A28A0C /* Principal.swift in Sources */,
				30AD2E931CDD60A600A28A0C /* Types.swift in Sources */,
				30AD2E8A1CDD56B700A28A0C /* Exceptions.m in Sources */,
				30AD2E331CDD508700A28A0C /* Collection.swift in Sources */,
				30AD2E3F1CDD508700A28A0C /* Syncbase.swift in Sources */,
				30AD2E401CDD508700A28A0C /* Syncgroup.swift in Sources */,
				30AD2E811CDD569200A28A0C /* Strings.swift in Sources */,
				30AD2E8B1CDD56B700A28A0C /* NSNumber.swift in Sources */,
				30AD2E451CDD508700A28A0C /* Watch.swift in Sources */,
				30AD2E821CDD569200A28A0C /* Threads.swift in Sources */,
				30AD2E3B1CDD508700A28A0C /* Security.swift in Sources */,
				30AD2E801CDD569200A28A0C /* Logging.swift in Sources */,
				30AD2E351CDD508700A28A0C /* Errors.swift in Sources */,
				30AD2E361CDD508700A28A0C /* Identifier.swift in Sources */,
				30AD2E381CDD508700A28A0C /* Marshal.swift in Sources */,
				30AD2E3D1CDD508700A28A0C /* Stream.swift in Sources */,
				30AD2E321CDD508700A28A0C /* Blob.swift in Sources */,
				30AD2E441CDD508700A28A0C /* Vom.swift in Sources */,
				30AD2E3C1CDD508700A28A0C /* Service.swift in Sources */,
				30AD2E341CDD508700A28A0C /* Database.swift in Sources */,
				30AD2E311CDD508700A28A0C /* Batch.swift in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		30AD2E051CDD506700A28A0C /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				30A1F52E1CE68465008FC205 /* BasicDatabaseTests.swift in Sources */,
				30AD2E4D1CDD508D00A28A0C /* JSONTests.swift in Sources */,
				30AD2E4E1CDD508D00A28A0C /* NSNumberTests.swift in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXTargetDependency section */
		30AD2E0C1CDD506700A28A0C /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 30AD2DFE1CDD506700A28A0C /* SyncbaseCore */;
			targetProxy = 30AD2E0B1CDD506700A28A0C /* PBXContainerItemProxy */;
		};
		30D45FD01CE14ECF004A59FA /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = "Alamofire iOS";
			targetProxy = 30D45FCF1CE14ECF004A59FA /* PBXContainerItemProxy */;
		};
/* End PBXTargetDependency section */

/* Begin XCBuildConfiguration section */
		30AD2E111CDD506700A28A0C /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				CURRENT_PROJECT_VERSION = 1;
				DEBUG_INFORMATION_FORMAT = dwarf;
				ENABLE_BITCODE = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				GCC_C_LANGUAGE_STANDARD = c11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
				LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks @loader_path/Frameworks";
				MTL_ENABLE_DEBUG_INFO = YES;
				ONLY_ACTIVE_ARCH = YES;
				OTHER_LDFLAGS = (
					"-ObjC",
					"-lc++",
				);
				SDKROOT = iphoneos;
				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
				TARGETED_DEVICE_FAMILY = "1,2";
				VALID_ARCHS = arm64;
				VERSIONING_SYSTEM = "apple-generic";
				VERSION_INFO_PREFIX = "";
			};
			name = Debug;
		};
		30AD2E121CDD506700A28A0C /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				CURRENT_PROJECT_VERSION = 1;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_BITCODE = NO;
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				GCC_C_LANGUAGE_STANDARD = c11;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
				LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks @loader_path/Frameworks";
				MTL_ENABLE_DEBUG_INFO = NO;
				OTHER_LDFLAGS = (
					"-ObjC",
					"-lc++",
				);
				SDKROOT = iphoneos;
				TARGETED_DEVICE_FAMILY = "1,2";
				VALIDATE_PRODUCT = YES;
				VALID_ARCHS = arm64;
				VERSIONING_SYSTEM = "apple-generic";
				VERSION_INFO_PREFIX = "";
			};
			name = Release;
		};
		30AD2E141CDD506700A28A0C /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CLANG_ENABLE_MODULES = YES;
				DEFINES_MODULE = YES;
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				DYLIB_INSTALL_NAME_BASE = "@rpath";
				HEADER_SEARCH_PATHS = "";
				INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist";
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
				LIBRARY_SEARCH_PATHS = (
					"$(inherited)",
					"$(PROJECT_DIR)/Generated",
					"\"$(SRCROOT)/../../../third_party/swift/google_signin_sdk_3_0_0\"",
				);
				PRODUCT_BUNDLE_IDENTIFIER = io.v.SyncbaseCore;
				PRODUCT_NAME = "$(TARGET_NAME)";
				SKIP_INSTALL = YES;
				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
			};
			name = Debug;
		};
		30AD2E151CDD506700A28A0C /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CLANG_ENABLE_MODULES = YES;
				DEFINES_MODULE = YES;
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				DYLIB_INSTALL_NAME_BASE = "@rpath";
				HEADER_SEARCH_PATHS = "";
				INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist";
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
				LIBRARY_SEARCH_PATHS = (
					"$(inherited)",
					"$(PROJECT_DIR)/Generated",
					"\"$(SRCROOT)/../../../third_party/swift/google_signin_sdk_3_0_0\"",
				);
				PRODUCT_BUNDLE_IDENTIFIER = io.v.SyncbaseCore;
				PRODUCT_NAME = "$(TARGET_NAME)";
				SKIP_INSTALL = YES;
			};
			name = Release;
		};
		30AD2E171CDD506700A28A0C /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				INFOPLIST_FILE = Tests/Info.plist;
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
				PRODUCT_BUNDLE_IDENTIFIER = io.v.SyncbaseCoreTests;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		30AD2E181CDD506700A28A0C /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				INFOPLIST_FILE = Tests/Info.plist;
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
				PRODUCT_BUNDLE_IDENTIFIER = io.v.SyncbaseCoreTests;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		30AD2DF91CDD506700A28A0C /* Build configuration list for PBXProject "SyncbaseCore" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				30AD2E111CDD506700A28A0C /* Debug */,
				30AD2E121CDD506700A28A0C /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		30AD2E131CDD506700A28A0C /* Build configuration list for PBXNativeTarget "SyncbaseCore" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				30AD2E141CDD506700A28A0C /* Debug */,
				30AD2E151CDD506700A28A0C /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		30AD2E161CDD506700A28A0C /* Build configuration list for PBXNativeTarget "SyncbaseCoreTests" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				30AD2E171CDD506700A28A0C /* Debug */,
				30AD2E181CDD506700A28A0C /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 30AD2DF61CDD506700A28A0C /* Project object */;
}
