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

/* Begin PBXBuildFile section */
		081F00CA2918823200534A86 /* hpke.c in Sources */ = {isa = PBXBuildFile; fileRef = 081F00C92918823200534A86 /* hpke.c */; };
		08F0FDF62910F67A00EE657D /* hpke.c in Sources */ = {isa = PBXBuildFile; fileRef = 08F0FDF52910F67A00EE657D /* hpke.c */; };
		105900431DC8D57000FB4085 /* picotls.c in Sources */ = {isa = PBXBuildFile; fileRef = 106530E91D9B7C13005B2C60 /* picotls.c */; };
		105900441DC8D57000FB4085 /* picotest.c in Sources */ = {isa = PBXBuildFile; fileRef = 106530E31D9B4021005B2C60 /* picotest.c */; };
		1059004C1DC8D5B700FB4085 /* openssl.c in Sources */ = {isa = PBXBuildFile; fileRef = 106530C51D9B1A98005B2C60 /* openssl.c */; };
		105900501DC8D64E00FB4085 /* minicrypto.h in Headers */ = {isa = PBXBuildFile; fileRef = 1059004F1DC8D64E00FB4085 /* minicrypto.h */; };
		105900611DC8DF8C00FB4085 /* sha256.c in Sources */ = {isa = PBXBuildFile; fileRef = 1059005F1DC8DE4400FB4085 /* sha256.c */; };
		105900641DC8DFA700FB4085 /* curve25519.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900391DC8D46A00FB4085 /* curve25519.c */; };
		105900691DC8DFDF00FB4085 /* blockwise.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900291DC8D39800FB4085 /* blockwise.c */; };
		1059006A1DC8DFE300FB4085 /* hmac.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900651DC8DFD300FB4085 /* hmac.c */; };
		1059006F1DC8E00B00FB4085 /* chash.c in Sources */ = {isa = PBXBuildFile; fileRef = 1059006B1DC8E00400FB4085 /* chash.c */; };
		105900761DC8E1A300FB4085 /* openssl.c in Sources */ = {isa = PBXBuildFile; fileRef = 106530C21D9B004B005B2C60 /* openssl.c */; };
		1059008F1DC8E1FF00FB4085 /* aes.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900251DC8D37500FB4085 /* aes.h */; };
		105900911DC8E1FF00FB4085 /* bitops.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900281DC8D39800FB4085 /* bitops.h */; };
		105900921DC8E1FF00FB4085 /* blockwise.h in Headers */ = {isa = PBXBuildFile; fileRef = 1059002A1DC8D39800FB4085 /* blockwise.h */; };
		105900941DC8E1FF00FB4085 /* chash.h in Headers */ = {isa = PBXBuildFile; fileRef = 1059006C1DC8E00400FB4085 /* chash.h */; };
		105900961DC8E1FF00FB4085 /* curve25519.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900361DC8D44E00FB4085 /* curve25519.h */; };
		105900991DC8E1FF00FB4085 /* cf_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900321DC8D41A00FB4085 /* cf_config.h */; };
		1059009A1DC8E1FF00FB4085 /* drbg.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900521DC8D79300FB4085 /* drbg.h */; };
		1059009C1DC8E1FF00FB4085 /* handy.h in Headers */ = {isa = PBXBuildFile; fileRef = 1059002B1DC8D39800FB4085 /* handy.h */; };
		1059009D1DC8E1FF00FB4085 /* hmac.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900661DC8DFD300FB4085 /* hmac.h */; };
		1059009F1DC8E1FF00FB4085 /* sha2.h in Headers */ = {isa = PBXBuildFile; fileRef = 1059005D1DC8DE3800FB4085 /* sha2.h */; };
		105900A11DC8E1FF00FB4085 /* tassert.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900301DC8D3DF00FB4085 /* tassert.h */; };
		105900A21DC8E20D00FB4085 /* openssl.h in Headers */ = {isa = PBXBuildFile; fileRef = 106530ED1D9CEFF7005B2C60 /* openssl.h */; };
		105900A41DC8E23B00FB4085 /* libpicotls-openssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1059008C1DC8E1A300FB4085 /* libpicotls-openssl.a */; };
		105900AE1DC941D700FB4085 /* gf128.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900AB1DC941D700FB4085 /* gf128.h */; };
		105900B21DC9438200FB4085 /* modes.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900B01DC9438200FB4085 /* modes.h */; };
		105900B31DC9439800FB4085 /* modes.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900AF1DC9438200FB4085 /* modes.c */; };
		105900B41DC943B500FB4085 /* gf128.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900AA1DC941D700FB4085 /* gf128.c */; };
		105900B51DC943B900FB4085 /* gcm.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900A91DC941D700FB4085 /* gcm.c */; };
		105900B61DC943D400FB4085 /* aes.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900241DC8D37500FB4085 /* aes.c */; };
		105900BE1DC96A3500FB4085 /* types.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900BA1DC96A3500FB4085 /* types.h */; };
		105900BF1DC96A3500FB4085 /* uECC_vli.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900BB1DC96A3500FB4085 /* uECC_vli.h */; };
		105900C11DC96A3500FB4085 /* uECC.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900BD1DC96A3500FB4085 /* uECC.h */; };
		105900C41DC96B2200FB4085 /* uECC.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900BC1DC96A3500FB4085 /* uECC.c */; };
		105900C71DCBECD800FB4085 /* aes.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900241DC8D37500FB4085 /* aes.c */; };
		105900C81DCBECDD00FB4085 /* blockwise.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900291DC8D39800FB4085 /* blockwise.c */; };
		105900C91DCBECE100FB4085 /* chash.c in Sources */ = {isa = PBXBuildFile; fileRef = 1059006B1DC8E00400FB4085 /* chash.c */; };
		105900CA1DCBECE500FB4085 /* curve25519.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900391DC8D46A00FB4085 /* curve25519.c */; };
		105900CB1DCBECEA00FB4085 /* drbg.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900511DC8D79300FB4085 /* drbg.c */; };
		105900CC1DCBECF100FB4085 /* hmac.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900651DC8DFD300FB4085 /* hmac.c */; };
		105900CD1DCBECF400FB4085 /* gcm.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900A91DC941D700FB4085 /* gcm.c */; };
		105900CE1DCBECF700FB4085 /* gf128.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900AA1DC941D700FB4085 /* gf128.c */; };
		105900CF1DCBECFB00FB4085 /* modes.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900AF1DC9438200FB4085 /* modes.c */; };
		105900D01DCBECFE00FB4085 /* sha256.c in Sources */ = {isa = PBXBuildFile; fileRef = 1059005F1DC8DE4400FB4085 /* sha256.c */; };
		105900D11DCBED0600FB4085 /* cifra.c in Sources */ = {isa = PBXBuildFile; fileRef = 1059003F1DC8D53200FB4085 /* cifra.c */; };
		105900D21DCBED0A00FB4085 /* uecc.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900C51DC9798800FB4085 /* uecc.c */; };
		105900D31DCBED1D00FB4085 /* uECC.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900BC1DC96A3500FB4085 /* uECC.c */; };
		106530E51D9B4021005B2C60 /* picotest.c in Sources */ = {isa = PBXBuildFile; fileRef = 106530E31D9B4021005B2C60 /* picotest.c */; };
		106530EA1D9B7C13005B2C60 /* picotls.c in Sources */ = {isa = PBXBuildFile; fileRef = 106530E91D9B7C13005B2C60 /* picotls.c */; };
		106530EB1D9B7C5C005B2C60 /* picotls.c in Sources */ = {isa = PBXBuildFile; fileRef = 106530BF1D998641005B2C60 /* picotls.c */; };
		106530FF1DAD8A3C005B2C60 /* cli.c in Sources */ = {isa = PBXBuildFile; fileRef = 106530FE1DAD8A3C005B2C60 /* cli.c */; };
		10EACAF01DCC843A00CA0341 /* drbg.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900511DC8D79300FB4085 /* drbg.c */; };
		10EACAF31DCEAF0F00CA0341 /* uECC.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900BC1DC96A3500FB4085 /* uECC.c */; };
		10EACAF41DCEAF0F00CA0341 /* uecc.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900C51DC9798800FB4085 /* uecc.c */; };
		10EACAF51DCEAF0F00CA0341 /* gf128.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900AA1DC941D700FB4085 /* gf128.c */; };
		10EACAF61DCEAF0F00CA0341 /* gcm.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900A91DC941D700FB4085 /* gcm.c */; };
		10EACAF71DCEAF0F00CA0341 /* sha256.c in Sources */ = {isa = PBXBuildFile; fileRef = 1059005F1DC8DE4400FB4085 /* sha256.c */; };
		10EACAF81DCEAF0F00CA0341 /* aes.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900241DC8D37500FB4085 /* aes.c */; };
		10EACAF91DCEAF0F00CA0341 /* modes.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900AF1DC9438200FB4085 /* modes.c */; };
		10EACAFB1DCEAF0F00CA0341 /* chash.c in Sources */ = {isa = PBXBuildFile; fileRef = 1059006B1DC8E00400FB4085 /* chash.c */; };
		10EACAFC1DCEAF0F00CA0341 /* curve25519.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900391DC8D46A00FB4085 /* curve25519.c */; };
		10EACAFD1DCEAF0F00CA0341 /* hmac.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900651DC8DFD300FB4085 /* hmac.c */; };
		10EACAFE1DCEAF0F00CA0341 /* drbg.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900511DC8D79300FB4085 /* drbg.c */; };
		10EACAFF1DCEAF0F00CA0341 /* cifra.c in Sources */ = {isa = PBXBuildFile; fileRef = 1059003F1DC8D53200FB4085 /* cifra.c */; };
		10EACB001DCEAF0F00CA0341 /* blockwise.c in Sources */ = {isa = PBXBuildFile; fileRef = 105900291DC8D39800FB4085 /* blockwise.c */; };
		10EACB031DCEAF0F00CA0341 /* blockwise.h in Headers */ = {isa = PBXBuildFile; fileRef = 1059002A1DC8D39800FB4085 /* blockwise.h */; };
		10EACB041DCEAF0F00CA0341 /* types.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900BA1DC96A3500FB4085 /* types.h */; };
		10EACB051DCEAF0F00CA0341 /* uECC_vli.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900BB1DC96A3500FB4085 /* uECC_vli.h */; };
		10EACB061DCEAF0F00CA0341 /* modes.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900B01DC9438200FB4085 /* modes.h */; };
		10EACB071DCEAF0F00CA0341 /* bitops.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900281DC8D39800FB4085 /* bitops.h */; };
		10EACB081DCEAF0F00CA0341 /* cf_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900321DC8D41A00FB4085 /* cf_config.h */; };
		10EACB091DCEAF0F00CA0341 /* handy.h in Headers */ = {isa = PBXBuildFile; fileRef = 1059002B1DC8D39800FB4085 /* handy.h */; };
		10EACB0A1DCEAF0F00CA0341 /* uECC.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900BD1DC96A3500FB4085 /* uECC.h */; };
		10EACB0B1DCEAF0F00CA0341 /* drbg.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900521DC8D79300FB4085 /* drbg.h */; };
		10EACB0C1DCEAF0F00CA0341 /* tassert.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900301DC8D3DF00FB4085 /* tassert.h */; };
		10EACB0D1DCEAF0F00CA0341 /* hmac.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900661DC8DFD300FB4085 /* hmac.h */; };
		10EACB0E1DCEAF0F00CA0341 /* chash.h in Headers */ = {isa = PBXBuildFile; fileRef = 1059006C1DC8E00400FB4085 /* chash.h */; };
		10EACB0F1DCEAF0F00CA0341 /* sha2.h in Headers */ = {isa = PBXBuildFile; fileRef = 1059005D1DC8DE3800FB4085 /* sha2.h */; };
		10EACB101DCEAF0F00CA0341 /* aes.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900251DC8D37500FB4085 /* aes.h */; };
		10EACB111DCEAF0F00CA0341 /* minicrypto.h in Headers */ = {isa = PBXBuildFile; fileRef = 1059004F1DC8D64E00FB4085 /* minicrypto.h */; };
		10EACB121DCEAF0F00CA0341 /* gf128.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900AB1DC941D700FB4085 /* gf128.h */; };
		10EACB131DCEAF0F00CA0341 /* curve25519.h in Headers */ = {isa = PBXBuildFile; fileRef = 105900361DC8D44E00FB4085 /* curve25519.h */; };
		10EACB1A1DCEC2A300CA0341 /* libpicotls-core.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 106530DA1D9B3E6F005B2C60 /* libpicotls-core.a */; };
		E949EF282073629300511ECA /* minicrypto-pem.c in Sources */ = {isa = PBXBuildFile; fileRef = E949EF272073629300511ECA /* minicrypto-pem.c */; };
		E95E95382290456B00215ACD /* picotls-probes.d in Sources */ = {isa = PBXBuildFile; fileRef = E95EBCC0227B71170022C32D /* picotls-probes.d */; };
		E973651E246E37300039AA49 /* libpicotls-minicrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 10EACB171DCEAF0F00CA0341 /* libpicotls-minicrypto.a */; };
		E97577012212405300D1EF74 /* ffx.h in Headers */ = {isa = PBXBuildFile; fileRef = E97577002212405300D1EF74 /* ffx.h */; };
		E97577032212405D00D1EF74 /* ffx.c in Sources */ = {isa = PBXBuildFile; fileRef = E97577022212405D00D1EF74 /* ffx.c */; };
		E97577042212407900D1EF74 /* ffx.c in Sources */ = {isa = PBXBuildFile; fileRef = E97577022212405D00D1EF74 /* ffx.c */; };
		E97577052212407900D1EF74 /* ffx.c in Sources */ = {isa = PBXBuildFile; fileRef = E97577022212405D00D1EF74 /* ffx.c */; };
		E9925A122354C37500CA2082 /* picotls-probes.d in Sources */ = {isa = PBXBuildFile; fileRef = E95EBCC0227B71170022C32D /* picotls-probes.d */; };
		E9925A132354C37600CA2082 /* picotls-probes.d in Sources */ = {isa = PBXBuildFile; fileRef = E95EBCC0227B71170022C32D /* picotls-probes.d */; };
		E9925A142354C3CF00CA2082 /* aes128.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE222E34B340018D260 /* aes128.c */; };
		E9925A152354C3DC00CA2082 /* aes256.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE022E34B340018D260 /* aes256.c */; };
		E9925A162354C3DF00CA2082 /* chacha20.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE422E34B340018D260 /* chacha20.c */; };
		E9925A172354C3E200CA2082 /* random.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BF922E34C110018D260 /* random.c */; };
		E9925A182354C3E500CA2082 /* x25519.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE122E34B340018D260 /* x25519.c */; };
		E99B75E01F5CDDB500CF503E /* asn1.c in Sources */ = {isa = PBXBuildFile; fileRef = E99B75DE1F5CDDB500CF503E /* asn1.c */; };
		E99B75E11F5CDDB500CF503E /* pembase64.c in Sources */ = {isa = PBXBuildFile; fileRef = E99B75DF1F5CDDB500CF503E /* pembase64.c */; };
		E99B75E21F5CE54D00CF503E /* asn1.c in Sources */ = {isa = PBXBuildFile; fileRef = E99B75DE1F5CDDB500CF503E /* asn1.c */; };
		E99B75E31F5CE54D00CF503E /* asn1.c in Sources */ = {isa = PBXBuildFile; fileRef = E99B75DE1F5CDDB500CF503E /* asn1.c */; };
		E99B75E41F5CE64E00CF503E /* pembase64.c in Sources */ = {isa = PBXBuildFile; fileRef = E99B75DF1F5CDDB500CF503E /* pembase64.c */; };
		E99B75E51F5CE64E00CF503E /* pembase64.c in Sources */ = {isa = PBXBuildFile; fileRef = E99B75DF1F5CDDB500CF503E /* pembase64.c */; };
		E9B43DC224619D5100824E51 /* picotls-probes.d in Sources */ = {isa = PBXBuildFile; fileRef = E95EBCC0227B71170022C32D /* picotls-probes.d */; };
		E9B43DC824619D5100824E51 /* picotest.c in Sources */ = {isa = PBXBuildFile; fileRef = 106530E31D9B4021005B2C60 /* picotest.c */; };
		E9B43DE424619D7E00824E51 /* fusion.c in Sources */ = {isa = PBXBuildFile; fileRef = E9B43DE224619D7E00824E51 /* fusion.c */; };
		E9B43DE524619E1600824E51 /* minicrypto.c in Sources */ = {isa = PBXBuildFile; fileRef = 1059003D1DC8D4E300FB4085 /* minicrypto.c */; };
		E9B43E1024689FE700824E51 /* picotls.c in Sources */ = {isa = PBXBuildFile; fileRef = 106530BF1D998641005B2C60 /* picotls.c */; };
		E9BC76CF1EF3A35E00EB7A09 /* chacha20.c in Sources */ = {isa = PBXBuildFile; fileRef = E9BC76C61EF3A2F700EB7A09 /* chacha20.c */; };
		E9BC76D21EF3A36A00EB7A09 /* chacha20.c in Sources */ = {isa = PBXBuildFile; fileRef = E9BC76C61EF3A2F700EB7A09 /* chacha20.c */; };
		E9BC76D41EF3A37200EB7A09 /* chacha20.c in Sources */ = {isa = PBXBuildFile; fileRef = E9BC76C61EF3A2F700EB7A09 /* chacha20.c */; };
		E9BC76DD1EF3CCD100EB7A09 /* poly1305.c in Sources */ = {isa = PBXBuildFile; fileRef = E9BC76D61EF3C1C200EB7A09 /* poly1305.c */; };
		E9BC76DE1EF3CCD100EB7A09 /* poly1305.h in Headers */ = {isa = PBXBuildFile; fileRef = E9BC76D71EF3C1C200EB7A09 /* poly1305.h */; };
		E9BC76DF1EF3CCD100EB7A09 /* salsa20.h in Headers */ = {isa = PBXBuildFile; fileRef = E9BC76CC1EF3A31000EB7A09 /* salsa20.h */; };
		E9BC76E01EF3CCDD00EB7A09 /* poly1305.c in Sources */ = {isa = PBXBuildFile; fileRef = E9BC76D61EF3C1C200EB7A09 /* poly1305.c */; };
		E9BC76E11EF3CCDE00EB7A09 /* poly1305.c in Sources */ = {isa = PBXBuildFile; fileRef = E9BC76D61EF3C1C200EB7A09 /* poly1305.c */; };
		E9E4B12B2180530400514B47 /* certificate_compression.c in Sources */ = {isa = PBXBuildFile; fileRef = E9E4B12A2180530400514B47 /* certificate_compression.c */; };
		E9E865EB203BD46600E2FFCD /* sha512.c in Sources */ = {isa = PBXBuildFile; fileRef = E9E865E9203BD45600E2FFCD /* sha512.c */; };
		E9E865EC203BD46600E2FFCD /* sha512.c in Sources */ = {isa = PBXBuildFile; fileRef = E9E865E9203BD45600E2FFCD /* sha512.c */; };
		E9E865ED203BD46700E2FFCD /* sha512.c in Sources */ = {isa = PBXBuildFile; fileRef = E9E865E9203BD45600E2FFCD /* sha512.c */; };
		E9F20BEA22E34B3E0018D260 /* aes-common.h in Headers */ = {isa = PBXBuildFile; fileRef = E9F20BE322E34B340018D260 /* aes-common.h */; };
		E9F20BEB22E34B3E0018D260 /* aes128.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE222E34B340018D260 /* aes128.c */; };
		E9F20BEC22E34B3E0018D260 /* aes256.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE022E34B340018D260 /* aes256.c */; };
		E9F20BED22E34B3E0018D260 /* chacha20.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE422E34B340018D260 /* chacha20.c */; };
		E9F20BEE22E34B3E0018D260 /* x25519.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE122E34B340018D260 /* x25519.c */; };
		E9F20BEF22E34B480018D260 /* aes128.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE222E34B340018D260 /* aes128.c */; };
		E9F20BF022E34B480018D260 /* aes256.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE022E34B340018D260 /* aes256.c */; };
		E9F20BF122E34B480018D260 /* chacha20.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE422E34B340018D260 /* chacha20.c */; };
		E9F20BF222E34B480018D260 /* x25519.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BE122E34B340018D260 /* x25519.c */; };
		E9F20BFB22E34C1B0018D260 /* random.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BF922E34C110018D260 /* random.c */; };
		E9F20BFC22E34C1C0018D260 /* random.c in Sources */ = {isa = PBXBuildFile; fileRef = E9F20BF922E34C110018D260 /* random.c */; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
		105900A71DC8E2E100FB4085 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 106530AA1D9985E0005B2C60 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 105900701DC8E1A300FB4085;
			remoteInfo = "picotls-openssl";
		};
		10EACB181DCEAF4A00CA0341 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 106530AA1D9985E0005B2C60 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 106530D91D9B3E6F005B2C60;
			remoteInfo = "picotls-core";
		};
/* End PBXContainerItemProxy section */

/* Begin PBXCopyFilesBuildPhase section */
		105900471DC8D57000FB4085 /* CopyFiles */ = {
			isa = PBXCopyFilesBuildPhase;
			buildActionMask = 2147483647;
			dstPath = /usr/share/man/man1/;
			dstSubfolderSpec = 0;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 1;
		};
		106530CA1D9B3D45005B2C60 /* CopyFiles */ = {
			isa = PBXCopyFilesBuildPhase;
			buildActionMask = 2147483647;
			dstPath = /usr/share/man/man1/;
			dstSubfolderSpec = 0;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 1;
		};
		106530F81DAD8985005B2C60 /* CopyFiles */ = {
			isa = PBXCopyFilesBuildPhase;
			buildActionMask = 2147483647;
			dstPath = /usr/share/man/man1/;
			dstSubfolderSpec = 0;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 1;
		};
		E9B43DDD24619D5100824E51 /* CopyFiles */ = {
			isa = PBXCopyFilesBuildPhase;
			buildActionMask = 2147483647;
			dstPath = /usr/share/man/man1/;
			dstSubfolderSpec = 0;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 1;
		};
/* End PBXCopyFilesBuildPhase section */

/* Begin PBXFileReference section */
		081F00C92918823200534A86 /* hpke.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = hpke.c; sourceTree = "<group>"; };
		081F00CB291A357700534A86 /* ptlsbcrypt.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = ptlsbcrypt.c; sourceTree = "<group>"; };
		081F00CC291A358800534A86 /* asn1.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = asn1.h; sourceTree = "<group>"; };
		081F00CD291A358800534A86 /* pembase64.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = pembase64.h; sourceTree = "<group>"; };
		081F00CE291A358800534A86 /* ptlsbcrypt.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ptlsbcrypt.h; sourceTree = "<group>"; };
		08B3298229419DFC009D6766 /* ech-live.t */ = {isa = PBXFileReference; lastKnownFileType = text; path = "ech-live.t"; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.perl; };
		08F0FDF52910F67A00EE657D /* hpke.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = hpke.c; sourceTree = "<group>"; };
		105900241DC8D37500FB4085 /* aes.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = aes.c; path = src/aes.c; sourceTree = "<group>"; };
		105900251DC8D37500FB4085 /* aes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = aes.h; path = src/aes.h; sourceTree = "<group>"; };
		105900281DC8D39800FB4085 /* bitops.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = bitops.h; path = src/bitops.h; sourceTree = "<group>"; };
		105900291DC8D39800FB4085 /* blockwise.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = blockwise.c; path = src/blockwise.c; sourceTree = "<group>"; };
		1059002A1DC8D39800FB4085 /* blockwise.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = blockwise.h; path = src/blockwise.h; sourceTree = "<group>"; };
		1059002B1DC8D39800FB4085 /* handy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = handy.h; path = src/ext/handy.h; sourceTree = "<group>"; };
		105900301DC8D3DF00FB4085 /* tassert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = tassert.h; path = src/tassert.h; sourceTree = "<group>"; };
		105900321DC8D41A00FB4085 /* cf_config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cf_config.h; path = src/cf_config.h; sourceTree = "<group>"; };
		105900361DC8D44E00FB4085 /* curve25519.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = curve25519.h; path = src/curve25519.h; sourceTree = "<group>"; };
		105900391DC8D46A00FB4085 /* curve25519.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = curve25519.c; path = src/curve25519.c; sourceTree = "<group>"; };
		1059003B1DC8D49E00FB4085 /* curve25519.tweetnacl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = curve25519.tweetnacl.c; path = src/curve25519.tweetnacl.c; sourceTree = "<group>"; };
		1059003D1DC8D4E300FB4085 /* minicrypto.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = minicrypto.c; sourceTree = "<group>"; };
		1059003F1DC8D53200FB4085 /* cifra.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = cifra.c; sourceTree = "<group>"; };
		1059004B1DC8D57000FB4085 /* test-minicrypto */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "test-minicrypto"; sourceTree = BUILT_PRODUCTS_DIR; };
		1059004F1DC8D64E00FB4085 /* minicrypto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = minicrypto.h; sourceTree = "<group>"; };
		105900511DC8D79300FB4085 /* drbg.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = drbg.c; path = src/drbg.c; sourceTree = "<group>"; };
		105900521DC8D79300FB4085 /* drbg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = drbg.h; path = src/drbg.h; sourceTree = "<group>"; };
		1059005D1DC8DE3800FB4085 /* sha2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = sha2.h; path = src/sha2.h; sourceTree = "<group>"; };
		1059005F1DC8DE4400FB4085 /* sha256.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sha256.c; path = src/sha256.c; sourceTree = "<group>"; };
		105900651DC8DFD300FB4085 /* hmac.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = hmac.c; path = src/hmac.c; sourceTree = "<group>"; };
		105900661DC8DFD300FB4085 /* hmac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = hmac.h; path = src/hmac.h; sourceTree = "<group>"; };
		1059006B1DC8E00400FB4085 /* chash.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = chash.c; path = src/chash.c; sourceTree = "<group>"; };
		1059006C1DC8E00400FB4085 /* chash.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = chash.h; path = src/chash.h; sourceTree = "<group>"; };
		1059008C1DC8E1A300FB4085 /* libpicotls-openssl.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libpicotls-openssl.a"; sourceTree = BUILT_PRODUCTS_DIR; };
		105900A91DC941D700FB4085 /* gcm.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = gcm.c; path = src/gcm.c; sourceTree = "<group>"; };
		105900AA1DC941D700FB4085 /* gf128.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = gf128.c; path = src/gf128.c; sourceTree = "<group>"; };
		105900AB1DC941D700FB4085 /* gf128.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = gf128.h; path = src/gf128.h; sourceTree = "<group>"; };
		105900AF1DC9438200FB4085 /* modes.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = modes.c; path = src/modes.c; sourceTree = "<group>"; };
		105900B01DC9438200FB4085 /* modes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = modes.h; path = src/modes.h; sourceTree = "<group>"; };
		105900BA1DC96A3500FB4085 /* types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = types.h; sourceTree = "<group>"; };
		105900BB1DC96A3500FB4085 /* uECC_vli.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = uECC_vli.h; sourceTree = "<group>"; };
		105900BC1DC96A3500FB4085 /* uECC.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = uECC.c; sourceTree = "<group>"; };
		105900BD1DC96A3500FB4085 /* uECC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = uECC.h; sourceTree = "<group>"; };
		105900C51DC9798800FB4085 /* uecc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = uecc.c; sourceTree = "<group>"; };
		106530BE1D99863B005B2C60 /* picotls.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = picotls.h; sourceTree = "<group>"; };
		106530BF1D998641005B2C60 /* picotls.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = picotls.c; sourceTree = "<group>"; };
		106530C21D9B004B005B2C60 /* openssl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = openssl.c; sourceTree = "<group>"; };
		106530C51D9B1A98005B2C60 /* openssl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = openssl.c; sourceTree = "<group>"; };
		106530CC1D9B3D45005B2C60 /* test-openssl */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "test-openssl"; sourceTree = BUILT_PRODUCTS_DIR; };
		106530DA1D9B3E6F005B2C60 /* libpicotls-core.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libpicotls-core.a"; sourceTree = BUILT_PRODUCTS_DIR; };
		106530E31D9B4021005B2C60 /* picotest.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = picotest.c; sourceTree = "<group>"; };
		106530E41D9B4021005B2C60 /* picotest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = picotest.h; sourceTree = "<group>"; };
		106530E61D9B7AF6005B2C60 /* test.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = test.h; sourceTree = "<group>"; };
		106530E91D9B7C13005B2C60 /* picotls.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = picotls.c; sourceTree = "<group>"; };
		106530ED1D9CEFF7005B2C60 /* openssl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = openssl.h; path = include/picotls/openssl.h; sourceTree = SOURCE_ROOT; };
		106530FC1DAD8985005B2C60 /* cli */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = cli; sourceTree = BUILT_PRODUCTS_DIR; };
		106530FE1DAD8A3C005B2C60 /* cli.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = cli.c; sourceTree = "<group>"; };
		10EACB171DCEAF0F00CA0341 /* libpicotls-minicrypto.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libpicotls-minicrypto.a"; sourceTree = BUILT_PRODUCTS_DIR; };
		E949EF272073629300511ECA /* minicrypto-pem.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = "minicrypto-pem.c"; sourceTree = "<group>"; };
		E95EBCC0227B71170022C32D /* picotls-probes.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = "picotls-probes.d"; sourceTree = "<group>"; };
		E95EBCC3227E82E00022C32D /* dump-github-repository.pl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.perl; path = "dump-github-repository.pl"; sourceTree = "<group>"; };
		E95EBCC5227E82FF0022C32D /* bpftrace.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = bpftrace.d; sourceTree = "<group>"; };
		E95EBCC6227E82FF0022C32D /* dtrace.d */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.dtrace; path = dtrace.d; sourceTree = "<group>"; };
		E95EBCCA227EA0180022C32D /* dtrace-utils.cmake */ = {isa = PBXFileReference; lastKnownFileType = text; path = "dtrace-utils.cmake"; sourceTree = "<group>"; };
		E97577002212405300D1EF74 /* ffx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffx.h; sourceTree = "<group>"; };
		E97577022212405D00D1EF74 /* ffx.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffx.c; sourceTree = "<group>"; };
		E97577072213148800D1EF74 /* e2e.t */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.perl; path = e2e.t; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.perl; };
		E99B75DE1F5CDDB500CF503E /* asn1.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = asn1.c; sourceTree = "<group>"; };
		E99B75DF1F5CDDB500CF503E /* pembase64.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = pembase64.c; sourceTree = "<group>"; };
		E9B43DBF24619D1700824E51 /* fusion.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = fusion.c; sourceTree = "<group>"; };
		E9B43DE124619D5100824E51 /* test-fusion */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "test-fusion"; sourceTree = BUILT_PRODUCTS_DIR; };
		E9B43DE224619D7E00824E51 /* fusion.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = fusion.c; sourceTree = "<group>"; };
		E9B43DE62461A06800824E51 /* fusion.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = fusion.h; sourceTree = "<group>"; };
		E9BC76C61EF3A2F700EB7A09 /* chacha20.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = chacha20.c; path = src/chacha20.c; sourceTree = "<group>"; };
		E9BC76CC1EF3A31000EB7A09 /* salsa20.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = salsa20.h; path = src/salsa20.h; sourceTree = "<group>"; };
		E9BC76D61EF3C1C200EB7A09 /* poly1305.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = poly1305.c; path = src/poly1305.c; sourceTree = "<group>"; };
		E9BC76D71EF3C1C200EB7A09 /* poly1305.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = poly1305.h; path = src/poly1305.h; sourceTree = "<group>"; };
		E9E3849C1F0748DD00D50990 /* util.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = util.h; sourceTree = "<group>"; };
		E9E4B1292180514000514B47 /* certificate_compression.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = certificate_compression.h; sourceTree = "<group>"; };
		E9E4B12A2180530400514B47 /* certificate_compression.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = certificate_compression.c; sourceTree = "<group>"; };
		E9E4B12C2181927900514B47 /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
		E9E865E9203BD45600E2FFCD /* sha512.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sha512.c; path = src/sha512.c; sourceTree = "<group>"; };
		E9F20BE022E34B340018D260 /* aes256.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = aes256.c; sourceTree = "<group>"; };
		E9F20BE122E34B340018D260 /* x25519.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = x25519.c; sourceTree = "<group>"; };
		E9F20BE222E34B340018D260 /* aes128.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = aes128.c; sourceTree = "<group>"; };
		E9F20BE322E34B340018D260 /* aes-common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "aes-common.h"; sourceTree = "<group>"; };
		E9F20BE422E34B340018D260 /* chacha20.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = chacha20.c; sourceTree = "<group>"; };
		E9F20BF922E34C110018D260 /* random.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = random.c; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		105900461DC8D57000FB4085 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		1059007B1DC8E1A300FB4085 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		106530C91D9B3D45005B2C60 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		106530D71D9B3E6F005B2C60 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		106530F71DAD8985005B2C60 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				105900A41DC8E23B00FB4085 /* libpicotls-openssl.a in Frameworks */,
				10EACB1A1DCEC2A300CA0341 /* libpicotls-core.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		10EACB011DCEAF0F00CA0341 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		E9B43DDC24619D5100824E51 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E973651E246E37300039AA49 /* libpicotls-minicrypto.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		105900231DC8D34400FB4085 /* cifra */ = {
			isa = PBXGroup;
			children = (
				105900251DC8D37500FB4085 /* aes.h */,
				105900241DC8D37500FB4085 /* aes.c */,
				105900281DC8D39800FB4085 /* bitops.h */,
				1059002A1DC8D39800FB4085 /* blockwise.h */,
				105900291DC8D39800FB4085 /* blockwise.c */,
				E9BC76C61EF3A2F700EB7A09 /* chacha20.c */,
				1059006C1DC8E00400FB4085 /* chash.h */,
				1059006B1DC8E00400FB4085 /* chash.c */,
				105900361DC8D44E00FB4085 /* curve25519.h */,
				105900391DC8D46A00FB4085 /* curve25519.c */,
				1059003B1DC8D49E00FB4085 /* curve25519.tweetnacl.c */,
				105900321DC8D41A00FB4085 /* cf_config.h */,
				105900521DC8D79300FB4085 /* drbg.h */,
				105900511DC8D79300FB4085 /* drbg.c */,
				1059002B1DC8D39800FB4085 /* handy.h */,
				105900661DC8DFD300FB4085 /* hmac.h */,
				105900651DC8DFD300FB4085 /* hmac.c */,
				105900A91DC941D700FB4085 /* gcm.c */,
				105900AB1DC941D700FB4085 /* gf128.h */,
				105900AA1DC941D700FB4085 /* gf128.c */,
				105900B01DC9438200FB4085 /* modes.h */,
				105900AF1DC9438200FB4085 /* modes.c */,
				E9BC76D71EF3C1C200EB7A09 /* poly1305.h */,
				E9BC76D61EF3C1C200EB7A09 /* poly1305.c */,
				E9BC76CC1EF3A31000EB7A09 /* salsa20.h */,
				1059005D1DC8DE3800FB4085 /* sha2.h */,
				1059005F1DC8DE4400FB4085 /* sha256.c */,
				E9E865E9203BD45600E2FFCD /* sha512.c */,
				105900301DC8D3DF00FB4085 /* tassert.h */,
			);
			path = cifra;
			sourceTree = "<group>";
		};
		105900B91DC96A1B00FB4085 /* micro-ecc */ = {
			isa = PBXGroup;
			children = (
				105900BA1DC96A3500FB4085 /* types.h */,
				105900BD1DC96A3500FB4085 /* uECC.h */,
				105900BB1DC96A3500FB4085 /* uECC_vli.h */,
				105900BC1DC96A3500FB4085 /* uECC.c */,
			);
			path = "micro-ecc";
			sourceTree = "<group>";
		};
		106530A91D9985E0005B2C60 = {
			isa = PBXGroup;
			children = (
				E95EBCC9227E9FF30022C32D /* cmake */,
				E9E4B12C2181927900514B47 /* CMakeLists.txt */,
				106530E11D9B4000005B2C60 /* deps */,
				106530BC1D998616005B2C60 /* include */,
				106530BD1D998624005B2C60 /* lib */,
				E95EBCC2227E82BA0022C32D /* misc */,
				E95EBCC0227B71170022C32D /* picotls-probes.d */,
				E992F79920E99A080008154D /* src */,
				106530C41D9B1A0E005B2C60 /* t */,
				106530B31D9985E0005B2C60 /* Products */,
				E973651D246E37300039AA49 /* Frameworks */,
			);
			sourceTree = "<group>";
		};
		106530B31D9985E0005B2C60 /* Products */ = {
			isa = PBXGroup;
			children = (
				106530CC1D9B3D45005B2C60 /* test-openssl */,
				106530DA1D9B3E6F005B2C60 /* libpicotls-core.a */,
				106530FC1DAD8985005B2C60 /* cli */,
				1059004B1DC8D57000FB4085 /* test-minicrypto */,
				1059008C1DC8E1A300FB4085 /* libpicotls-openssl.a */,
				10EACB171DCEAF0F00CA0341 /* libpicotls-minicrypto.a */,
				E9B43DE124619D5100824E51 /* test-fusion */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		106530BC1D998616005B2C60 /* include */ = {
			isa = PBXGroup;
			children = (
				106530EE1D9E3476005B2C60 /* picotls */,
				106530BE1D99863B005B2C60 /* picotls.h */,
			);
			path = include;
			sourceTree = "<group>";
		};
		106530BD1D998624005B2C60 /* lib */ = {
			isa = PBXGroup;
			children = (
				E99B75DE1F5CDDB500CF503E /* asn1.c */,
				E9E4B12A2180530400514B47 /* certificate_compression.c */,
				E9F20BDF22E34B210018D260 /* cifra */,
				1059003F1DC8D53200FB4085 /* cifra.c */,
				E97577022212405D00D1EF74 /* ffx.c */,
				E9B43DBF24619D1700824E51 /* fusion.c */,
				08F0FDF52910F67A00EE657D /* hpke.c */,
				E949EF272073629300511ECA /* minicrypto-pem.c */,
				106530C21D9B004B005B2C60 /* openssl.c */,
				E99B75DF1F5CDDB500CF503E /* pembase64.c */,
				106530BF1D998641005B2C60 /* picotls.c */,
				081F00CB291A357700534A86 /* ptlsbcrypt.c */,
				105900C51DC9798800FB4085 /* uecc.c */,
			);
			path = lib;
			sourceTree = "<group>";
		};
		106530C41D9B1A0E005B2C60 /* t */ = {
			isa = PBXGroup;
			children = (
				106530FE1DAD8A3C005B2C60 /* cli.c */,
				E97577072213148800D1EF74 /* e2e.t */,
				08B3298229419DFC009D6766 /* ech-live.t */,
				E9B43DE224619D7E00824E51 /* fusion.c */,
				081F00C92918823200534A86 /* hpke.c */,
				1059003D1DC8D4E300FB4085 /* minicrypto.c */,
				106530C51D9B1A98005B2C60 /* openssl.c */,
				106530E91D9B7C13005B2C60 /* picotls.c */,
				106530E61D9B7AF6005B2C60 /* test.h */,
				E9E3849C1F0748DD00D50990 /* util.h */,
			);
			path = t;
			sourceTree = "<group>";
		};
		106530E11D9B4000005B2C60 /* deps */ = {
			isa = PBXGroup;
			children = (
				105900B91DC96A1B00FB4085 /* micro-ecc */,
				105900231DC8D34400FB4085 /* cifra */,
				106530E21D9B4005005B2C60 /* picotest */,
			);
			path = deps;
			sourceTree = "<group>";
		};
		106530E21D9B4005005B2C60 /* picotest */ = {
			isa = PBXGroup;
			children = (
				106530E41D9B4021005B2C60 /* picotest.h */,
				106530E31D9B4021005B2C60 /* picotest.c */,
			);
			path = picotest;
			sourceTree = "<group>";
		};
		106530EE1D9E3476005B2C60 /* picotls */ = {
			isa = PBXGroup;
			children = (
				081F00CC291A358800534A86 /* asn1.h */,
				E9E4B1292180514000514B47 /* certificate_compression.h */,
				E97577002212405300D1EF74 /* ffx.h */,
				E9B43DE62461A06800824E51 /* fusion.h */,
				1059004F1DC8D64E00FB4085 /* minicrypto.h */,
				106530ED1D9CEFF7005B2C60 /* openssl.h */,
				081F00CD291A358800534A86 /* pembase64.h */,
				081F00CE291A358800534A86 /* ptlsbcrypt.h */,
			);
			path = picotls;
			sourceTree = "<group>";
		};
		E95EBCC2227E82BA0022C32D /* misc */ = {
			isa = PBXGroup;
			children = (
				E95EBCC4227E82F20022C32D /* dtrace */,
				E95EBCC3227E82E00022C32D /* dump-github-repository.pl */,
			);
			path = misc;
			sourceTree = "<group>";
		};
		E95EBCC4227E82F20022C32D /* dtrace */ = {
			isa = PBXGroup;
			children = (
				E95EBCC5227E82FF0022C32D /* bpftrace.d */,
				E95EBCC6227E82FF0022C32D /* dtrace.d */,
			);
			path = dtrace;
			sourceTree = "<group>";
		};
		E95EBCC9227E9FF30022C32D /* cmake */ = {
			isa = PBXGroup;
			children = (
				E95EBCCA227EA0180022C32D /* dtrace-utils.cmake */,
			);
			path = cmake;
			sourceTree = "<group>";
		};
		E973651D246E37300039AA49 /* Frameworks */ = {
			isa = PBXGroup;
			children = (
			);
			name = Frameworks;
			sourceTree = "<group>";
		};
		E992F79920E99A080008154D /* src */ = {
			isa = PBXGroup;
			children = (
			);
			path = src;
			sourceTree = "<group>";
		};
		E9F20BDF22E34B210018D260 /* cifra */ = {
			isa = PBXGroup;
			children = (
				E9F20BE322E34B340018D260 /* aes-common.h */,
				E9F20BE222E34B340018D260 /* aes128.c */,
				E9F20BE022E34B340018D260 /* aes256.c */,
				E9F20BE422E34B340018D260 /* chacha20.c */,
				E9F20BF922E34C110018D260 /* random.c */,
				E9F20BE122E34B340018D260 /* x25519.c */,
			);
			path = cifra;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXHeadersBuildPhase section */
		1059007C1DC8E1A300FB4085 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				105900A21DC8E20D00FB4085 /* openssl.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		106530D81D9B3E6F005B2C60 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				105900921DC8E1FF00FB4085 /* blockwise.h in Headers */,
				105900BE1DC96A3500FB4085 /* types.h in Headers */,
				105900BF1DC96A3500FB4085 /* uECC_vli.h in Headers */,
				105900B21DC9438200FB4085 /* modes.h in Headers */,
				105900911DC8E1FF00FB4085 /* bitops.h in Headers */,
				105900991DC8E1FF00FB4085 /* cf_config.h in Headers */,
				1059009C1DC8E1FF00FB4085 /* handy.h in Headers */,
				105900C11DC96A3500FB4085 /* uECC.h in Headers */,
				1059009A1DC8E1FF00FB4085 /* drbg.h in Headers */,
				105900A11DC8E1FF00FB4085 /* tassert.h in Headers */,
				1059009D1DC8E1FF00FB4085 /* hmac.h in Headers */,
				105900941DC8E1FF00FB4085 /* chash.h in Headers */,
				1059009F1DC8E1FF00FB4085 /* sha2.h in Headers */,
				1059008F1DC8E1FF00FB4085 /* aes.h in Headers */,
				105900501DC8D64E00FB4085 /* minicrypto.h in Headers */,
				E97577012212405300D1EF74 /* ffx.h in Headers */,
				105900AE1DC941D700FB4085 /* gf128.h in Headers */,
				105900961DC8E1FF00FB4085 /* curve25519.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		10EACB021DCEAF0F00CA0341 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				10EACB031DCEAF0F00CA0341 /* blockwise.h in Headers */,
				10EACB041DCEAF0F00CA0341 /* types.h in Headers */,
				10EACB051DCEAF0F00CA0341 /* uECC_vli.h in Headers */,
				10EACB061DCEAF0F00CA0341 /* modes.h in Headers */,
				E9BC76DF1EF3CCD100EB7A09 /* salsa20.h in Headers */,
				10EACB071DCEAF0F00CA0341 /* bitops.h in Headers */,
				10EACB081DCEAF0F00CA0341 /* cf_config.h in Headers */,
				10EACB091DCEAF0F00CA0341 /* handy.h in Headers */,
				10EACB0A1DCEAF0F00CA0341 /* uECC.h in Headers */,
				E9F20BEA22E34B3E0018D260 /* aes-common.h in Headers */,
				10EACB0B1DCEAF0F00CA0341 /* drbg.h in Headers */,
				10EACB0C1DCEAF0F00CA0341 /* tassert.h in Headers */,
				10EACB0D1DCEAF0F00CA0341 /* hmac.h in Headers */,
				10EACB0E1DCEAF0F00CA0341 /* chash.h in Headers */,
				10EACB0F1DCEAF0F00CA0341 /* sha2.h in Headers */,
				E9BC76DE1EF3CCD100EB7A09 /* poly1305.h in Headers */,
				10EACB101DCEAF0F00CA0341 /* aes.h in Headers */,
				10EACB111DCEAF0F00CA0341 /* minicrypto.h in Headers */,
				10EACB121DCEAF0F00CA0341 /* gf128.h in Headers */,
				10EACB131DCEAF0F00CA0341 /* curve25519.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXHeadersBuildPhase section */

/* Begin PBXNativeTarget section */
		105900411DC8D57000FB4085 /* test-minicrypto */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 105900481DC8D57000FB4085 /* Build configuration list for PBXNativeTarget "test-minicrypto" */;
			buildPhases = (
				105900421DC8D57000FB4085 /* Sources */,
				105900461DC8D57000FB4085 /* Frameworks */,
				105900471DC8D57000FB4085 /* CopyFiles */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "test-minicrypto";
			productName = "test-crypto-openssl";
			productReference = 1059004B1DC8D57000FB4085 /* test-minicrypto */;
			productType = "com.apple.product-type.tool";
		};
		105900701DC8E1A300FB4085 /* picotls-openssl */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 105900891DC8E1A300FB4085 /* Build configuration list for PBXNativeTarget "picotls-openssl" */;
			buildPhases = (
				105900711DC8E1A300FB4085 /* Sources */,
				1059007B1DC8E1A300FB4085 /* Frameworks */,
				1059007C1DC8E1A300FB4085 /* Headers */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "picotls-openssl";
			productName = picotls;
			productReference = 1059008C1DC8E1A300FB4085 /* libpicotls-openssl.a */;
			productType = "com.apple.product-type.library.static";
		};
		106530CB1D9B3D45005B2C60 /* test-openssl */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 106530D01D9B3D45005B2C60 /* Build configuration list for PBXNativeTarget "test-openssl" */;
			buildPhases = (
				106530C81D9B3D45005B2C60 /* Sources */,
				106530C91D9B3D45005B2C60 /* Frameworks */,
				106530CA1D9B3D45005B2C60 /* CopyFiles */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "test-openssl";
			productName = "test-crypto-openssl";
			productReference = 106530CC1D9B3D45005B2C60 /* test-openssl */;
			productType = "com.apple.product-type.tool";
		};
		106530D91D9B3E6F005B2C60 /* picotls-core */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 106530DD1D9B3E6F005B2C60 /* Build configuration list for PBXNativeTarget "picotls-core" */;
			buildPhases = (
				106530D61D9B3E6F005B2C60 /* Sources */,
				106530D71D9B3E6F005B2C60 /* Frameworks */,
				106530D81D9B3E6F005B2C60 /* Headers */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "picotls-core";
			productName = picotls;
			productReference = 106530DA1D9B3E6F005B2C60 /* libpicotls-core.a */;
			productType = "com.apple.product-type.library.static";
		};
		106530F11DAD8985005B2C60 /* cli */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 106530F91DAD8985005B2C60 /* Build configuration list for PBXNativeTarget "cli" */;
			buildPhases = (
				106530F21DAD8985005B2C60 /* Sources */,
				106530F71DAD8985005B2C60 /* Frameworks */,
				106530F81DAD8985005B2C60 /* CopyFiles */,
			);
			buildRules = (
			);
			dependencies = (
				10EACB191DCEAF4A00CA0341 /* PBXTargetDependency */,
				105900A81DC8E2E100FB4085 /* PBXTargetDependency */,
			);
			name = cli;
			productName = "test-crypto-openssl";
			productReference = 106530FC1DAD8985005B2C60 /* cli */;
			productType = "com.apple.product-type.tool";
		};
		10EACAF11DCEAF0F00CA0341 /* picotls-minicrypto */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 10EACB141DCEAF0F00CA0341 /* Build configuration list for PBXNativeTarget "picotls-minicrypto" */;
			buildPhases = (
				10EACAF21DCEAF0F00CA0341 /* Sources */,
				10EACB011DCEAF0F00CA0341 /* Frameworks */,
				10EACB021DCEAF0F00CA0341 /* Headers */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "picotls-minicrypto";
			productName = picotls;
			productReference = 10EACB171DCEAF0F00CA0341 /* libpicotls-minicrypto.a */;
			productType = "com.apple.product-type.library.static";
		};
		E9B43DC024619D5100824E51 /* test-fusion */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = E9B43DDE24619D5100824E51 /* Build configuration list for PBXNativeTarget "test-fusion" */;
			buildPhases = (
				E9B43DC124619D5100824E51 /* Sources */,
				E9B43DDC24619D5100824E51 /* Frameworks */,
				E9B43DDD24619D5100824E51 /* CopyFiles */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "test-fusion";
			productName = "test-crypto-openssl";
			productReference = E9B43DE124619D5100824E51 /* test-fusion */;
			productType = "com.apple.product-type.tool";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		106530AA1D9985E0005B2C60 /* Project object */ = {
			isa = PBXProject;
			attributes = {
				LastUpgradeCheck = 1320;
				ORGANIZATIONNAME = "DeNA Co., Ltd.";
				TargetAttributes = {
					106530CB1D9B3D45005B2C60 = {
						CreatedOnToolsVersion = 7.3.1;
					};
					106530D91D9B3E6F005B2C60 = {
						CreatedOnToolsVersion = 7.3.1;
					};
				};
			};
			buildConfigurationList = 106530AD1D9985E0005B2C60 /* Build configuration list for PBXProject "picotls" */;
			compatibilityVersion = "Xcode 3.2";
			developmentRegion = English;
			hasScannedForEncodings = 0;
			knownRegions = (
				English,
				en,
			);
			mainGroup = 106530A91D9985E0005B2C60;
			productRefGroup = 106530B31D9985E0005B2C60 /* Products */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				106530D91D9B3E6F005B2C60 /* picotls-core */,
				10EACAF11DCEAF0F00CA0341 /* picotls-minicrypto */,
				105900701DC8E1A300FB4085 /* picotls-openssl */,
				106530F11DAD8985005B2C60 /* cli */,
				106530CB1D9B3D45005B2C60 /* test-openssl */,
				105900411DC8D57000FB4085 /* test-minicrypto */,
				E9B43DC024619D5100824E51 /* test-fusion */,
			);
		};
/* End PBXProject section */

/* Begin PBXSourcesBuildPhase section */
		105900421DC8D57000FB4085 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E9925A132354C37600CA2082 /* picotls-probes.d in Sources */,
				105900B61DC943D400FB4085 /* aes.c in Sources */,
				E99B75E51F5CE64E00CF503E /* pembase64.c in Sources */,
				E97577052212407900D1EF74 /* ffx.c in Sources */,
				105900431DC8D57000FB4085 /* picotls.c in Sources */,
				105900C41DC96B2200FB4085 /* uECC.c in Sources */,
				105900441DC8D57000FB4085 /* picotest.c in Sources */,
				E9B43DE524619E1600824E51 /* minicrypto.c in Sources */,
				105900611DC8DF8C00FB4085 /* sha256.c in Sources */,
				E9F20BF122E34B480018D260 /* chacha20.c in Sources */,
				E9BC76D21EF3A36A00EB7A09 /* chacha20.c in Sources */,
				E99B75E31F5CE54D00CF503E /* asn1.c in Sources */,
				E9E865ED203BD46700E2FFCD /* sha512.c in Sources */,
				E9F20BF022E34B480018D260 /* aes256.c in Sources */,
				E9F20BFC22E34C1C0018D260 /* random.c in Sources */,
				E9F20BEF22E34B480018D260 /* aes128.c in Sources */,
				10EACAF01DCC843A00CA0341 /* drbg.c in Sources */,
				E9F20BF222E34B480018D260 /* x25519.c in Sources */,
				E9BC76E11EF3CCDE00EB7A09 /* poly1305.c in Sources */,
				1059006A1DC8DFE300FB4085 /* hmac.c in Sources */,
				1059006F1DC8E00B00FB4085 /* chash.c in Sources */,
				105900B41DC943B500FB4085 /* gf128.c in Sources */,
				105900641DC8DFA700FB4085 /* curve25519.c in Sources */,
				105900B51DC943B900FB4085 /* gcm.c in Sources */,
				105900B31DC9439800FB4085 /* modes.c in Sources */,
				105900691DC8DFDF00FB4085 /* blockwise.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		105900711DC8E1A300FB4085 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				105900761DC8E1A300FB4085 /* openssl.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		106530C81D9B3D45005B2C60 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E97577042212407900D1EF74 /* ffx.c in Sources */,
				E9BC76E01EF3CCDD00EB7A09 /* poly1305.c in Sources */,
				105900CF1DCBECFB00FB4085 /* modes.c in Sources */,
				E9925A122354C37500CA2082 /* picotls-probes.d in Sources */,
				106530EA1D9B7C13005B2C60 /* picotls.c in Sources */,
				E9925A142354C3CF00CA2082 /* aes128.c in Sources */,
				105900CD1DCBECF400FB4085 /* gcm.c in Sources */,
				E9E865EC203BD46600E2FFCD /* sha512.c in Sources */,
				105900D01DCBECFE00FB4085 /* sha256.c in Sources */,
				1059004C1DC8D5B700FB4085 /* openssl.c in Sources */,
				105900D21DCBED0A00FB4085 /* uecc.c in Sources */,
				E9925A182354C3E500CA2082 /* x25519.c in Sources */,
				E99B75E21F5CE54D00CF503E /* asn1.c in Sources */,
				105900C81DCBECDD00FB4085 /* blockwise.c in Sources */,
				E9925A172354C3E200CA2082 /* random.c in Sources */,
				105900D31DCBED1D00FB4085 /* uECC.c in Sources */,
				105900C91DCBECE100FB4085 /* chash.c in Sources */,
				E9925A152354C3DC00CA2082 /* aes256.c in Sources */,
				106530E51D9B4021005B2C60 /* picotest.c in Sources */,
				105900C71DCBECD800FB4085 /* aes.c in Sources */,
				105900D11DCBED0600FB4085 /* cifra.c in Sources */,
				E9925A162354C3DF00CA2082 /* chacha20.c in Sources */,
				105900CE1DCBECF700FB4085 /* gf128.c in Sources */,
				105900CC1DCBECF100FB4085 /* hmac.c in Sources */,
				E9BC76D41EF3A37200EB7A09 /* chacha20.c in Sources */,
				081F00CA2918823200534A86 /* hpke.c in Sources */,
				105900CB1DCBECEA00FB4085 /* drbg.c in Sources */,
				105900CA1DCBECE500FB4085 /* curve25519.c in Sources */,
				E99B75E41F5CE64E00CF503E /* pembase64.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		106530D61D9B3E6F005B2C60 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E99B75E01F5CDDB500CF503E /* asn1.c in Sources */,
				E99B75E11F5CDDB500CF503E /* pembase64.c in Sources */,
				08F0FDF62910F67A00EE657D /* hpke.c in Sources */,
				E95E95382290456B00215ACD /* picotls-probes.d in Sources */,
				E97577032212405D00D1EF74 /* ffx.c in Sources */,
				106530EB1D9B7C5C005B2C60 /* picotls.c in Sources */,
				E9E4B12B2180530400514B47 /* certificate_compression.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		106530F21DAD8985005B2C60 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				106530FF1DAD8A3C005B2C60 /* cli.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		10EACAF21DCEAF0F00CA0341 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				10EACAF31DCEAF0F00CA0341 /* uECC.c in Sources */,
				10EACAF41DCEAF0F00CA0341 /* uecc.c in Sources */,
				E949EF282073629300511ECA /* minicrypto-pem.c in Sources */,
				10EACAF51DCEAF0F00CA0341 /* gf128.c in Sources */,
				10EACAF61DCEAF0F00CA0341 /* gcm.c in Sources */,
				E9F20BED22E34B3E0018D260 /* chacha20.c in Sources */,
				E9F20BFB22E34C1B0018D260 /* random.c in Sources */,
				E9F20BEC22E34B3E0018D260 /* aes256.c in Sources */,
				10EACAF71DCEAF0F00CA0341 /* sha256.c in Sources */,
				10EACAF81DCEAF0F00CA0341 /* aes.c in Sources */,
				E9BC76DD1EF3CCD100EB7A09 /* poly1305.c in Sources */,
				10EACAF91DCEAF0F00CA0341 /* modes.c in Sources */,
				E9BC76CF1EF3A35E00EB7A09 /* chacha20.c in Sources */,
				10EACAFB1DCEAF0F00CA0341 /* chash.c in Sources */,
				E9F20BEB22E34B3E0018D260 /* aes128.c in Sources */,
				10EACAFC1DCEAF0F00CA0341 /* curve25519.c in Sources */,
				10EACAFD1DCEAF0F00CA0341 /* hmac.c in Sources */,
				10EACAFE1DCEAF0F00CA0341 /* drbg.c in Sources */,
				E9E865EB203BD46600E2FFCD /* sha512.c in Sources */,
				E9F20BEE22E34B3E0018D260 /* x25519.c in Sources */,
				10EACAFF1DCEAF0F00CA0341 /* cifra.c in Sources */,
				10EACB001DCEAF0F00CA0341 /* blockwise.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		E9B43DC124619D5100824E51 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E9B43DC224619D5100824E51 /* picotls-probes.d in Sources */,
				E9B43E1024689FE700824E51 /* picotls.c in Sources */,
				E9B43DE424619D7E00824E51 /* fusion.c in Sources */,
				E9B43DC824619D5100824E51 /* picotest.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXTargetDependency section */
		105900A81DC8E2E100FB4085 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 105900701DC8E1A300FB4085 /* picotls-openssl */;
			targetProxy = 105900A71DC8E2E100FB4085 /* PBXContainerItemProxy */;
		};
		10EACB191DCEAF4A00CA0341 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 106530D91D9B3E6F005B2C60 /* picotls-core */;
			targetProxy = 10EACB181DCEAF4A00CA0341 /* PBXContainerItemProxy */;
		};
/* End PBXTargetDependency section */

/* Begin XCBuildConfiguration section */
		105900491DC8D57000FB4085 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				OTHER_LDFLAGS = "";
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		1059004A1DC8D57000FB4085 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				OTHER_LDFLAGS = "";
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		1059008A1DC8E1A300FB4085 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				EXECUTABLE_PREFIX = lib;
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				HEADER_SEARCH_PATHS = (
					/usr/local/opt/openssl/include,
					include,
				);
				LIBRARY_SEARCH_PATHS = /usr/local/opt/openssl/lib;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		1059008B1DC8E1A300FB4085 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				EXECUTABLE_PREFIX = lib;
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				HEADER_SEARCH_PATHS = (
					/usr/local/opt/openssl/include,
					include,
				);
				LIBRARY_SEARCH_PATHS = /usr/local/opt/openssl/lib;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		106530B71D9985E0005B2C60 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "-";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = dwarf;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				GCC_C_LANGUAGE_STANDARD = gnu99;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"PICOTLS_USE_DTRACE=1",
					"$(inherited)",
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				HEADER_SEARCH_PATHS = (
					include,
					/usr/local/include,
				);
				LIBRARY_SEARCH_PATHS = "";
				MACOSX_DEPLOYMENT_TARGET = 10.11;
				MTL_ENABLE_DEBUG_INFO = YES;
				ONLY_ACTIVE_ARCH = YES;
				SDKROOT = macosx;
			};
			name = Debug;
		};
		106530B81D9985E0005B2C60 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "-";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				GCC_C_LANGUAGE_STANDARD = gnu99;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_PREPROCESSOR_DEFINITIONS = "PICOTLS_USE_DTRACE=1";
				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;
				HEADER_SEARCH_PATHS = (
					include,
					/usr/local/include,
				);
				LIBRARY_SEARCH_PATHS = "";
				MACOSX_DEPLOYMENT_TARGET = 10.11;
				MTL_ENABLE_DEBUG_INFO = NO;
				SDKROOT = macosx;
			};
			name = Release;
		};
		106530D11D9B3D45005B2C60 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				HEADER_SEARCH_PATHS = (
					/usr/local/opt/openssl/include,
					include,
				);
				LIBRARY_SEARCH_PATHS = /usr/local/opt/openssl/lib;
				OTHER_LDFLAGS = "-lcrypto";
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		106530D21D9B3D45005B2C60 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				HEADER_SEARCH_PATHS = (
					/usr/local/opt/openssl/include,
					include,
				);
				LIBRARY_SEARCH_PATHS = /usr/local/opt/openssl/lib;
				OTHER_LDFLAGS = "-lcrypto";
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		106530DB1D9B3E6F005B2C60 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				EXECUTABLE_PREFIX = lib;
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		106530DC1D9B3E6F005B2C60 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				EXECUTABLE_PREFIX = lib;
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		106530FA1DAD8985005B2C60 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = (
					"PICOTLS_USE_BROTLI=1",
					"$(inherited)",
				);
				HEADER_SEARCH_PATHS = (
					include,
					/usr/local/opt/openssl/include,
					/usr/local/include,
				);
				LIBRARY_SEARCH_PATHS = (
					/usr/local/opt/openssl/lib,
					/usr/local/lib,
				);
				OTHER_LDFLAGS = (
					"-lcrypto",
					"-lbrotlidec",
					"-lbrotlienc",
					"-lresolv",
				);
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		106530FB1DAD8985005B2C60 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = (
					"PICOTLS_USE_BROTLI=1",
					"$(inherited)",
				);
				HEADER_SEARCH_PATHS = (
					include,
					/usr/local/opt/openssl/include,
					/usr/local/include,
				);
				LIBRARY_SEARCH_PATHS = (
					/usr/local/opt/openssl/lib,
					/usr/local/lib,
				);
				OTHER_LDFLAGS = (
					"-lcrypto",
					"-lbrotlidec",
					"-lbrotlienc",
					"-lresolv",
				);
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		10EACB151DCEAF0F00CA0341 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				EXECUTABLE_PREFIX = lib;
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		10EACB161DCEAF0F00CA0341 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				EXECUTABLE_PREFIX = lib;
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		E9B43DDF24619D5100824E51 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				OTHER_CFLAGS = (
					"-march=native",
					"-mvaes",
					"-mvpclmulqdq",
				);
				OTHER_LDFLAGS = "";
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		E9B43DE024619D5100824E51 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				OTHER_CFLAGS = (
					"-march=native",
					"-mvaes",
					"-mvpclmulqdq",
				);
				OTHER_LDFLAGS = "";
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		105900481DC8D57000FB4085 /* Build configuration list for PBXNativeTarget "test-minicrypto" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				105900491DC8D57000FB4085 /* Debug */,
				1059004A1DC8D57000FB4085 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		105900891DC8E1A300FB4085 /* Build configuration list for PBXNativeTarget "picotls-openssl" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				1059008A1DC8E1A300FB4085 /* Debug */,
				1059008B1DC8E1A300FB4085 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		106530AD1D9985E0005B2C60 /* Build configuration list for PBXProject "picotls" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				106530B71D9985E0005B2C60 /* Debug */,
				106530B81D9985E0005B2C60 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		106530D01D9B3D45005B2C60 /* Build configuration list for PBXNativeTarget "test-openssl" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				106530D11D9B3D45005B2C60 /* Debug */,
				106530D21D9B3D45005B2C60 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		106530DD1D9B3E6F005B2C60 /* Build configuration list for PBXNativeTarget "picotls-core" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				106530DB1D9B3E6F005B2C60 /* Debug */,
				106530DC1D9B3E6F005B2C60 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		106530F91DAD8985005B2C60 /* Build configuration list for PBXNativeTarget "cli" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				106530FA1DAD8985005B2C60 /* Debug */,
				106530FB1DAD8985005B2C60 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		10EACB141DCEAF0F00CA0341 /* Build configuration list for PBXNativeTarget "picotls-minicrypto" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				10EACB151DCEAF0F00CA0341 /* Debug */,
				10EACB161DCEAF0F00CA0341 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		E9B43DDE24619D5100824E51 /* Build configuration list for PBXNativeTarget "test-fusion" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				E9B43DDF24619D5100824E51 /* Debug */,
				E9B43DE024619D5100824E51 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 106530AA1D9985E0005B2C60 /* Project object */;
}
