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

/* Begin PBXBuildFile section */
		1E5801C328941C050033A199 /* MTRTestOTAProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = 1E748B3828941A44008A1BE8 /* MTRTestOTAProvider.m */; };
		1EC3238D271999E2002A8BF0 /* cluster-objects.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EC3238C271999E2002A8BF0 /* cluster-objects.cpp */; };
		1EC4CE5D25CC26E900D7304F /* MTRBaseClusters.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1EC4CE5925CC26E900D7304F /* MTRBaseClusters.mm */; };
		1EC4CE6425CC276600D7304F /* MTRBaseClusters.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EC4CE6325CC276600D7304F /* MTRBaseClusters.h */; settings = {ATTRIBUTES = (Public, ); }; };
		1ED276E026C57CF000547A89 /* MTRCallbackBridge.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1ED276DF26C57CF000547A89 /* MTRCallbackBridge.mm */; };
		1ED276E226C5812A00547A89 /* MTRCluster.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1ED276E126C5812A00547A89 /* MTRCluster.mm */; };
		1ED276E426C5832500547A89 /* MTRCluster.h in Headers */ = {isa = PBXBuildFile; fileRef = 1ED276E326C5832500547A89 /* MTRCluster.h */; settings = {ATTRIBUTES = (Public, ); }; };
		1EDCE545289049A100E41EC9 /* MTROTAHeader.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EDCE543289049A100E41EC9 /* MTROTAHeader.h */; settings = {ATTRIBUTES = (Public, ); }; };
		1EDCE546289049A100E41EC9 /* MTROTAHeader.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1EDCE544289049A100E41EC9 /* MTROTAHeader.mm */; };
		27A53C1727FBC6920053F131 /* MTRAttestationTrustStoreBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 27A53C1527FBC6920053F131 /* MTRAttestationTrustStoreBridge.h */; };
		27A53C1827FBC6920053F131 /* MTRAttestationTrustStoreBridge.mm in Sources */ = {isa = PBXBuildFile; fileRef = 27A53C1627FBC6920053F131 /* MTRAttestationTrustStoreBridge.mm */; };
		2C1B027A2641DB4E00780EF1 /* MTROperationalCredentialsDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2C1B02782641DB4E00780EF1 /* MTROperationalCredentialsDelegate.mm */; };
		2C1B027B2641DB4E00780EF1 /* MTROperationalCredentialsDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C1B02792641DB4E00780EF1 /* MTROperationalCredentialsDelegate.h */; };
		2C222AD0255C620600E446B9 /* MTRBaseDevice.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C222ACE255C620600E446B9 /* MTRBaseDevice.h */; settings = {ATTRIBUTES = (Public, ); }; };
		2C222AD1255C620600E446B9 /* MTRBaseDevice.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2C222ACF255C620600E446B9 /* MTRBaseDevice.mm */; };
		2C222ADF255C811800E446B9 /* MTRBaseDevice_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C222ADE255C811800E446B9 /* MTRBaseDevice_Internal.h */; };
		2C5EEEF6268A85C400CAE3D3 /* MTRDeviceConnectionBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C5EEEF4268A85C400CAE3D3 /* MTRDeviceConnectionBridge.h */; };
		2C5EEEF7268A85C400CAE3D3 /* MTRDeviceConnectionBridge.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2C5EEEF5268A85C400CAE3D3 /* MTRDeviceConnectionBridge.mm */; };
		2C8C8FC0253E0C2100797F05 /* MTRPersistentStorageDelegateBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C8C8FBD253E0C2100797F05 /* MTRPersistentStorageDelegateBridge.h */; };
		2C8C8FC1253E0C2100797F05 /* MTRStorage.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C8C8FBE253E0C2100797F05 /* MTRStorage.h */; settings = {ATTRIBUTES = (Public, ); }; };
		2C8C8FC2253E0C2100797F05 /* MTRPersistentStorageDelegateBridge.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2C8C8FBF253E0C2100797F05 /* MTRPersistentStorageDelegateBridge.mm */; };
		2CB7163B252E8A7B0026E2BB /* MTRDeviceControllerDelegateBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 2CB71638252E8A7B0026E2BB /* MTRDeviceControllerDelegateBridge.h */; };
		2CB7163C252E8A7C0026E2BB /* MTRDeviceControllerDelegateBridge.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2CB71639252E8A7B0026E2BB /* MTRDeviceControllerDelegateBridge.mm */; };
		2CB7163F252F731E0026E2BB /* MTRDeviceControllerDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 2CB7163E252F731E0026E2BB /* MTRDeviceControllerDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; };
		2FD775552695557E00FF4B12 /* error-mapping.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2FD775542695557E00FF4B12 /* error-mapping.cpp */; };
		3CF134A7289D8ADA0017A19E /* MTRCSRInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 3CF134A6289D8AD90017A19E /* MTRCSRInfo.h */; settings = {ATTRIBUTES = (Public, ); }; };
		3CF134A9289D8D800017A19E /* MTRCSRInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3CF134A8289D8D800017A19E /* MTRCSRInfo.mm */; };
		3CF134AB289D8DF70017A19E /* MTRAttestationInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 3CF134AA289D8DF70017A19E /* MTRAttestationInfo.h */; settings = {ATTRIBUTES = (Public, ); }; };
		3CF134AD289D8E570017A19E /* MTRAttestationInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3CF134AC289D8E570017A19E /* MTRAttestationInfo.mm */; };
		3CF134AF289D90FF0017A19E /* MTROperationalCertificateIssuer.h in Headers */ = {isa = PBXBuildFile; fileRef = 3CF134AE289D90FF0017A19E /* MTROperationalCertificateIssuer.h */; settings = {ATTRIBUTES = (Public, ); }; };
		3D69868529383096007314E7 /* com.csa.matter.plist in Copy Logging Preferences */ = {isa = PBXBuildFile; fileRef = 3D69868029382EF4007314E7 /* com.csa.matter.plist */; };
		3D843711294977000070D20A /* NSStringSpanConversion.h in Headers */ = {isa = PBXBuildFile; fileRef = 3D84370E294977000070D20A /* NSStringSpanConversion.h */; };
		3D843712294977000070D20A /* MTRCallbackBridgeBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 3D84370F294977000070D20A /* MTRCallbackBridgeBase.h */; };
		3D843713294977000070D20A /* NSDataSpanConversion.h in Headers */ = {isa = PBXBuildFile; fileRef = 3D843710294977000070D20A /* NSDataSpanConversion.h */; };
		3D843716294979230070D20A /* MTRCallbackBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 3D843714294979230070D20A /* MTRCallbackBridge.h */; };
		3D843717294979230070D20A /* MTRClusters_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 3D843715294979230070D20A /* MTRClusters_Internal.h */; };
		3D84374B29498BAE0070D20A /* privilege-storage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3D84374A29498BAE0070D20A /* privilege-storage.cpp */; };
		3D843756294AD25A0070D20A /* MTRCertificateInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 3D843754294AD25A0070D20A /* MTRCertificateInfo.h */; settings = {ATTRIBUTES = (Public, ); }; };
		3D843757294AD25A0070D20A /* MTRCertificateInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3D843755294AD25A0070D20A /* MTRCertificateInfo.mm */; };
		3DECCB6E29347D2D00585AEC /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DECCB6D29347D2C00585AEC /* Security.framework */; };
		3DECCB702934AECD00585AEC /* MTRLogging.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DECCB6F2934AC1C00585AEC /* MTRLogging.h */; settings = {ATTRIBUTES = (Public, ); }; };
		3DECCB722934AFE200585AEC /* MTRLogging.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3DECCB712934AFE200585AEC /* MTRLogging.mm */; };
		3DECCB742934C21B00585AEC /* MTRDefines.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DECCB732934C21B00585AEC /* MTRDefines.h */; settings = {ATTRIBUTES = (Public, ); }; };
		3DFCB3292966684500332B35 /* MTRCertificateInfoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 3DFCB3282966684500332B35 /* MTRCertificateInfoTests.m */; };
		3DFCB32C29678C9500332B35 /* MTRConversion.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DFCB32B29678C9500332B35 /* MTRConversion.h */; };
		51029DF6293AA6100087AFB0 /* MTROperationalCertificateIssuer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51029DF5293AA6100087AFB0 /* MTROperationalCertificateIssuer.mm */; };
		510CECA8297F72970064E0B3 /* MTROperationalCertificateIssuerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 510CECA6297F72470064E0B3 /* MTROperationalCertificateIssuerTests.m */; };
		511913FB28C100EF009235E9 /* MTRBaseSubscriptionCallback.mm in Sources */ = {isa = PBXBuildFile; fileRef = 511913F928C100EF009235E9 /* MTRBaseSubscriptionCallback.mm */; };
		511913FC28C100EF009235E9 /* MTRBaseSubscriptionCallback.h in Headers */ = {isa = PBXBuildFile; fileRef = 511913FA28C100EF009235E9 /* MTRBaseSubscriptionCallback.h */; };
		5129BCFD26A9EE3300122DDF /* MTRError.h in Headers */ = {isa = PBXBuildFile; fileRef = 5129BCFC26A9EE3300122DDF /* MTRError.h */; settings = {ATTRIBUTES = (Public, ); }; };
		5136661328067D550025EDAE /* MTRDeviceController_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5136660F28067D540025EDAE /* MTRDeviceController_Internal.h */; };
		5136661428067D550025EDAE /* MTRDeviceControllerFactory.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5136661028067D540025EDAE /* MTRDeviceControllerFactory.mm */; };
		5136661528067D550025EDAE /* MTRDeviceControllerFactory_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5136661128067D540025EDAE /* MTRDeviceControllerFactory_Internal.h */; };
		5136661628067D550025EDAE /* MTRDeviceControllerFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 5136661228067D550025EDAE /* MTRDeviceControllerFactory.h */; settings = {ATTRIBUTES = (Public, ); }; };
		513DDB862761F69300DAA01A /* MTRAttributeTLVValueDecoder_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 513DDB852761F69300DAA01A /* MTRAttributeTLVValueDecoder_Internal.h */; };
		513DDB8A2761F6F900DAA01A /* MTRAttributeTLVValueDecoder.mm in Sources */ = {isa = PBXBuildFile; fileRef = 513DDB892761F6F900DAA01A /* MTRAttributeTLVValueDecoder.mm */; };
		514304202914CED9004DC7FE /* generic-callback-stubs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5143041F2914CED9004DC7FE /* generic-callback-stubs.cpp */; };
		51431AF927D2973E008A7943 /* MTRIMDispatch.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51431AF827D2973E008A7943 /* MTRIMDispatch.mm */; };
		51431AFB27D29CA4008A7943 /* ota-provider.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51431AFA27D29CA4008A7943 /* ota-provider.cpp */; };
		515C1C6F284F9FFB00A48F0C /* MTRFramework.mm in Sources */ = {isa = PBXBuildFile; fileRef = 515C1C6D284F9FFB00A48F0C /* MTRFramework.mm */; };
		515C1C70284F9FFB00A48F0C /* MTRFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = 515C1C6E284F9FFB00A48F0C /* MTRFramework.h */; };
		51669AF02913204400F4AA36 /* MTRBackwardsCompatTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 51669AEF2913204400F4AA36 /* MTRBackwardsCompatTests.m */; };
		517BF3F0282B62B800A8B7DB /* MTRCertificates.h in Headers */ = {isa = PBXBuildFile; fileRef = 517BF3EE282B62B800A8B7DB /* MTRCertificates.h */; settings = {ATTRIBUTES = (Public, ); }; };
		517BF3F1282B62B800A8B7DB /* MTRCertificates.mm in Sources */ = {isa = PBXBuildFile; fileRef = 517BF3EF282B62B800A8B7DB /* MTRCertificates.mm */; };
		517BF3F3282B62CB00A8B7DB /* MTRCertificateTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 517BF3F2282B62CB00A8B7DB /* MTRCertificateTests.m */; };
		51B22C1E2740CB0A008D5055 /* MTRStructsObjc.h in Headers */ = {isa = PBXBuildFile; fileRef = 51B22C1D2740CB0A008D5055 /* MTRStructsObjc.h */; settings = {ATTRIBUTES = (Public, ); }; };
		51B22C222740CB1D008D5055 /* MTRCommandPayloadsObjc.h in Headers */ = {isa = PBXBuildFile; fileRef = 51B22C212740CB1D008D5055 /* MTRCommandPayloadsObjc.h */; settings = {ATTRIBUTES = (Public, ); }; };
		51B22C262740CB32008D5055 /* MTRStructsObjc.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51B22C252740CB32008D5055 /* MTRStructsObjc.mm */; };
		51B22C2A2740CB47008D5055 /* MTRCommandPayloadsObjc.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51B22C292740CB47008D5055 /* MTRCommandPayloadsObjc.mm */; };
		51C8E3F82825CDB600D47D00 /* MTRTestKeys.m in Sources */ = {isa = PBXBuildFile; fileRef = 51C8E3F72825CDB600D47D00 /* MTRTestKeys.m */; };
		51D10D2E2808E2CA00E8CA3D /* MTRTestStorage.m in Sources */ = {isa = PBXBuildFile; fileRef = 51D10D2D2808E2CA00E8CA3D /* MTRTestStorage.m */; };
		51E0310027EA20D20083DC9C /* MTRControllerAccessControl.h in Headers */ = {isa = PBXBuildFile; fileRef = 51E030FE27EA20D20083DC9C /* MTRControllerAccessControl.h */; };
		51E0310127EA20D20083DC9C /* MTRControllerAccessControl.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51E030FF27EA20D20083DC9C /* MTRControllerAccessControl.mm */; };
		51E24E73274E0DAC007CCF6E /* MTRErrorTestUtils.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51E24E72274E0DAC007CCF6E /* MTRErrorTestUtils.mm */; };
		51E4D121291D0EB400C8C535 /* MTRBaseClusterUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 51E4D120291D0EB400C8C535 /* MTRBaseClusterUtils.h */; };
		51E51FBF282AD37A00FC978D /* MTRDeviceControllerStartupParams.h in Headers */ = {isa = PBXBuildFile; fileRef = 51E51FBC282AD37A00FC978D /* MTRDeviceControllerStartupParams.h */; settings = {ATTRIBUTES = (Public, ); }; };
		51E51FC0282AD37A00FC978D /* MTRDeviceControllerStartupParams_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 51E51FBD282AD37A00FC978D /* MTRDeviceControllerStartupParams_Internal.h */; };
		51E51FC1282AD37A00FC978D /* MTRDeviceControllerStartupParams.mm in Sources */ = {isa = PBXBuildFile; fileRef = 51E51FBE282AD37A00FC978D /* MTRDeviceControllerStartupParams.mm */; };
		5A60370827EA1FF60020DB79 /* MTRClusterStateCacheContainer+XPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A60370727EA1FF60020DB79 /* MTRClusterStateCacheContainer+XPC.h */; };
		5A6FEC9027B563D900F25F42 /* MTRDeviceControllerOverXPC.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5A6FEC8F27B563D900F25F42 /* MTRDeviceControllerOverXPC.mm */; };
		5A6FEC9227B5669C00F25F42 /* MTRDeviceControllerOverXPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A6FEC8D27B5624E00F25F42 /* MTRDeviceControllerOverXPC.h */; };
		5A6FEC9627B5983000F25F42 /* MTRDeviceControllerXPCConnection.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5A6FEC9527B5983000F25F42 /* MTRDeviceControllerXPCConnection.mm */; };
		5A6FEC9827B5C6AF00F25F42 /* MTRDeviceOverXPC.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5A6FEC9727B5C6AF00F25F42 /* MTRDeviceOverXPC.mm */; };
		5A6FEC9927B5C88900F25F42 /* MTRDeviceOverXPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A6FEC8B27B5609C00F25F42 /* MTRDeviceOverXPC.h */; };
		5A6FEC9A27B5C89300F25F42 /* MTRDeviceControllerXPCConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A6FEC9427B5976200F25F42 /* MTRDeviceControllerXPCConnection.h */; };
		5A6FEC9D27B5E48900F25F42 /* MTRXPCProtocolTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 5A6FEC9C27B5E48800F25F42 /* MTRXPCProtocolTests.m */; };
		5A7947DE27BEC3F500434CF2 /* MTRXPCListenerSampleTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 5A7947DD27BEC3F500434CF2 /* MTRXPCListenerSampleTests.m */; };
		5A7947E427C0129600434CF2 /* MTRDeviceController+XPC.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5A7947E327C0129500434CF2 /* MTRDeviceController+XPC.mm */; };
		5A7947E527C0129F00434CF2 /* MTRDeviceController+XPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A7947E227C0101200434CF2 /* MTRDeviceController+XPC.h */; settings = {ATTRIBUTES = (Public, ); }; };
		5A830D6C27CFCF590053B85D /* MTRDeviceControllerOverXPC_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A830D6B27CFCF590053B85D /* MTRDeviceControllerOverXPC_Internal.h */; };
		5ACDDD7A27CD129700EFD68A /* MTRClusterStateCacheContainer.h in Headers */ = {isa = PBXBuildFile; fileRef = 5ACDDD7927CD129700EFD68A /* MTRClusterStateCacheContainer.h */; settings = {ATTRIBUTES = (Public, ); }; };
		5ACDDD7D27CD16D200EFD68A /* MTRClusterStateCacheContainer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5ACDDD7C27CD16D200EFD68A /* MTRClusterStateCacheContainer.mm */; };
		5ACDDD7E27CD3F3A00EFD68A /* MTRClusterStateCacheContainer_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5ACDDD7B27CD14AF00EFD68A /* MTRClusterStateCacheContainer_Internal.h */; };
		5AE6D4E427A99041001F2493 /* MTRDeviceTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 5AE6D4E327A99041001F2493 /* MTRDeviceTests.m */; };
		7534F12828BFF20300390851 /* MTRDeviceAttestationDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7534F12628BFF20300390851 /* MTRDeviceAttestationDelegate.mm */; };
		7534F12928BFF20300390851 /* MTRDeviceAttestationDelegate_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 7534F12728BFF20300390851 /* MTRDeviceAttestationDelegate_Internal.h */; };
		754F3DF427FBB94B00E60580 /* MTREventTLVValueDecoder_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 754F3DF327FBB94B00E60580 /* MTREventTLVValueDecoder_Internal.h */; };
		7560FD1C27FBBD3F005E85B3 /* MTREventTLVValueDecoder.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7560FD1B27FBBD3F005E85B3 /* MTREventTLVValueDecoder.mm */; };
		7596A83E28751220004DAE0E /* MTRBaseClusters_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 7596A83D28751220004DAE0E /* MTRBaseClusters_Internal.h */; };
		7596A84428762729004DAE0E /* MTRDevice.h in Headers */ = {isa = PBXBuildFile; fileRef = 7596A84228762729004DAE0E /* MTRDevice.h */; settings = {ATTRIBUTES = (Public, ); }; };
		7596A84528762729004DAE0E /* MTRDevice.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7596A84328762729004DAE0E /* MTRDevice.mm */; };
		7596A84828762783004DAE0E /* MTRAsyncCallbackWorkQueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 7596A84628762783004DAE0E /* MTRAsyncCallbackWorkQueue.h */; settings = {ATTRIBUTES = (Public, ); }; };
		7596A84928762783004DAE0E /* MTRAsyncCallbackWorkQueue.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7596A84728762783004DAE0E /* MTRAsyncCallbackWorkQueue.mm */; };
		7596A84B287636C1004DAE0E /* MTRDevice_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 7596A84A287636C1004DAE0E /* MTRDevice_Internal.h */; };
		7596A84D287782EF004DAE0E /* MTRAsyncCallbackWorkQueue_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 7596A84C287782E8004DAE0E /* MTRAsyncCallbackWorkQueue_Internal.h */; };
		7596A84F2877E6A9004DAE0E /* MTRCluster_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 7596A84E2877E6A9004DAE0E /* MTRCluster_Internal.h */; };
		7596A8512878709F004DAE0E /* MTRAsyncCallbackQueueTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 7596A8502878709F004DAE0E /* MTRAsyncCallbackQueueTests.m */; };
		7596A85528788557004DAE0E /* MTRClusters.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7596A85228788557004DAE0E /* MTRClusters.mm */; };
		7596A85728788557004DAE0E /* MTRClusters.h in Headers */ = {isa = PBXBuildFile; fileRef = 7596A85428788557004DAE0E /* MTRClusters.h */; settings = {ATTRIBUTES = (Public, ); }; };
		88EBF8CE27FABDD500686BC1 /* MTRDeviceAttestationDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 88EBF8CB27FABDD500686BC1 /* MTRDeviceAttestationDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; };
		88EBF8CF27FABDD500686BC1 /* MTRDeviceAttestationDelegateBridge.mm in Sources */ = {isa = PBXBuildFile; fileRef = 88EBF8CC27FABDD500686BC1 /* MTRDeviceAttestationDelegateBridge.mm */; };
		88EBF8D027FABDD500686BC1 /* MTRDeviceAttestationDelegateBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 88EBF8CD27FABDD500686BC1 /* MTRDeviceAttestationDelegateBridge.h */; };
		991DC0842475F45400C13860 /* MTRDeviceController.h in Headers */ = {isa = PBXBuildFile; fileRef = 991DC0822475F45400C13860 /* MTRDeviceController.h */; settings = {ATTRIBUTES = (Public, ); }; };
		991DC0892475F47D00C13860 /* MTRDeviceController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 991DC0872475F47D00C13860 /* MTRDeviceController.mm */; };
		991DC08B247704DC00C13860 /* MTRLogging_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 991DC08A247704DC00C13860 /* MTRLogging_Internal.h */; };
		9956064426420367000C28DE /* MTRSetupPayload_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 9956064326420367000C28DE /* MTRSetupPayload_Internal.h */; };
		997DED162695343400975E97 /* MTRThreadOperationalDataset.mm in Sources */ = {isa = PBXBuildFile; fileRef = 997DED152695343400975E97 /* MTRThreadOperationalDataset.mm */; };
		997DED182695344800975E97 /* MTRThreadOperationalDataset.h in Headers */ = {isa = PBXBuildFile; fileRef = 997DED172695344800975E97 /* MTRThreadOperationalDataset.h */; settings = {ATTRIBUTES = (Public, ); }; };
		997DED1A26955D0200975E97 /* MTRThreadOperationalDatasetTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 997DED1926955D0200975E97 /* MTRThreadOperationalDatasetTests.mm */; };
		998F286D26D55E10001846C6 /* MTRKeypair.h in Headers */ = {isa = PBXBuildFile; fileRef = 998F286C26D55E10001846C6 /* MTRKeypair.h */; settings = {ATTRIBUTES = (Public, ); }; };
		998F286F26D55EC5001846C6 /* MTRP256KeypairBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 998F286E26D55EC5001846C6 /* MTRP256KeypairBridge.h */; };
		998F287126D56940001846C6 /* MTRP256KeypairBridge.mm in Sources */ = {isa = PBXBuildFile; fileRef = 998F287026D56940001846C6 /* MTRP256KeypairBridge.mm */; };
		99AECC802798A57F00B6355B /* MTRCommissioningParameters.mm in Sources */ = {isa = PBXBuildFile; fileRef = 99AECC7F2798A57E00B6355B /* MTRCommissioningParameters.mm */; };
		99C65E10267282F1003402F6 /* MTRControllerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 99C65E0F267282F1003402F6 /* MTRControllerTests.m */; };
		99D466E12798936D0089A18F /* MTRCommissioningParameters.h in Headers */ = {isa = PBXBuildFile; fileRef = 99D466E02798936D0089A18F /* MTRCommissioningParameters.h */; settings = {ATTRIBUTES = (Public, ); }; };
		AF1CB86E2874B03B00865A96 /* MTROTAProviderDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = AF1CB86D2874B03B00865A96 /* MTROTAProviderDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; };
		AF1CB8702874B04C00865A96 /* MTROTAProviderDelegateBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = AF1CB86F2874B04C00865A96 /* MTROTAProviderDelegateBridge.h */; };
		AF5F90FF2878D351005503FA /* MTROTAProviderDelegateBridge.mm in Sources */ = {isa = PBXBuildFile; fileRef = AF5F90FE2878D351005503FA /* MTROTAProviderDelegateBridge.mm */; };
		B20252972459E34F00F97062 /* Matter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B202528D2459E34F00F97062 /* Matter.framework */; };
		B289D4212639C0D300D4E314 /* MTROnboardingPayloadParser.h in Headers */ = {isa = PBXBuildFile; fileRef = B289D41F2639C0D300D4E314 /* MTROnboardingPayloadParser.h */; settings = {ATTRIBUTES = (Public, ); }; };
		B289D4222639C0D300D4E314 /* MTROnboardingPayloadParser.mm in Sources */ = {isa = PBXBuildFile; fileRef = B289D4202639C0D300D4E314 /* MTROnboardingPayloadParser.mm */; };
		B2E0D7B1245B0B5C003C5B48 /* Matter.h in Headers */ = {isa = PBXBuildFile; fileRef = B2E0D7A8245B0B5C003C5B48 /* Matter.h */; settings = {ATTRIBUTES = (Public, ); }; };
		B2E0D7B2245B0B5C003C5B48 /* MTRManualSetupPayloadParser.h in Headers */ = {isa = PBXBuildFile; fileRef = B2E0D7A9245B0B5C003C5B48 /* MTRManualSetupPayloadParser.h */; settings = {ATTRIBUTES = (Public, ); }; };
		B2E0D7B3245B0B5C003C5B48 /* MTRError.mm in Sources */ = {isa = PBXBuildFile; fileRef = B2E0D7AA245B0B5C003C5B48 /* MTRError.mm */; };
		B2E0D7B4245B0B5C003C5B48 /* MTRError_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = B2E0D7AB245B0B5C003C5B48 /* MTRError_Internal.h */; };
		B2E0D7B5245B0B5C003C5B48 /* MTRQRCodeSetupPayloadParser.h in Headers */ = {isa = PBXBuildFile; fileRef = B2E0D7AC245B0B5C003C5B48 /* MTRQRCodeSetupPayloadParser.h */; settings = {ATTRIBUTES = (Public, ); }; };
		B2E0D7B6245B0B5C003C5B48 /* MTRManualSetupPayloadParser.mm in Sources */ = {isa = PBXBuildFile; fileRef = B2E0D7AD245B0B5C003C5B48 /* MTRManualSetupPayloadParser.mm */; };
		B2E0D7B7245B0B5C003C5B48 /* MTRQRCodeSetupPayloadParser.mm in Sources */ = {isa = PBXBuildFile; fileRef = B2E0D7AE245B0B5C003C5B48 /* MTRQRCodeSetupPayloadParser.mm */; };
		B2E0D7B8245B0B5C003C5B48 /* MTRSetupPayload.h in Headers */ = {isa = PBXBuildFile; fileRef = B2E0D7AF245B0B5C003C5B48 /* MTRSetupPayload.h */; settings = {ATTRIBUTES = (Public, ); }; };
		B2E0D7B9245B0B5C003C5B48 /* MTRSetupPayload.mm in Sources */ = {isa = PBXBuildFile; fileRef = B2E0D7B0245B0B5C003C5B48 /* MTRSetupPayload.mm */; };
		B2F53AF2245B0DCF0010745E /* MTRSetupPayloadParserTests.m in Sources */ = {isa = PBXBuildFile; fileRef = B2F53AF1245B0DCF0010745E /* MTRSetupPayloadParserTests.m */; };
		BA09EB43247477BA00605257 /* libCHIP.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BA09EB3F2474762900605257 /* libCHIP.a */; };
		D4772A46285AE98400383630 /* MTRClusterConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = D4772A45285AE98300383630 /* MTRClusterConstants.h */; settings = {ATTRIBUTES = (Public, ); }; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
		B20252982459E34F00F97062 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = B20252842459E34F00F97062 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B202528C2459E34F00F97062;
			remoteInfo = CHP;
		};
/* End PBXContainerItemProxy section */

/* Begin PBXCopyFilesBuildPhase section */
		3D69868429383083007314E7 /* Copy Logging Preferences */ = {
			isa = PBXCopyFilesBuildPhase;
			buildActionMask = 8;
			dstPath = "$(SYSTEM_LIBRARY_DIR)/Preferences/Logging/Subsystems";
			dstSubfolderSpec = 0;
			files = (
				3D69868529383096007314E7 /* com.csa.matter.plist in Copy Logging Preferences */,
			);
			name = "Copy Logging Preferences";
			runOnlyForDeploymentPostprocessing = 1;
		};
/* End PBXCopyFilesBuildPhase section */

/* Begin PBXFileReference section */
		1E748B3828941A44008A1BE8 /* MTRTestOTAProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MTRTestOTAProvider.m; sourceTree = "<group>"; };
		1E748B3928941A45008A1BE8 /* MTRTestOTAProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRTestOTAProvider.h; sourceTree = "<group>"; };
		1EC3238C271999E2002A8BF0 /* cluster-objects.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "cluster-objects.cpp"; path = "../../../../../zzz_generated/app-common/app-common/zap-generated/cluster-objects.cpp"; sourceTree = "<group>"; };
		1EC4CE5925CC26E900D7304F /* MTRBaseClusters.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRBaseClusters.mm; sourceTree = "<group>"; };
		1EC4CE6325CC276600D7304F /* MTRBaseClusters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRBaseClusters.h; sourceTree = "<group>"; };
		1ED276DF26C57CF000547A89 /* MTRCallbackBridge.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRCallbackBridge.mm; sourceTree = "<group>"; };
		1ED276E126C5812A00547A89 /* MTRCluster.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRCluster.mm; sourceTree = "<group>"; };
		1ED276E326C5832500547A89 /* MTRCluster.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRCluster.h; sourceTree = "<group>"; };
		1EDCE543289049A100E41EC9 /* MTROTAHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTROTAHeader.h; sourceTree = "<group>"; };
		1EDCE544289049A100E41EC9 /* MTROTAHeader.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTROTAHeader.mm; sourceTree = "<group>"; };
		27A53C1527FBC6920053F131 /* MTRAttestationTrustStoreBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRAttestationTrustStoreBridge.h; sourceTree = "<group>"; };
		27A53C1627FBC6920053F131 /* MTRAttestationTrustStoreBridge.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRAttestationTrustStoreBridge.mm; sourceTree = "<group>"; };
		2C1B02782641DB4E00780EF1 /* MTROperationalCredentialsDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTROperationalCredentialsDelegate.mm; sourceTree = "<group>"; };
		2C1B02792641DB4E00780EF1 /* MTROperationalCredentialsDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTROperationalCredentialsDelegate.h; sourceTree = "<group>"; };
		2C222ACE255C620600E446B9 /* MTRBaseDevice.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRBaseDevice.h; sourceTree = "<group>"; };
		2C222ACF255C620600E446B9 /* MTRBaseDevice.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRBaseDevice.mm; sourceTree = "<group>"; };
		2C222ADE255C811800E446B9 /* MTRBaseDevice_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRBaseDevice_Internal.h; sourceTree = "<group>"; };
		2C5EEEF4268A85C400CAE3D3 /* MTRDeviceConnectionBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRDeviceConnectionBridge.h; sourceTree = "<group>"; };
		2C5EEEF5268A85C400CAE3D3 /* MTRDeviceConnectionBridge.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRDeviceConnectionBridge.mm; sourceTree = "<group>"; };
		2C8C8FBD253E0C2100797F05 /* MTRPersistentStorageDelegateBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRPersistentStorageDelegateBridge.h; sourceTree = "<group>"; };
		2C8C8FBE253E0C2100797F05 /* MTRStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRStorage.h; sourceTree = "<group>"; };
		2C8C8FBF253E0C2100797F05 /* MTRPersistentStorageDelegateBridge.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRPersistentStorageDelegateBridge.mm; sourceTree = "<group>"; };
		2CB71638252E8A7B0026E2BB /* MTRDeviceControllerDelegateBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRDeviceControllerDelegateBridge.h; sourceTree = "<group>"; };
		2CB71639252E8A7B0026E2BB /* MTRDeviceControllerDelegateBridge.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRDeviceControllerDelegateBridge.mm; sourceTree = "<group>"; };
		2CB7163E252F731E0026E2BB /* MTRDeviceControllerDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRDeviceControllerDelegate.h; sourceTree = "<group>"; };
		2FD775542695557E00FF4B12 /* error-mapping.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "error-mapping.cpp"; path = "util/error-mapping.cpp"; sourceTree = "<group>"; };
		3CF134A6289D8AD90017A19E /* MTRCSRInfo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRCSRInfo.h; sourceTree = "<group>"; };
		3CF134A8289D8D800017A19E /* MTRCSRInfo.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRCSRInfo.mm; sourceTree = "<group>"; };
		3CF134AA289D8DF70017A19E /* MTRAttestationInfo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRAttestationInfo.h; sourceTree = "<group>"; };
		3CF134AC289D8E570017A19E /* MTRAttestationInfo.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRAttestationInfo.mm; sourceTree = "<group>"; };
		3CF134AE289D90FF0017A19E /* MTROperationalCertificateIssuer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTROperationalCertificateIssuer.h; sourceTree = "<group>"; };
		3D69868029382EF4007314E7 /* com.csa.matter.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = com.csa.matter.plist; sourceTree = "<group>"; };
		3D84370E294977000070D20A /* NSStringSpanConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSStringSpanConversion.h; sourceTree = "<group>"; };
		3D84370F294977000070D20A /* MTRCallbackBridgeBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRCallbackBridgeBase.h; sourceTree = "<group>"; };
		3D843710294977000070D20A /* NSDataSpanConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSDataSpanConversion.h; sourceTree = "<group>"; };
		3D843714294979230070D20A /* MTRCallbackBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRCallbackBridge.h; sourceTree = "<group>"; };
		3D843715294979230070D20A /* MTRClusters_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRClusters_Internal.h; sourceTree = "<group>"; };
		3D843719294984AF0070D20A /* MTRBaseClusters.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MTRBaseClusters.zapt; sourceTree = "<group>"; };
		3D84371A294984AF0070D20A /* MTRCommandPayloadsObjc.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MTRCommandPayloadsObjc.zapt; sourceTree = "<group>"; };
		3D84371B294984AF0070D20A /* MTRBaseClusters_Internal.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MTRBaseClusters_Internal.zapt; sourceTree = "<group>"; };
		3D84371C294984AF0070D20A /* MTRAttributeTLVValueDecoder-src.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "MTRAttributeTLVValueDecoder-src.zapt"; sourceTree = "<group>"; };
		3D84371D294984AF0070D20A /* MTREventTLVValueDecoder-src.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "MTREventTLVValueDecoder-src.zapt"; sourceTree = "<group>"; };
		3D84371E294984AF0070D20A /* MTRClusterConstants.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MTRClusterConstants.zapt; sourceTree = "<group>"; };
		3D84371F294984AF0070D20A /* MTRStructsObjc.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MTRStructsObjc.zapt; sourceTree = "<group>"; };
		3D843720294984AF0070D20A /* MTRClusters_Internal.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MTRClusters_Internal.zapt; sourceTree = "<group>"; };
		3D843721294984AF0070D20A /* MTRCallbackBridge.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MTRCallbackBridge.zapt; sourceTree = "<group>"; };
		3D843722294984AF0070D20A /* MTRStructsObjc-src.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "MTRStructsObjc-src.zapt"; sourceTree = "<group>"; };
		3D843723294984AF0070D20A /* templates.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = templates.json; sourceTree = "<group>"; };
		3D843724294984AF0070D20A /* MTRBaseClusters-src.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "MTRBaseClusters-src.zapt"; sourceTree = "<group>"; };
		3D843725294984AF0070D20A /* MTRCallbackBridge-src.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "MTRCallbackBridge-src.zapt"; sourceTree = "<group>"; };
		3D843726294984AF0070D20A /* MTRClusters-src.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "MTRClusters-src.zapt"; sourceTree = "<group>"; };
		3D843727294984AF0070D20A /* MTRCommandPayloadsObjc-src.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "MTRCommandPayloadsObjc-src.zapt"; sourceTree = "<group>"; };
		3D843728294984AF0070D20A /* MTRClusters.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MTRClusters.zapt; sourceTree = "<group>"; };
		3D84372A294984AF0070D20A /* attribute_data_callback_name.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = attribute_data_callback_name.zapt; sourceTree = "<group>"; };
		3D84372B294984AF0070D20A /* encode_value.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = encode_value.zapt; sourceTree = "<group>"; };
		3D84372C294984AF0070D20A /* init_struct_member.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = init_struct_member.zapt; sourceTree = "<group>"; };
		3D84372D294984AF0070D20A /* decode_value.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = decode_value.zapt; sourceTree = "<group>"; };
		3D84372E294984AF0070D20A /* MTRCallbackBridge.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MTRCallbackBridge.zapt; sourceTree = "<group>"; };
		3D84372F294984AF0070D20A /* command_completion_type.zapt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = command_completion_type.zapt; sourceTree = "<group>"; };
		3D84374A29498BAE0070D20A /* privilege-storage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "privilege-storage.cpp"; path = "util/privilege-storage.cpp"; sourceTree = "<group>"; };
		3D843754294AD25A0070D20A /* MTRCertificateInfo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRCertificateInfo.h; sourceTree = "<group>"; };
		3D843755294AD25A0070D20A /* MTRCertificateInfo.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRCertificateInfo.mm; sourceTree = "<group>"; };
		3DECCB6D29347D2C00585AEC /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; };
		3DECCB6F2934AC1C00585AEC /* MTRLogging.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRLogging.h; sourceTree = "<group>"; };
		3DECCB712934AFE200585AEC /* MTRLogging.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRLogging.mm; sourceTree = "<group>"; };
		3DECCB732934C21B00585AEC /* MTRDefines.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRDefines.h; sourceTree = "<group>"; };
		3DFCB3282966684500332B35 /* MTRCertificateInfoTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MTRCertificateInfoTests.m; sourceTree = "<group>"; };
		3DFCB32A2966827F00332B35 /* MTRDefines_Internal.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRDefines_Internal.h; sourceTree = "<group>"; };
		3DFCB32B29678C9500332B35 /* MTRConversion.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRConversion.h; sourceTree = "<group>"; };
		51029DF5293AA6100087AFB0 /* MTROperationalCertificateIssuer.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTROperationalCertificateIssuer.mm; sourceTree = "<group>"; };
		510CECA6297F72470064E0B3 /* MTROperationalCertificateIssuerTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MTROperationalCertificateIssuerTests.m; sourceTree = "<group>"; };
		511913F928C100EF009235E9 /* MTRBaseSubscriptionCallback.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRBaseSubscriptionCallback.mm; sourceTree = "<group>"; };
		511913FA28C100EF009235E9 /* MTRBaseSubscriptionCallback.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRBaseSubscriptionCallback.h; sourceTree = "<group>"; };
		5129BCFC26A9EE3300122DDF /* MTRError.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRError.h; sourceTree = "<group>"; };
		5136660F28067D540025EDAE /* MTRDeviceController_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRDeviceController_Internal.h; sourceTree = "<group>"; };
		5136661028067D540025EDAE /* MTRDeviceControllerFactory.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRDeviceControllerFactory.mm; sourceTree = "<group>"; };
		5136661128067D540025EDAE /* MTRDeviceControllerFactory_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRDeviceControllerFactory_Internal.h; sourceTree = "<group>"; };
		5136661228067D550025EDAE /* MTRDeviceControllerFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRDeviceControllerFactory.h; sourceTree = "<group>"; };
		513DDB852761F69300DAA01A /* MTRAttributeTLVValueDecoder_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRAttributeTLVValueDecoder_Internal.h; sourceTree = "<group>"; };
		513DDB892761F6F900DAA01A /* MTRAttributeTLVValueDecoder.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRAttributeTLVValueDecoder.mm; sourceTree = "<group>"; };
		5143041F2914CED9004DC7FE /* generic-callback-stubs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "generic-callback-stubs.cpp"; path = "util/generic-callback-stubs.cpp"; sourceTree = "<group>"; };
		51431AF827D2973E008A7943 /* MTRIMDispatch.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRIMDispatch.mm; sourceTree = "<group>"; };
		51431AFA27D29CA4008A7943 /* ota-provider.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "ota-provider.cpp"; path = "clusters/ota-provider/ota-provider.cpp"; sourceTree = "<group>"; };
		515C1C6D284F9FFB00A48F0C /* MTRFramework.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRFramework.mm; sourceTree = "<group>"; };
		515C1C6E284F9FFB00A48F0C /* MTRFramework.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRFramework.h; sourceTree = "<group>"; };
		51669AEF2913204400F4AA36 /* MTRBackwardsCompatTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MTRBackwardsCompatTests.m; sourceTree = "<group>"; };
		517BF3EE282B62B800A8B7DB /* MTRCertificates.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRCertificates.h; sourceTree = "<group>"; };
		517BF3EF282B62B800A8B7DB /* MTRCertificates.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRCertificates.mm; sourceTree = "<group>"; };
		517BF3F2282B62CB00A8B7DB /* MTRCertificateTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MTRCertificateTests.m; sourceTree = "<group>"; };
		51B22C1D2740CB0A008D5055 /* MTRStructsObjc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRStructsObjc.h; sourceTree = "<group>"; };
		51B22C212740CB1D008D5055 /* MTRCommandPayloadsObjc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRCommandPayloadsObjc.h; sourceTree = "<group>"; };
		51B22C252740CB32008D5055 /* MTRStructsObjc.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRStructsObjc.mm; sourceTree = "<group>"; };
		51B22C292740CB47008D5055 /* MTRCommandPayloadsObjc.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRCommandPayloadsObjc.mm; sourceTree = "<group>"; };
		51C8E3F72825CDB600D47D00 /* MTRTestKeys.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MTRTestKeys.m; sourceTree = "<group>"; };
		51D10D2D2808E2CA00E8CA3D /* MTRTestStorage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MTRTestStorage.m; sourceTree = "<group>"; };
		51E030FE27EA20D20083DC9C /* MTRControllerAccessControl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRControllerAccessControl.h; sourceTree = "<group>"; };
		51E030FF27EA20D20083DC9C /* MTRControllerAccessControl.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRControllerAccessControl.mm; sourceTree = "<group>"; };
		51E24E72274E0DAC007CCF6E /* MTRErrorTestUtils.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRErrorTestUtils.mm; sourceTree = "<group>"; };
		51E4D120291D0EB400C8C535 /* MTRBaseClusterUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRBaseClusterUtils.h; sourceTree = "<group>"; };
		51E51FBC282AD37A00FC978D /* MTRDeviceControllerStartupParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRDeviceControllerStartupParams.h; sourceTree = "<group>"; };
		51E51FBD282AD37A00FC978D /* MTRDeviceControllerStartupParams_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRDeviceControllerStartupParams_Internal.h; sourceTree = "<group>"; };
		51E51FBE282AD37A00FC978D /* MTRDeviceControllerStartupParams.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRDeviceControllerStartupParams.mm; sourceTree = "<group>"; };
		5A60370727EA1FF60020DB79 /* MTRClusterStateCacheContainer+XPC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "MTRClusterStateCacheContainer+XPC.h"; sourceTree = "<group>"; };
		5A6FEC8B27B5609C00F25F42 /* MTRDeviceOverXPC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRDeviceOverXPC.h; sourceTree = "<group>"; };
		5A6FEC8D27B5624E00F25F42 /* MTRDeviceControllerOverXPC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRDeviceControllerOverXPC.h; sourceTree = "<group>"; };
		5A6FEC8F27B563D900F25F42 /* MTRDeviceControllerOverXPC.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRDeviceControllerOverXPC.mm; sourceTree = "<group>"; };
		5A6FEC9427B5976200F25F42 /* MTRDeviceControllerXPCConnection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRDeviceControllerXPCConnection.h; sourceTree = "<group>"; };
		5A6FEC9527B5983000F25F42 /* MTRDeviceControllerXPCConnection.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRDeviceControllerXPCConnection.mm; sourceTree = "<group>"; };
		5A6FEC9727B5C6AF00F25F42 /* MTRDeviceOverXPC.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRDeviceOverXPC.mm; sourceTree = "<group>"; };
		5A6FEC9C27B5E48800F25F42 /* MTRXPCProtocolTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MTRXPCProtocolTests.m; sourceTree = "<group>"; };
		5A7947DD27BEC3F500434CF2 /* MTRXPCListenerSampleTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MTRXPCListenerSampleTests.m; sourceTree = "<group>"; };
		5A7947E227C0101200434CF2 /* MTRDeviceController+XPC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "MTRDeviceController+XPC.h"; sourceTree = "<group>"; };
		5A7947E327C0129500434CF2 /* MTRDeviceController+XPC.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = "MTRDeviceController+XPC.mm"; sourceTree = "<group>"; };
		5A830D6B27CFCF590053B85D /* MTRDeviceControllerOverXPC_Internal.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRDeviceControllerOverXPC_Internal.h; sourceTree = "<group>"; };
		5ACDDD7927CD129700EFD68A /* MTRClusterStateCacheContainer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRClusterStateCacheContainer.h; sourceTree = "<group>"; };
		5ACDDD7B27CD14AF00EFD68A /* MTRClusterStateCacheContainer_Internal.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRClusterStateCacheContainer_Internal.h; sourceTree = "<group>"; };
		5ACDDD7C27CD16D200EFD68A /* MTRClusterStateCacheContainer.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRClusterStateCacheContainer.mm; sourceTree = "<group>"; };
		5AE6D4E327A99041001F2493 /* MTRDeviceTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MTRDeviceTests.m; sourceTree = "<group>"; };
		7534F12628BFF20300390851 /* MTRDeviceAttestationDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRDeviceAttestationDelegate.mm; sourceTree = "<group>"; };
		7534F12728BFF20300390851 /* MTRDeviceAttestationDelegate_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRDeviceAttestationDelegate_Internal.h; sourceTree = "<group>"; };
		754F3DF327FBB94B00E60580 /* MTREventTLVValueDecoder_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTREventTLVValueDecoder_Internal.h; sourceTree = "<group>"; };
		7560FD1B27FBBD3F005E85B3 /* MTREventTLVValueDecoder.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTREventTLVValueDecoder.mm; sourceTree = "<group>"; };
		7596A83D28751220004DAE0E /* MTRBaseClusters_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRBaseClusters_Internal.h; sourceTree = "<group>"; };
		7596A84228762729004DAE0E /* MTRDevice.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRDevice.h; sourceTree = "<group>"; };
		7596A84328762729004DAE0E /* MTRDevice.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRDevice.mm; sourceTree = "<group>"; };
		7596A84628762783004DAE0E /* MTRAsyncCallbackWorkQueue.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRAsyncCallbackWorkQueue.h; sourceTree = "<group>"; };
		7596A84728762783004DAE0E /* MTRAsyncCallbackWorkQueue.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRAsyncCallbackWorkQueue.mm; sourceTree = "<group>"; };
		7596A84A287636C1004DAE0E /* MTRDevice_Internal.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRDevice_Internal.h; sourceTree = "<group>"; };
		7596A84C287782E8004DAE0E /* MTRAsyncCallbackWorkQueue_Internal.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRAsyncCallbackWorkQueue_Internal.h; sourceTree = "<group>"; };
		7596A84E2877E6A9004DAE0E /* MTRCluster_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRCluster_Internal.h; sourceTree = "<group>"; };
		7596A8502878709F004DAE0E /* MTRAsyncCallbackQueueTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MTRAsyncCallbackQueueTests.m; sourceTree = "<group>"; };
		7596A85228788557004DAE0E /* MTRClusters.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRClusters.mm; sourceTree = "<group>"; };
		7596A85428788557004DAE0E /* MTRClusters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRClusters.h; sourceTree = "<group>"; };
		88EBF8CB27FABDD500686BC1 /* MTRDeviceAttestationDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRDeviceAttestationDelegate.h; sourceTree = "<group>"; };
		88EBF8CC27FABDD500686BC1 /* MTRDeviceAttestationDelegateBridge.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRDeviceAttestationDelegateBridge.mm; sourceTree = "<group>"; };
		88EBF8CD27FABDD500686BC1 /* MTRDeviceAttestationDelegateBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRDeviceAttestationDelegateBridge.h; sourceTree = "<group>"; };
		991DC0822475F45400C13860 /* MTRDeviceController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRDeviceController.h; sourceTree = "<group>"; };
		991DC0872475F47D00C13860 /* MTRDeviceController.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRDeviceController.mm; sourceTree = "<group>"; };
		991DC08A247704DC00C13860 /* MTRLogging_Internal.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRLogging_Internal.h; sourceTree = "<group>"; };
		9956064326420367000C28DE /* MTRSetupPayload_Internal.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRSetupPayload_Internal.h; sourceTree = "<group>"; };
		997DED152695343400975E97 /* MTRThreadOperationalDataset.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRThreadOperationalDataset.mm; sourceTree = "<group>"; };
		997DED172695344800975E97 /* MTRThreadOperationalDataset.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRThreadOperationalDataset.h; sourceTree = "<group>"; };
		997DED1926955D0200975E97 /* MTRThreadOperationalDatasetTests.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRThreadOperationalDatasetTests.mm; sourceTree = "<group>"; };
		998F286C26D55E10001846C6 /* MTRKeypair.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRKeypair.h; sourceTree = "<group>"; };
		998F286E26D55EC5001846C6 /* MTRP256KeypairBridge.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRP256KeypairBridge.h; sourceTree = "<group>"; };
		998F287026D56940001846C6 /* MTRP256KeypairBridge.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRP256KeypairBridge.mm; sourceTree = "<group>"; };
		99AECC7F2798A57E00B6355B /* MTRCommissioningParameters.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRCommissioningParameters.mm; sourceTree = "<group>"; };
		99C65E0F267282F1003402F6 /* MTRControllerTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MTRControllerTests.m; sourceTree = "<group>"; };
		99D466E02798936D0089A18F /* MTRCommissioningParameters.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTRCommissioningParameters.h; sourceTree = "<group>"; };
		AF1CB86D2874B03B00865A96 /* MTROTAProviderDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTROTAProviderDelegate.h; sourceTree = "<group>"; };
		AF1CB86F2874B04C00865A96 /* MTROTAProviderDelegateBridge.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTROTAProviderDelegateBridge.h; sourceTree = "<group>"; };
		AF5F90FE2878D351005503FA /* MTROTAProviderDelegateBridge.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTROTAProviderDelegateBridge.mm; sourceTree = "<group>"; };
		B202528D2459E34F00F97062 /* Matter.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Matter.framework; sourceTree = BUILT_PRODUCTS_DIR; };
		B20252912459E34F00F97062 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
		B20252962459E34F00F97062 /* MatterTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MatterTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
		B202529D2459E34F00F97062 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
		B289D41F2639C0D300D4E314 /* MTROnboardingPayloadParser.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MTROnboardingPayloadParser.h; sourceTree = "<group>"; };
		B289D4202639C0D300D4E314 /* MTROnboardingPayloadParser.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = MTROnboardingPayloadParser.mm; sourceTree = "<group>"; };
		B2E0D7A8245B0B5C003C5B48 /* Matter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Matter.h; sourceTree = "<group>"; };
		B2E0D7A9245B0B5C003C5B48 /* MTRManualSetupPayloadParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRManualSetupPayloadParser.h; sourceTree = "<group>"; };
		B2E0D7AA245B0B5C003C5B48 /* MTRError.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRError.mm; sourceTree = "<group>"; };
		B2E0D7AB245B0B5C003C5B48 /* MTRError_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRError_Internal.h; sourceTree = "<group>"; };
		B2E0D7AC245B0B5C003C5B48 /* MTRQRCodeSetupPayloadParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRQRCodeSetupPayloadParser.h; sourceTree = "<group>"; };
		B2E0D7AD245B0B5C003C5B48 /* MTRManualSetupPayloadParser.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRManualSetupPayloadParser.mm; sourceTree = "<group>"; };
		B2E0D7AE245B0B5C003C5B48 /* MTRQRCodeSetupPayloadParser.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRQRCodeSetupPayloadParser.mm; sourceTree = "<group>"; };
		B2E0D7AF245B0B5C003C5B48 /* MTRSetupPayload.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRSetupPayload.h; sourceTree = "<group>"; };
		B2E0D7B0245B0B5C003C5B48 /* MTRSetupPayload.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MTRSetupPayload.mm; sourceTree = "<group>"; };
		B2F53AF1245B0DCF0010745E /* MTRSetupPayloadParserTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MTRSetupPayloadParserTests.m; sourceTree = "<group>"; };
		BA09EB3F2474762900605257 /* libCHIP.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libCHIP.a; path = lib/libCHIP.a; sourceTree = BUILT_PRODUCTS_DIR; };
		BA107AEE2470CFBB004287EB /* chip_xcode_build_connector.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = chip_xcode_build_connector.sh; sourceTree = "<group>"; };
		D437613E285BDC0D0051FEA2 /* MTRErrorTestUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRErrorTestUtils.h; sourceTree = "<group>"; };
		D437613F285BDC0D0051FEA2 /* MTRTestKeys.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRTestKeys.h; sourceTree = "<group>"; };
		D4376140285BDC0D0051FEA2 /* MTRTestStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRTestStorage.h; sourceTree = "<group>"; };
		D4772A45285AE98300383630 /* MTRClusterConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTRClusterConstants.h; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		B202528A2459E34F00F97062 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				3DECCB6E29347D2D00585AEC /* Security.framework in Frameworks */,
				BA09EB43247477BA00605257 /* libCHIP.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B20252932459E34F00F97062 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B20252972459E34F00F97062 /* Matter.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		1E857311265519DE0050A4D9 /* app */ = {
			isa = PBXGroup;
			children = (
				2FD775542695557E00FF4B12 /* error-mapping.cpp */,
				5143041F2914CED9004DC7FE /* generic-callback-stubs.cpp */,
				51431AFA27D29CA4008A7943 /* ota-provider.cpp */,
				3D84374A29498BAE0070D20A /* privilege-storage.cpp */,
			);
			name = app;
			path = ../../../app;
			sourceTree = "<group>";
		};
		1EC4CE5825CC26AB00D7304F /* zap-generated */ = {
			isa = PBXGroup;
			children = (
				1EC3238C271999E2002A8BF0 /* cluster-objects.cpp */,
				513DDB892761F6F900DAA01A /* MTRAttributeTLVValueDecoder.mm */,
				1EC4CE6325CC276600D7304F /* MTRBaseClusters.h */,
				7596A83D28751220004DAE0E /* MTRBaseClusters_Internal.h */,
				1EC4CE5925CC26E900D7304F /* MTRBaseClusters.mm */,
				3D843714294979230070D20A /* MTRCallbackBridge.h */,
				1ED276DF26C57CF000547A89 /* MTRCallbackBridge.mm */,
				D4772A45285AE98300383630 /* MTRClusterConstants.h */,
				7596A85428788557004DAE0E /* MTRClusters.h */,
				3D843715294979230070D20A /* MTRClusters_Internal.h */,
				7596A85228788557004DAE0E /* MTRClusters.mm */,
				51B22C212740CB1D008D5055 /* MTRCommandPayloadsObjc.h */,
				51B22C292740CB47008D5055 /* MTRCommandPayloadsObjc.mm */,
				7560FD1B27FBBD3F005E85B3 /* MTREventTLVValueDecoder.mm */,
				51B22C1D2740CB0A008D5055 /* MTRStructsObjc.h */,
				51B22C252740CB32008D5055 /* MTRStructsObjc.mm */,
			);
			path = "zap-generated";
			sourceTree = "<group>";
		};
		3D69867E29382E58007314E7 /* Resources */ = {
			isa = PBXGroup;
			children = (
				3D69867F29382EAD007314E7 /* Logging */,
			);
			path = Resources;
			sourceTree = "<group>";
		};
		3D69867F29382EAD007314E7 /* Logging */ = {
			isa = PBXGroup;
			children = (
				3D69868029382EF4007314E7 /* com.csa.matter.plist */,
			);
			path = Logging;
			sourceTree = "<group>";
		};
		3D843718294984AF0070D20A /* templates */ = {
			isa = PBXGroup;
			children = (
				3D843723294984AF0070D20A /* templates.json */,
				3D84371C294984AF0070D20A /* MTRAttributeTLVValueDecoder-src.zapt */,
				3D843719294984AF0070D20A /* MTRBaseClusters.zapt */,
				3D84371B294984AF0070D20A /* MTRBaseClusters_Internal.zapt */,
				3D843724294984AF0070D20A /* MTRBaseClusters-src.zapt */,
				3D843721294984AF0070D20A /* MTRCallbackBridge.zapt */,
				3D843725294984AF0070D20A /* MTRCallbackBridge-src.zapt */,
				3D84371E294984AF0070D20A /* MTRClusterConstants.zapt */,
				3D843728294984AF0070D20A /* MTRClusters.zapt */,
				3D843720294984AF0070D20A /* MTRClusters_Internal.zapt */,
				3D843726294984AF0070D20A /* MTRClusters-src.zapt */,
				3D84371A294984AF0070D20A /* MTRCommandPayloadsObjc.zapt */,
				3D843727294984AF0070D20A /* MTRCommandPayloadsObjc-src.zapt */,
				3D84371D294984AF0070D20A /* MTREventTLVValueDecoder-src.zapt */,
				3D84371F294984AF0070D20A /* MTRStructsObjc.zapt */,
				3D843722294984AF0070D20A /* MTRStructsObjc-src.zapt */,
				3D843729294984AF0070D20A /* partials */,
			);
			path = templates;
			sourceTree = "<group>";
		};
		3D843729294984AF0070D20A /* partials */ = {
			isa = PBXGroup;
			children = (
				3D84372A294984AF0070D20A /* attribute_data_callback_name.zapt */,
				3D84372F294984AF0070D20A /* command_completion_type.zapt */,
				3D84372D294984AF0070D20A /* decode_value.zapt */,
				3D84372B294984AF0070D20A /* encode_value.zapt */,
				3D84372C294984AF0070D20A /* init_struct_member.zapt */,
				3D84372E294984AF0070D20A /* MTRCallbackBridge.zapt */,
			);
			path = partials;
			sourceTree = "<group>";
		};
		B20252832459E34F00F97062 = {
			isa = PBXGroup;
			children = (
				BA107AEE2470CFBB004287EB /* chip_xcode_build_connector.sh */,
				B202528F2459E34F00F97062 /* CHIP */,
				B202529A2459E34F00F97062 /* CHIPTests */,
				B202528E2459E34F00F97062 /* Products */,
				BA09EB3E2474762900605257 /* Frameworks */,
			);
			sourceTree = "<group>";
		};
		B202528E2459E34F00F97062 /* Products */ = {
			isa = PBXGroup;
			children = (
				B202528D2459E34F00F97062 /* Matter.framework */,
				B20252962459E34F00F97062 /* MatterTests.xctest */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		B202528F2459E34F00F97062 /* CHIP */ = {
			isa = PBXGroup;
			children = (
				1E857311265519DE0050A4D9 /* app */,
				3D843718294984AF0070D20A /* templates */,
				1EC4CE5825CC26AB00D7304F /* zap-generated */,
				B20252912459E34F00F97062 /* Info.plist */,
				B2E0D7A8245B0B5C003C5B48 /* Matter.h */,
				7596A84628762783004DAE0E /* MTRAsyncCallbackWorkQueue.h */,
				7596A84C287782E8004DAE0E /* MTRAsyncCallbackWorkQueue_Internal.h */,
				7596A84728762783004DAE0E /* MTRAsyncCallbackWorkQueue.mm */,
				3CF134AA289D8DF70017A19E /* MTRAttestationInfo.h */,
				3CF134AC289D8E570017A19E /* MTRAttestationInfo.mm */,
				27A53C1527FBC6920053F131 /* MTRAttestationTrustStoreBridge.h */,
				27A53C1627FBC6920053F131 /* MTRAttestationTrustStoreBridge.mm */,
				513DDB852761F69300DAA01A /* MTRAttributeTLVValueDecoder_Internal.h */,
				51E4D120291D0EB400C8C535 /* MTRBaseClusterUtils.h */,
				2C222ADE255C811800E446B9 /* MTRBaseDevice_Internal.h */,
				2C222ACE255C620600E446B9 /* MTRBaseDevice.h */,
				2C222ACF255C620600E446B9 /* MTRBaseDevice.mm */,
				511913FA28C100EF009235E9 /* MTRBaseSubscriptionCallback.h */,
				511913F928C100EF009235E9 /* MTRBaseSubscriptionCallback.mm */,
				3D84370F294977000070D20A /* MTRCallbackBridgeBase.h */,
				3D843754294AD25A0070D20A /* MTRCertificateInfo.h */,
				3D843755294AD25A0070D20A /* MTRCertificateInfo.mm */,
				517BF3EE282B62B800A8B7DB /* MTRCertificates.h */,
				517BF3EF282B62B800A8B7DB /* MTRCertificates.mm */,
				1ED276E326C5832500547A89 /* MTRCluster.h */,
				7596A84E2877E6A9004DAE0E /* MTRCluster_Internal.h */,
				1ED276E126C5812A00547A89 /* MTRCluster.mm */,
				5ACDDD7927CD129700EFD68A /* MTRClusterStateCacheContainer.h */,
				5ACDDD7B27CD14AF00EFD68A /* MTRClusterStateCacheContainer_Internal.h */,
				5ACDDD7C27CD16D200EFD68A /* MTRClusterStateCacheContainer.mm */,
				5A60370727EA1FF60020DB79 /* MTRClusterStateCacheContainer+XPC.h */,
				99D466E02798936D0089A18F /* MTRCommissioningParameters.h */,
				99AECC7F2798A57E00B6355B /* MTRCommissioningParameters.mm */,
				51E030FE27EA20D20083DC9C /* MTRControllerAccessControl.h */,
				51E030FF27EA20D20083DC9C /* MTRControllerAccessControl.mm */,
				3DFCB32B29678C9500332B35 /* MTRConversion.h */,
				3CF134A6289D8AD90017A19E /* MTRCSRInfo.h */,
				3CF134A8289D8D800017A19E /* MTRCSRInfo.mm */,
				3DECCB732934C21B00585AEC /* MTRDefines.h */,
				3DFCB32A2966827F00332B35 /* MTRDefines_Internal.h */,
				7596A84A287636C1004DAE0E /* MTRDevice_Internal.h */,
				7596A84228762729004DAE0E /* MTRDevice.h */,
				7596A84328762729004DAE0E /* MTRDevice.mm */,
				88EBF8CB27FABDD500686BC1 /* MTRDeviceAttestationDelegate.h */,
				7534F12728BFF20300390851 /* MTRDeviceAttestationDelegate_Internal.h */,
				7534F12628BFF20300390851 /* MTRDeviceAttestationDelegate.mm */,
				88EBF8CD27FABDD500686BC1 /* MTRDeviceAttestationDelegateBridge.h */,
				88EBF8CC27FABDD500686BC1 /* MTRDeviceAttestationDelegateBridge.mm */,
				2C5EEEF4268A85C400CAE3D3 /* MTRDeviceConnectionBridge.h */,
				2C5EEEF5268A85C400CAE3D3 /* MTRDeviceConnectionBridge.mm */,
				991DC0822475F45400C13860 /* MTRDeviceController.h */,
				5136660F28067D540025EDAE /* MTRDeviceController_Internal.h */,
				991DC0872475F47D00C13860 /* MTRDeviceController.mm */,
				5A7947E227C0101200434CF2 /* MTRDeviceController+XPC.h */,
				5A7947E327C0129500434CF2 /* MTRDeviceController+XPC.mm */,
				2CB7163E252F731E0026E2BB /* MTRDeviceControllerDelegate.h */,
				2CB71638252E8A7B0026E2BB /* MTRDeviceControllerDelegateBridge.h */,
				2CB71639252E8A7B0026E2BB /* MTRDeviceControllerDelegateBridge.mm */,
				5136661228067D550025EDAE /* MTRDeviceControllerFactory.h */,
				5136661128067D540025EDAE /* MTRDeviceControllerFactory_Internal.h */,
				5136661028067D540025EDAE /* MTRDeviceControllerFactory.mm */,
				5A6FEC8D27B5624E00F25F42 /* MTRDeviceControllerOverXPC.h */,
				5A830D6B27CFCF590053B85D /* MTRDeviceControllerOverXPC_Internal.h */,
				5A6FEC8F27B563D900F25F42 /* MTRDeviceControllerOverXPC.mm */,
				51E51FBC282AD37A00FC978D /* MTRDeviceControllerStartupParams.h */,
				51E51FBD282AD37A00FC978D /* MTRDeviceControllerStartupParams_Internal.h */,
				51E51FBE282AD37A00FC978D /* MTRDeviceControllerStartupParams.mm */,
				5A6FEC9427B5976200F25F42 /* MTRDeviceControllerXPCConnection.h */,
				5A6FEC9527B5983000F25F42 /* MTRDeviceControllerXPCConnection.mm */,
				5A6FEC8B27B5609C00F25F42 /* MTRDeviceOverXPC.h */,
				5A6FEC9727B5C6AF00F25F42 /* MTRDeviceOverXPC.mm */,
				5129BCFC26A9EE3300122DDF /* MTRError.h */,
				B2E0D7AB245B0B5C003C5B48 /* MTRError_Internal.h */,
				B2E0D7AA245B0B5C003C5B48 /* MTRError.mm */,
				754F3DF327FBB94B00E60580 /* MTREventTLVValueDecoder_Internal.h */,
				515C1C6E284F9FFB00A48F0C /* MTRFramework.h */,
				515C1C6D284F9FFB00A48F0C /* MTRFramework.mm */,
				51431AF827D2973E008A7943 /* MTRIMDispatch.mm */,
				998F286C26D55E10001846C6 /* MTRKeypair.h */,
				3DECCB6F2934AC1C00585AEC /* MTRLogging.h */,
				991DC08A247704DC00C13860 /* MTRLogging_Internal.h */,
				3DECCB712934AFE200585AEC /* MTRLogging.mm */,
				B2E0D7A9245B0B5C003C5B48 /* MTRManualSetupPayloadParser.h */,
				B2E0D7AD245B0B5C003C5B48 /* MTRManualSetupPayloadParser.mm */,
				B289D41F2639C0D300D4E314 /* MTROnboardingPayloadParser.h */,
				B289D4202639C0D300D4E314 /* MTROnboardingPayloadParser.mm */,
				3CF134AE289D90FF0017A19E /* MTROperationalCertificateIssuer.h */,
				51029DF5293AA6100087AFB0 /* MTROperationalCertificateIssuer.mm */,
				2C1B02792641DB4E00780EF1 /* MTROperationalCredentialsDelegate.h */,
				2C1B02782641DB4E00780EF1 /* MTROperationalCredentialsDelegate.mm */,
				1EDCE543289049A100E41EC9 /* MTROTAHeader.h */,
				1EDCE544289049A100E41EC9 /* MTROTAHeader.mm */,
				AF1CB86D2874B03B00865A96 /* MTROTAProviderDelegate.h */,
				AF1CB86F2874B04C00865A96 /* MTROTAProviderDelegateBridge.h */,
				AF5F90FE2878D351005503FA /* MTROTAProviderDelegateBridge.mm */,
				998F286E26D55EC5001846C6 /* MTRP256KeypairBridge.h */,
				998F287026D56940001846C6 /* MTRP256KeypairBridge.mm */,
				2C8C8FBD253E0C2100797F05 /* MTRPersistentStorageDelegateBridge.h */,
				2C8C8FBF253E0C2100797F05 /* MTRPersistentStorageDelegateBridge.mm */,
				B2E0D7AC245B0B5C003C5B48 /* MTRQRCodeSetupPayloadParser.h */,
				B2E0D7AE245B0B5C003C5B48 /* MTRQRCodeSetupPayloadParser.mm */,
				B2E0D7AF245B0B5C003C5B48 /* MTRSetupPayload.h */,
				9956064326420367000C28DE /* MTRSetupPayload_Internal.h */,
				B2E0D7B0245B0B5C003C5B48 /* MTRSetupPayload.mm */,
				2C8C8FBE253E0C2100797F05 /* MTRStorage.h */,
				997DED172695344800975E97 /* MTRThreadOperationalDataset.h */,
				997DED152695343400975E97 /* MTRThreadOperationalDataset.mm */,
				3D843710294977000070D20A /* NSDataSpanConversion.h */,
				3D84370E294977000070D20A /* NSStringSpanConversion.h */,
				3D69867E29382E58007314E7 /* Resources */,
			);
			path = CHIP;
			sourceTree = "<group>";
		};
		B202529A2459E34F00F97062 /* CHIPTests */ = {
			isa = PBXGroup;
			children = (
				1E748B3928941A45008A1BE8 /* MTRTestOTAProvider.h */,
				1E748B3828941A44008A1BE8 /* MTRTestOTAProvider.m */,
				D437613E285BDC0D0051FEA2 /* MTRErrorTestUtils.h */,
				D437613F285BDC0D0051FEA2 /* MTRTestKeys.h */,
				D4376140285BDC0D0051FEA2 /* MTRTestStorage.h */,
				51E24E72274E0DAC007CCF6E /* MTRErrorTestUtils.mm */,
				51C8E3F72825CDB600D47D00 /* MTRTestKeys.m */,
				51D10D2D2808E2CA00E8CA3D /* MTRTestStorage.m */,
				3DFCB3282966684500332B35 /* MTRCertificateInfoTests.m */,
				99C65E0F267282F1003402F6 /* MTRControllerTests.m */,
				5AE6D4E327A99041001F2493 /* MTRDeviceTests.m */,
				5A6FEC9C27B5E48800F25F42 /* MTRXPCProtocolTests.m */,
				5A7947DD27BEC3F500434CF2 /* MTRXPCListenerSampleTests.m */,
				B2F53AF1245B0DCF0010745E /* MTRSetupPayloadParserTests.m */,
				997DED1926955D0200975E97 /* MTRThreadOperationalDatasetTests.mm */,
				517BF3F2282B62CB00A8B7DB /* MTRCertificateTests.m */,
				7596A8502878709F004DAE0E /* MTRAsyncCallbackQueueTests.m */,
				51669AEF2913204400F4AA36 /* MTRBackwardsCompatTests.m */,
				510CECA6297F72470064E0B3 /* MTROperationalCertificateIssuerTests.m */,
				B202529D2459E34F00F97062 /* Info.plist */,
			);
			path = CHIPTests;
			sourceTree = "<group>";
		};
		BA09EB3E2474762900605257 /* Frameworks */ = {
			isa = PBXGroup;
			children = (
				3DECCB6D29347D2C00585AEC /* Security.framework */,
				BA09EB3F2474762900605257 /* libCHIP.a */,
			);
			name = Frameworks;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXHeadersBuildPhase section */
		B20252882459E34F00F97062 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				517BF3F0282B62B800A8B7DB /* MTRCertificates.h in Headers */,
				51E51FBF282AD37A00FC978D /* MTRDeviceControllerStartupParams.h in Headers */,
				5136661628067D550025EDAE /* MTRDeviceControllerFactory.h in Headers */,
				7596A84B287636C1004DAE0E /* MTRDevice_Internal.h in Headers */,
				5A6FEC9927B5C88900F25F42 /* MTRDeviceOverXPC.h in Headers */,
				51B22C222740CB1D008D5055 /* MTRCommandPayloadsObjc.h in Headers */,
				51B22C1E2740CB0A008D5055 /* MTRStructsObjc.h in Headers */,
				2CB7163B252E8A7B0026E2BB /* MTRDeviceControllerDelegateBridge.h in Headers */,
				5ACDDD7A27CD129700EFD68A /* MTRClusterStateCacheContainer.h in Headers */,
				5A6FEC9227B5669C00F25F42 /* MTRDeviceControllerOverXPC.h in Headers */,
				2C1B027B2641DB4E00780EF1 /* MTROperationalCredentialsDelegate.h in Headers */,
				3D843717294979230070D20A /* MTRClusters_Internal.h in Headers */,
				7596A85728788557004DAE0E /* MTRClusters.h in Headers */,
				99D466E12798936D0089A18F /* MTRCommissioningParameters.h in Headers */,
				5136661528067D550025EDAE /* MTRDeviceControllerFactory_Internal.h in Headers */,
				515C1C70284F9FFB00A48F0C /* MTRFramework.h in Headers */,
				7534F12928BFF20300390851 /* MTRDeviceAttestationDelegate_Internal.h in Headers */,
				D4772A46285AE98400383630 /* MTRClusterConstants.h in Headers */,
				B289D4212639C0D300D4E314 /* MTROnboardingPayloadParser.h in Headers */,
				513DDB862761F69300DAA01A /* MTRAttributeTLVValueDecoder_Internal.h in Headers */,
				2CB7163F252F731E0026E2BB /* MTRDeviceControllerDelegate.h in Headers */,
				88EBF8CE27FABDD500686BC1 /* MTRDeviceAttestationDelegate.h in Headers */,
				2C222AD0255C620600E446B9 /* MTRBaseDevice.h in Headers */,
				7596A84F2877E6A9004DAE0E /* MTRCluster_Internal.h in Headers */,
				3D843716294979230070D20A /* MTRCallbackBridge.h in Headers */,
				991DC0842475F45400C13860 /* MTRDeviceController.h in Headers */,
				AF1CB86E2874B03B00865A96 /* MTROTAProviderDelegate.h in Headers */,
				754F3DF427FBB94B00E60580 /* MTREventTLVValueDecoder_Internal.h in Headers */,
				3CF134AF289D90FF0017A19E /* MTROperationalCertificateIssuer.h in Headers */,
				3CF134AB289D8DF70017A19E /* MTRAttestationInfo.h in Headers */,
				B2E0D7B2245B0B5C003C5B48 /* MTRManualSetupPayloadParser.h in Headers */,
				3CF134A7289D8ADA0017A19E /* MTRCSRInfo.h in Headers */,
				B2E0D7B1245B0B5C003C5B48 /* Matter.h in Headers */,
				7596A84428762729004DAE0E /* MTRDevice.h in Headers */,
				B2E0D7B8245B0B5C003C5B48 /* MTRSetupPayload.h in Headers */,
				7596A84D287782EF004DAE0E /* MTRAsyncCallbackWorkQueue_Internal.h in Headers */,
				3D843756294AD25A0070D20A /* MTRCertificateInfo.h in Headers */,
				7596A83E28751220004DAE0E /* MTRBaseClusters_Internal.h in Headers */,
				997DED182695344800975E97 /* MTRThreadOperationalDataset.h in Headers */,
				9956064426420367000C28DE /* MTRSetupPayload_Internal.h in Headers */,
				27A53C1727FBC6920053F131 /* MTRAttestationTrustStoreBridge.h in Headers */,
				5A830D6C27CFCF590053B85D /* MTRDeviceControllerOverXPC_Internal.h in Headers */,
				88EBF8D027FABDD500686BC1 /* MTRDeviceAttestationDelegateBridge.h in Headers */,
				3DFCB32C29678C9500332B35 /* MTRConversion.h in Headers */,
				5A60370827EA1FF60020DB79 /* MTRClusterStateCacheContainer+XPC.h in Headers */,
				5ACDDD7E27CD3F3A00EFD68A /* MTRClusterStateCacheContainer_Internal.h in Headers */,
				5136661328067D550025EDAE /* MTRDeviceController_Internal.h in Headers */,
				998F286D26D55E10001846C6 /* MTRKeypair.h in Headers */,
				1ED276E426C5832500547A89 /* MTRCluster.h in Headers */,
				3D843711294977000070D20A /* NSStringSpanConversion.h in Headers */,
				5A6FEC9A27B5C89300F25F42 /* MTRDeviceControllerXPCConnection.h in Headers */,
				5129BCFD26A9EE3300122DDF /* MTRError.h in Headers */,
				2C8C8FC1253E0C2100797F05 /* MTRStorage.h in Headers */,
				AF1CB8702874B04C00865A96 /* MTROTAProviderDelegateBridge.h in Headers */,
				B2E0D7B5245B0B5C003C5B48 /* MTRQRCodeSetupPayloadParser.h in Headers */,
				1EC4CE6425CC276600D7304F /* MTRBaseClusters.h in Headers */,
				3D843712294977000070D20A /* MTRCallbackBridgeBase.h in Headers */,
				3DECCB742934C21B00585AEC /* MTRDefines.h in Headers */,
				2C5EEEF6268A85C400CAE3D3 /* MTRDeviceConnectionBridge.h in Headers */,
				2C8C8FC0253E0C2100797F05 /* MTRPersistentStorageDelegateBridge.h in Headers */,
				51E4D121291D0EB400C8C535 /* MTRBaseClusterUtils.h in Headers */,
				51E51FC0282AD37A00FC978D /* MTRDeviceControllerStartupParams_Internal.h in Headers */,
				3DECCB702934AECD00585AEC /* MTRLogging.h in Headers */,
				998F286F26D55EC5001846C6 /* MTRP256KeypairBridge.h in Headers */,
				2C222ADF255C811800E446B9 /* MTRBaseDevice_Internal.h in Headers */,
				511913FC28C100EF009235E9 /* MTRBaseSubscriptionCallback.h in Headers */,
				51E0310027EA20D20083DC9C /* MTRControllerAccessControl.h in Headers */,
				3D843713294977000070D20A /* NSDataSpanConversion.h in Headers */,
				991DC08B247704DC00C13860 /* MTRLogging_Internal.h in Headers */,
				7596A84828762783004DAE0E /* MTRAsyncCallbackWorkQueue.h in Headers */,
				5A7947E527C0129F00434CF2 /* MTRDeviceController+XPC.h in Headers */,
				B2E0D7B4245B0B5C003C5B48 /* MTRError_Internal.h in Headers */,
				1EDCE545289049A100E41EC9 /* MTROTAHeader.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXHeadersBuildPhase section */

/* Begin PBXNativeTarget section */
		B202528C2459E34F00F97062 /* Matter */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B20252A12459E34F00F97062 /* Build configuration list for PBXNativeTarget "Matter" */;
			buildPhases = (
				0C40A67D246C9AC700885C81 /* Run GN Build (chip_xcode_build_connector) */,
				B20252882459E34F00F97062 /* Headers */,
				B20252892459E34F00F97062 /* Sources */,
				B202528A2459E34F00F97062 /* Frameworks */,
				B202528B2459E34F00F97062 /* Resources */,
				3D69868429383083007314E7 /* Copy Logging Preferences */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = Matter;
			productName = CHP;
			productReference = B202528D2459E34F00F97062 /* Matter.framework */;
			productType = "com.apple.product-type.framework";
		};
		B20252952459E34F00F97062 /* MatterTests */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B20252A42459E34F00F97062 /* Build configuration list for PBXNativeTarget "MatterTests" */;
			buildPhases = (
				B20252922459E34F00F97062 /* Sources */,
				B20252932459E34F00F97062 /* Frameworks */,
				B20252942459E34F00F97062 /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
				B20252992459E34F00F97062 /* PBXTargetDependency */,
			);
			name = MatterTests;
			productName = CHPTests;
			productReference = B20252962459E34F00F97062 /* MatterTests.xctest */;
			productType = "com.apple.product-type.bundle.unit-test";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		B20252842459E34F00F97062 /* Project object */ = {
			isa = PBXProject;
			attributes = {
				BuildIndependentTargetsInParallel = YES;
				LastUpgradeCheck = 1140;
				ORGANIZATIONNAME = CHIP;
				TargetAttributes = {
					B202528C2459E34F00F97062 = {
						CreatedOnToolsVersion = 11.4.1;
					};
					B20252952459E34F00F97062 = {
						CreatedOnToolsVersion = 11.4.1;
					};
				};
			};
			buildConfigurationList = B20252872459E34F00F97062 /* Build configuration list for PBXProject "Matter" */;
			compatibilityVersion = "Xcode 9.3";
			developmentRegion = en;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
				Base,
			);
			mainGroup = B20252832459E34F00F97062;
			productRefGroup = B202528E2459E34F00F97062 /* Products */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				B202528C2459E34F00F97062 /* Matter */,
				B20252952459E34F00F97062 /* MatterTests */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		B202528B2459E34F00F97062 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B20252942459E34F00F97062 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXShellScriptBuildPhase section */
		0C40A67D246C9AC700885C81 /* Run GN Build (chip_xcode_build_connector) */ = {
			isa = PBXShellScriptBuildPhase;
			alwaysOutOfDate = 1;
			buildActionMask = 2147483647;
			files = (
			);
			inputFileListPaths = (
			);
			inputPaths = (
			);
			name = "Run GN Build (chip_xcode_build_connector)";
			outputFileListPaths = (
			);
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = "./chip_xcode_build_connector.sh\n";
		};
/* End PBXShellScriptBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		B20252892459E34F00F97062 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				2C8C8FC2253E0C2100797F05 /* MTRPersistentStorageDelegateBridge.mm in Sources */,
				99AECC802798A57F00B6355B /* MTRCommissioningParameters.mm in Sources */,
				2CB7163C252E8A7C0026E2BB /* MTRDeviceControllerDelegateBridge.mm in Sources */,
				997DED162695343400975E97 /* MTRThreadOperationalDataset.mm in Sources */,
				515C1C6F284F9FFB00A48F0C /* MTRFramework.mm in Sources */,
				51029DF6293AA6100087AFB0 /* MTROperationalCertificateIssuer.mm in Sources */,
				27A53C1827FBC6920053F131 /* MTRAttestationTrustStoreBridge.mm in Sources */,
				998F287126D56940001846C6 /* MTRP256KeypairBridge.mm in Sources */,
				5136661428067D550025EDAE /* MTRDeviceControllerFactory.mm in Sources */,
				51B22C2A2740CB47008D5055 /* MTRCommandPayloadsObjc.mm in Sources */,
				AF5F90FF2878D351005503FA /* MTROTAProviderDelegateBridge.mm in Sources */,
				3D84374B29498BAE0070D20A /* privilege-storage.cpp in Sources */,
				7534F12828BFF20300390851 /* MTRDeviceAttestationDelegate.mm in Sources */,
				2C5EEEF7268A85C400CAE3D3 /* MTRDeviceConnectionBridge.mm in Sources */,
				51B22C262740CB32008D5055 /* MTRStructsObjc.mm in Sources */,
				2C222AD1255C620600E446B9 /* MTRBaseDevice.mm in Sources */,
				1EC3238D271999E2002A8BF0 /* cluster-objects.cpp in Sources */,
				3CF134A9289D8D800017A19E /* MTRCSRInfo.mm in Sources */,
				991DC0892475F47D00C13860 /* MTRDeviceController.mm in Sources */,
				B2E0D7B7245B0B5C003C5B48 /* MTRQRCodeSetupPayloadParser.mm in Sources */,
				514304202914CED9004DC7FE /* generic-callback-stubs.cpp in Sources */,
				1EDCE546289049A100E41EC9 /* MTROTAHeader.mm in Sources */,
				1EC4CE5D25CC26E900D7304F /* MTRBaseClusters.mm in Sources */,
				51E0310127EA20D20083DC9C /* MTRControllerAccessControl.mm in Sources */,
				1ED276E226C5812A00547A89 /* MTRCluster.mm in Sources */,
				B2E0D7B3245B0B5C003C5B48 /* MTRError.mm in Sources */,
				51E51FC1282AD37A00FC978D /* MTRDeviceControllerStartupParams.mm in Sources */,
				1ED276E026C57CF000547A89 /* MTRCallbackBridge.mm in Sources */,
				517BF3F1282B62B800A8B7DB /* MTRCertificates.mm in Sources */,
				5A6FEC9627B5983000F25F42 /* MTRDeviceControllerXPCConnection.mm in Sources */,
				511913FB28C100EF009235E9 /* MTRBaseSubscriptionCallback.mm in Sources */,
				5ACDDD7D27CD16D200EFD68A /* MTRClusterStateCacheContainer.mm in Sources */,
				513DDB8A2761F6F900DAA01A /* MTRAttributeTLVValueDecoder.mm in Sources */,
				2FD775552695557E00FF4B12 /* error-mapping.cpp in Sources */,
				3D843757294AD25A0070D20A /* MTRCertificateInfo.mm in Sources */,
				5A7947E427C0129600434CF2 /* MTRDeviceController+XPC.mm in Sources */,
				5A6FEC9027B563D900F25F42 /* MTRDeviceControllerOverXPC.mm in Sources */,
				B289D4222639C0D300D4E314 /* MTROnboardingPayloadParser.mm in Sources */,
				3CF134AD289D8E570017A19E /* MTRAttestationInfo.mm in Sources */,
				2C1B027A2641DB4E00780EF1 /* MTROperationalCredentialsDelegate.mm in Sources */,
				7560FD1C27FBBD3F005E85B3 /* MTREventTLVValueDecoder.mm in Sources */,
				7596A84928762783004DAE0E /* MTRAsyncCallbackWorkQueue.mm in Sources */,
				B2E0D7B9245B0B5C003C5B48 /* MTRSetupPayload.mm in Sources */,
				B2E0D7B6245B0B5C003C5B48 /* MTRManualSetupPayloadParser.mm in Sources */,
				7596A85528788557004DAE0E /* MTRClusters.mm in Sources */,
				88EBF8CF27FABDD500686BC1 /* MTRDeviceAttestationDelegateBridge.mm in Sources */,
				5A6FEC9827B5C6AF00F25F42 /* MTRDeviceOverXPC.mm in Sources */,
				51431AF927D2973E008A7943 /* MTRIMDispatch.mm in Sources */,
				51431AFB27D29CA4008A7943 /* ota-provider.cpp in Sources */,
				3DECCB722934AFE200585AEC /* MTRLogging.mm in Sources */,
				7596A84528762729004DAE0E /* MTRDevice.mm in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B20252922459E34F00F97062 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				51669AF02913204400F4AA36 /* MTRBackwardsCompatTests.m in Sources */,
				51D10D2E2808E2CA00E8CA3D /* MTRTestStorage.m in Sources */,
				7596A8512878709F004DAE0E /* MTRAsyncCallbackQueueTests.m in Sources */,
				997DED1A26955D0200975E97 /* MTRThreadOperationalDatasetTests.mm in Sources */,
				51C8E3F82825CDB600D47D00 /* MTRTestKeys.m in Sources */,
				99C65E10267282F1003402F6 /* MTRControllerTests.m in Sources */,
				1E5801C328941C050033A199 /* MTRTestOTAProvider.m in Sources */,
				5A6FEC9D27B5E48900F25F42 /* MTRXPCProtocolTests.m in Sources */,
				5AE6D4E427A99041001F2493 /* MTRDeviceTests.m in Sources */,
				510CECA8297F72970064E0B3 /* MTROperationalCertificateIssuerTests.m in Sources */,
				5A7947DE27BEC3F500434CF2 /* MTRXPCListenerSampleTests.m in Sources */,
				B2F53AF2245B0DCF0010745E /* MTRSetupPayloadParserTests.m in Sources */,
				3DFCB3292966684500332B35 /* MTRCertificateInfoTests.m in Sources */,
				517BF3F3282B62CB00A8B7DB /* MTRCertificateTests.m in Sources */,
				51E24E73274E0DAC007CCF6E /* MTRErrorTestUtils.mm in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXTargetDependency section */
		B20252992459E34F00F97062 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B202528C2459E34F00F97062 /* Matter */;
			targetProxy = B20252982459E34F00F97062 /* PBXContainerItemProxy */;
		};
/* End PBXTargetDependency section */

/* Begin XCBuildConfiguration section */
		BA09EB732474881D00605257 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES_ERROR;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				COPY_PHASE_STRIP = NO;
				CURRENT_PROJECT_VERSION = 1;
				DEBUG_INFORMATION_FORMAT = dwarf;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"CHIP_ADDRESS_RESOLVE_IMPL_INCLUDE_HEADER=<lib/address_resolve/AddressResolve_DefaultImpl.h>",
					"$(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;
				MACOSX_DEPLOYMENT_TARGET = 11.0;
				MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
				MTL_FAST_MATH = YES;
				ONLY_ACTIVE_ARCH = YES;
				OTHER_CFLAGS = (
					"-Wformat",
					"-Wformat-nonliteral",
					"-Wformat-security",
					"-Wconversion",
				);
				OTHER_LDFLAGS = "-Wl,-unexported_symbol,\"__Z*\"";
				SDKROOT = iphoneos;
				SUPPORTED_PLATFORMS = "macosx iphonesimulator iphoneos appletvos appletvsimulator watchos watchsimulator";
				SUPPORTS_TEXT_BASED_API = YES;
				TARGETED_DEVICE_FAMILY = "1,2,3,4";
				VERSIONING_SYSTEM = "apple-generic";
				VERSION_INFO_PREFIX = "";
			};
			name = Debug;
		};
		BA09EB742474881D00605257 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CHIP_ROOT = "$(PROJECT_DIR)/../../..";
				CODE_SIGN_STYLE = Automatic;
				DEFINES_MODULE = YES;
				DEVELOPMENT_TEAM = "";
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				DYLIB_INSTALL_NAME_BASE = "@rpath";
				GCC_PREPROCESSOR_DEFINITIONS = (
					CHIP_HAVE_CONFIG_H,
					"CHIP_ADDRESS_RESOLVE_IMPL_INCLUDE_HEADER=<lib/address_resolve/AddressResolve_DefaultImpl.h>",
					"$(inherited)",
					"MTR_NEWLY_AVAILABLE=",
					"MTR_NEWLY_DEPRECATED(message)=",
				);
				HEADER_SEARCH_PATHS = (
					"$(CHIP_ROOT)/src",
					"$(CHIP_ROOT)/src/include",
					"$(CHIP_ROOT)/src/lib",
					"$(CHIP_ROOT)/src/app",
					"$(CHIP_ROOT)/config/ios",
					"$(CHIP_ROOT)/third_party/nlassert/repo/include",
					"$(CHIP_ROOT)/src/darwin/Framework/CHIP/",
					"$(CHIP_ROOT)/src/app/util",
					"$(CHIP_ROOT)/third_party/nlio/repo/include",
					"$(TEMP_DIR)/out/gen/include",
					/* Compile time codegen would need this: 
					   "$(TEMP_DIR)/out/gen/src/controller/data_model/zapgen/", 
					 */
					"$(CHIP_ROOT)/zzz_generated/",
					"$(CHIP_ROOT)/zzz_generated/app-common",
					"$(CHIP_ROOT)/zzz_generated/controller-clusters",
					/* darwin-specific bypassing compile time codegen for header inclusion */
					"$(CHIP_ROOT)/zzz_generated/darwin/controller-clusters",
				);
				INFOPLIST_FILE = CHIP/Info.plist;
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
				IPHONEOS_DEPLOYMENT_TARGET = 13.4;
				LIBRARY_SEARCH_PATHS = "$(TEMP_DIR)/out/lib";
				OTHER_LDFLAGS = "";
				"OTHER_LDFLAGS[sdk=*]" = (
					"-framework",
					CoreData,
					"-framework",
					Foundation,
					"-framework",
					CoreBluetooth,
					"-lnetwork",
					"-Wl,-unexported_symbol,\"__Z*\"",
				);
				"OTHER_LDFLAGS[sdk=macosx*]" = (
					"-framework",
					IOKit,
					"-framework",
					CoreWLAN,
					"-framework",
					SystemConfiguration,
					"-lnetwork",
					"-framework",
					CoreBluetooth,
					"-framework",
					CoreData,
					"-Wl,-unexported_symbol,\"__Z*\"",
				);
				PRODUCT_BUNDLE_IDENTIFIER = com.csa.matter;
				PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
				SDKROOT = iphoneos;
				TARGETED_DEVICE_FAMILY = "1,2,3,4";
			};
			name = Debug;
		};
		BA09EB752474881D00605257 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CODE_SIGN_STYLE = Automatic;
				"HEADER_SEARCH_PATHS[arch=*]" = "$(PROJECT_DIR)/../../../src";
				INFOPLIST_FILE = CHIPTests/Info.plist;
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
					"@loader_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = com.chip.CHIPTests;
				PRODUCT_NAME = "$(TARGET_NAME)";
				TARGETED_DEVICE_FAMILY = "1,2,3,4";
			};
			name = Debug;
		};
		BA09EB772474882200605257 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES_ERROR;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				COPY_PHASE_STRIP = NO;
				CURRENT_PROJECT_VERSION = 1;
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_PREPROCESSOR_DEFINITIONS = "";
				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;
				MACOSX_DEPLOYMENT_TARGET = 11.0;
				MTL_ENABLE_DEBUG_INFO = NO;
				MTL_FAST_MATH = YES;
				ONLY_ACTIVE_ARCH = YES;
				OTHER_CFLAGS = (
					"-Wformat",
					"-Wformat-nonliteral",
					"-Wformat-security",
					"-Wconversion",
				);
				OTHER_LDFLAGS = "-Wl,-unexported_symbol,\"__Z*\"";
				SDKROOT = iphoneos;
				SUPPORTED_PLATFORMS = "macosx iphonesimulator iphoneos appletvos appletvsimulator watchos watchsimulator";
				SUPPORTS_TEXT_BASED_API = YES;
				TARGETED_DEVICE_FAMILY = "1,2,3,4";
				VALIDATE_PRODUCT = YES;
				VERSIONING_SYSTEM = "apple-generic";
				VERSION_INFO_PREFIX = "";
			};
			name = Release;
		};
		BA09EB782474882200605257 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CHIP_ROOT = "$(PROJECT_DIR)/../../..";
				CODE_SIGN_STYLE = Automatic;
				DEFINES_MODULE = YES;
				DEVELOPMENT_TEAM = "";
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				DYLIB_INSTALL_NAME_BASE = "@rpath";
				GCC_PREPROCESSOR_DEFINITIONS = (
					CHIP_HAVE_CONFIG_H,
					"CHIP_ADDRESS_RESOLVE_IMPL_INCLUDE_HEADER=<lib/address_resolve/AddressResolve_DefaultImpl.h>",
					"$(inherited)",
					"MTR_NEWLY_AVAILABLE=",
					"MTR_NEWLY_DEPRECATED(message)=",
				);
				HEADER_SEARCH_PATHS = (
					"$(CHIP_ROOT)/src",
					"$(CHIP_ROOT)/src/include",
					"$(CHIP_ROOT)/src/lib",
					"$(CHIP_ROOT)/src/app",
					"$(CHIP_ROOT)/config/ios",
					"$(CHIP_ROOT)/third_party/nlassert/repo/include",
					"$(CHIP_ROOT)/src/darwin/Framework/CHIP/",
					"$(CHIP_ROOT)/src/app/util",
					"$(CHIP_ROOT)/third_party/nlio/repo/include",
					"$(TEMP_DIR)/out/gen/include",
					/* Compile time codegen would need this: 
					   "$(TEMP_DIR)/out/gen/src/controller/data_model/zapgen/", 
					 */
					"$(CHIP_ROOT)/zzz_generated/",
					"$(CHIP_ROOT)/zzz_generated/app-common",
					"$(CHIP_ROOT)/zzz_generated/controller-clusters",
					/* darwin-specific bypassing compile time codegen for header inclusion */
					"$(CHIP_ROOT)/zzz_generated/darwin/controller-clusters",
				);
				INFOPLIST_FILE = CHIP/Info.plist;
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
				IPHONEOS_DEPLOYMENT_TARGET = 13.4;
				LIBRARY_SEARCH_PATHS = "$(TEMP_DIR)/out/lib";
				OTHER_LDFLAGS = "";
				"OTHER_LDFLAGS[sdk=*]" = (
					"-framework",
					CoreData,
					"-framework",
					Foundation,
					"-framework",
					CoreBluetooth,
					"-lnetwork",
					"-Wl,-unexported_symbol,\"__Z*\"",
				);
				"OTHER_LDFLAGS[sdk=macosx*]" = (
					"-framework",
					IOKit,
					"-framework",
					CoreWLAN,
					"-framework",
					SystemConfiguration,
					"-lnetwork",
					"-framework",
					CoreBluetooth,
					"-framework",
					CoreData,
					"-Wl,-unexported_symbol,\"__Z*\"",
				);
				PRODUCT_BUNDLE_IDENTIFIER = com.csa.matter;
				PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
				SDKROOT = iphoneos;
				STRIP_STYLE = "non-global";
				TARGETED_DEVICE_FAMILY = "1,2,3,4";
			};
			name = Release;
		};
		BA09EB792474882200605257 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = "";
				"HEADER_SEARCH_PATHS[arch=*]" = "$(PROJECT_DIR)/../../../src";
				INFOPLIST_FILE = CHIPTests/Info.plist;
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
					"@loader_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = com.chip.CHIPTests;
				PRODUCT_NAME = "$(TARGET_NAME)";
				TARGETED_DEVICE_FAMILY = "1,2,3,4";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		B20252872459E34F00F97062 /* Build configuration list for PBXProject "Matter" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				BA09EB732474881D00605257 /* Debug */,
				BA09EB772474882200605257 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B20252A12459E34F00F97062 /* Build configuration list for PBXNativeTarget "Matter" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				BA09EB742474881D00605257 /* Debug */,
				BA09EB782474882200605257 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B20252A42459E34F00F97062 /* Build configuration list for PBXNativeTarget "MatterTests" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				BA09EB752474881D00605257 /* Debug */,
				BA09EB792474882200605257 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = B20252842459E34F00F97062 /* Project object */;
}
