UNPKG

@tokamak-network/thanos-contracts

Version:
1 lines 59.3 kB
{"abi":[{"type":"function","name":"getSchema","inputs":[{"name":"uid","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct SchemaRecord","components":[{"name":"uid","type":"bytes32","internalType":"bytes32"},{"name":"resolver","type":"address","internalType":"contract ISchemaResolver"},{"name":"revocable","type":"bool","internalType":"bool"},{"name":"schema","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"register","inputs":[{"name":"schema","type":"string","internalType":"string"},{"name":"resolver","type":"address","internalType":"contract ISchemaResolver"},{"name":"revocable","type":"bool","internalType":"bool"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"version","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"event","name":"Registered","inputs":[{"name":"uid","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"registerer","type":"address","indexed":true,"internalType":"address"},{"name":"schema","type":"tuple","indexed":false,"internalType":"struct SchemaRecord","components":[{"name":"uid","type":"bytes32","internalType":"bytes32"},{"name":"resolver","type":"address","internalType":"contract ISchemaResolver"},{"name":"revocable","type":"bool","internalType":"bool"},{"name":"schema","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"error","name":"AlreadyExists","inputs":[]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b506107fe806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d501461004657806360d7a27814610098578063a2ea7c6e146100b9575b600080fd5b6100826040518060400160405280600581526020017f312e332e3000000000000000000000000000000000000000000000000000000081525081565b60405161008f9190610473565b60405180910390f35b6100ab6100a636600461048d565b6100d9565b60405190815260200161008f565b6100cc6100c736600461053f565b61029d565b60405161008f9190610558565b60008060405180608001604052806000801b81526020018573ffffffffffffffffffffffffffffffffffffffff168152602001841515815260200187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509390945250929350915061015b9050826103c5565b600081815260208190526040902054909150156101a4576040517f23369fa600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80825260008181526020818152604091829020845181559084015160018201805493860151151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00000000000000000000000000000000000000000090941673ffffffffffffffffffffffffffffffffffffffff9092169190911792909217909155606083015183919060028201906102409082610682565b509050503373ffffffffffffffffffffffffffffffffffffffff16817fd0b86852e21f9e5fa4bc3b0cff9757ffe243d50c4b43968a42202153d651ea5e8460405161028b9190610558565b60405180910390a39695505050505050565b604080516080810182526000808252602082018190529181019190915260608082015260008281526020818152604091829020825160808101845281548152600182015473ffffffffffffffffffffffffffffffffffffffff8116938201939093527401000000000000000000000000000000000000000090920460ff1615159282019290925260028201805491929160608401919061033c906105e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610368906105e0565b80156103b55780601f1061038a576101008083540402835291602001916103b5565b820191906000526020600020905b81548152906001019060200180831161039857829003601f168201915b5050505050815250509050919050565b60008160600151826020015183604001516040516020016103e89392919061079c565b604051602081830303815290604052805190602001209050919050565b60005b83811015610420578181015183820152602001610408565b50506000910152565b60008151808452610441816020860160208601610405565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006104866020830184610429565b9392505050565b600080600080606085870312156104a357600080fd5b843567ffffffffffffffff808211156104bb57600080fd5b818701915087601f8301126104cf57600080fd5b8135818111156104de57600080fd5b8860208285010111156104f057600080fd5b6020928301965094505085013573ffffffffffffffffffffffffffffffffffffffff8116811461051f57600080fd5b91506040850135801515811461053457600080fd5b939692955090935050565b60006020828403121561055157600080fd5b5035919050565b602081528151602082015273ffffffffffffffffffffffffffffffffffffffff6020830151166040820152604082015115156060820152600060608301516080808401526105a960a0840182610429565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600181811c908216806105f457607f821691505b60208210810361062d577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f82111561067d57600081815260208120601f850160051c8101602086101561065a5750805b601f850160051c820191505b8181101561067957828155600101610666565b5050505b505050565b815167ffffffffffffffff81111561069c5761069c6105b1565b6106b0816106aa84546105e0565b84610633565b602080601f83116001811461070357600084156106cd5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610679565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561075057888601518255948401946001909101908401610731565b508582101561078c57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600084516107ae818460208901610405565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815290151560f81b60148201526015019291505056fea164736f6c6343000813000a","sourceMap":"518:1503:10:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806354fd4d501461004657806360d7a27814610098578063a2ea7c6e146100b9575b600080fd5b6100826040518060400160405280600581526020017f312e332e3000000000000000000000000000000000000000000000000000000081525081565b60405161008f9190610473565b60405180910390f35b6100ab6100a636600461048d565b6100d9565b60405190815260200161008f565b6100cc6100c736600461053f565b61029d565b60405161008f9190610558565b60008060405180608001604052806000801b81526020018573ffffffffffffffffffffffffffffffffffffffff168152602001841515815260200187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509390945250929350915061015b9050826103c5565b600081815260208190526040902054909150156101a4576040517f23369fa600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80825260008181526020818152604091829020845181559084015160018201805493860151151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00000000000000000000000000000000000000000090941673ffffffffffffffffffffffffffffffffffffffff9092169190911792909217909155606083015183919060028201906102409082610682565b509050503373ffffffffffffffffffffffffffffffffffffffff16817fd0b86852e21f9e5fa4bc3b0cff9757ffe243d50c4b43968a42202153d651ea5e8460405161028b9190610558565b60405180910390a39695505050505050565b604080516080810182526000808252602082018190529181019190915260608082015260008281526020818152604091829020825160808101845281548152600182015473ffffffffffffffffffffffffffffffffffffffff8116938201939093527401000000000000000000000000000000000000000090920460ff1615159282019290925260028201805491929160608401919061033c906105e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610368906105e0565b80156103b55780601f1061038a576101008083540402835291602001916103b5565b820191906000526020600020905b81548152906001019060200180831161039857829003601f168201915b5050505050815250509050919050565b60008160600151826020015183604001516040516020016103e89392919061079c565b604051602081830303815290604052805190602001209050919050565b60005b83811015610420578181015183820152602001610408565b50506000910152565b60008151808452610441816020860160208601610405565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006104866020830184610429565b9392505050565b600080600080606085870312156104a357600080fd5b843567ffffffffffffffff808211156104bb57600080fd5b818701915087601f8301126104cf57600080fd5b8135818111156104de57600080fd5b8860208285010111156104f057600080fd5b6020928301965094505085013573ffffffffffffffffffffffffffffffffffffffff8116811461051f57600080fd5b91506040850135801515811461053457600080fd5b939692955090935050565b60006020828403121561055157600080fd5b5035919050565b602081528151602082015273ffffffffffffffffffffffffffffffffffffffff6020830151166040820152604082015115156060820152600060608301516080808401526105a960a0840182610429565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600181811c908216806105f457607f821691505b60208210810361062d577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f82111561067d57600081815260208120601f850160051c8101602086101561065a5750805b601f850160051c820191505b8181101561067957828155600101610666565b5050505b505050565b815167ffffffffffffffff81111561069c5761069c6105b1565b6106b0816106aa84546105e0565b84610633565b602080601f83116001811461070357600084156106cd5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610679565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561075057888601518255948401946001909101908401610731565b508582101561078c57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600084516107ae818460208901610405565b60609490941b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190930190815290151560f81b60148201526015019291505056fea164736f6c6343000813000a","sourceMap":"518:1503:10:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;895:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;978:554;;;;;;:::i;:::-;;:::i;:::-;;;1968:25:16;;;1956:2;1941:18;978:554:10;1822:177:16;1574:114:10;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;978:554::-;1080:7;1099:32;1146:90;;;;;;;;137:1:6;1166:9:10;;1146:90;;;;1203:8;1146:90;;;;;;1224:9;1146:90;;;;;;1185:6;;1146:90;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1146:90:10;;;;-1:-1:-1;1099:137:10;;-1:-1:-1;1146:90:10;-1:-1:-1;1261:21:10;;-1:-1:-1;1099:137:10;1261:7;:21::i;:::-;137:1:6;1296:14:10;;;;;;;;;;:18;1247:35;;-1:-1:-1;1296:31:10;1292:84;;1350:15;;;;;;;;;;;;;;1292:84;1386:22;;;:16;1418:14;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1386:12;;1418:14;:29;;;;;;;;:::i;:::-;;;;;1479:10;1463:41;;1474:3;1463:41;1491:12;1463:41;;;;;;:::i;:::-;;;;;;;;1522:3;978:554;-1:-1:-1;;;;;;978:554:10:o;1574:114::-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1667:9:10;:14;;;;;;;;;;;;1660:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1667:14;1660:21;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1574:114;;;:::o;1818:201::-;1891:7;1944:12;:19;;;1965:12;:21;;;1988:12;:22;;;1927:84;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1917:95;;;;;;1910:102;;1818:201;;;:::o;14:250:16:-;99:1;109:113;123:6;120:1;117:13;109:113;;;199:11;;;193:18;180:11;;;173:39;145:2;138:10;109:113;;;-1:-1:-1;;256:1:16;238:16;;231:27;14:250::o;269:330::-;311:3;349:5;343:12;376:6;371:3;364:19;392:76;461:6;454:4;449:3;445:14;438:4;431:5;427:16;392:76;:::i;:::-;513:2;501:15;518:66;497:88;488:98;;;;588:4;484:109;;269:330;-1:-1:-1;;269:330:16:o;604:220::-;753:2;742:9;735:21;716:4;773:45;814:2;803:9;799:18;791:6;773:45;:::i;:::-;765:53;604:220;-1:-1:-1;;;604:220:16:o;829:988::-;939:6;947;955;963;1016:2;1004:9;995:7;991:23;987:32;984:52;;;1032:1;1029;1022:12;984:52;1072:9;1059:23;1101:18;1142:2;1134:6;1131:14;1128:34;;;1158:1;1155;1148:12;1128:34;1196:6;1185:9;1181:22;1171:32;;1241:7;1234:4;1230:2;1226:13;1222:27;1212:55;;1263:1;1260;1253:12;1212:55;1303:2;1290:16;1329:2;1321:6;1318:14;1315:34;;;1345:1;1342;1335:12;1315:34;1392:7;1385:4;1376:6;1372:2;1368:15;1364:26;1361:39;1358:59;;;1413:1;1410;1403:12;1358:59;1444:4;1436:13;;;;-1:-1:-1;1468:6:16;-1:-1:-1;;1509:20:16;;1496:34;1570:42;1559:54;;1549:65;;1539:93;;1628:1;1625;1618:12;1539:93;1651:5;-1:-1:-1;1708:2:16;1693:18;;1680:32;1750:15;;1743:23;1731:36;;1721:64;;1781:1;1778;1771:12;1721:64;829:988;;;;-1:-1:-1;829:988:16;;-1:-1:-1;;829:988:16:o;2004:180::-;2063:6;2116:2;2104:9;2095:7;2091:23;2087:32;2084:52;;;2132:1;2129;2122:12;2084:52;-1:-1:-1;2155:23:16;;2004:180;-1:-1:-1;2004:180:16:o;2189:594::-;2378:2;2367:9;2360:21;2423:6;2417:13;2412:2;2401:9;2397:18;2390:41;2495:42;2489:2;2481:6;2477:15;2471:22;2467:71;2462:2;2451:9;2447:18;2440:99;2607:2;2599:6;2595:15;2589:22;2582:30;2575:38;2570:2;2559:9;2555:18;2548:66;2341:4;2661:2;2653:6;2649:15;2643:22;2703:4;2696;2685:9;2681:20;2674:34;2725:52;2772:3;2761:9;2757:19;2743:12;2725:52;:::i;:::-;2717:60;2189:594;-1:-1:-1;;;;2189:594:16:o;2788:184::-;2840:77;2837:1;2830:88;2937:4;2934:1;2927:15;2961:4;2958:1;2951:15;2977:437;3056:1;3052:12;;;;3099;;;3120:61;;3174:4;3166:6;3162:17;3152:27;;3120:61;3227:2;3219:6;3216:14;3196:18;3193:38;3190:218;;3264:77;3261:1;3254:88;3365:4;3362:1;3355:15;3393:4;3390:1;3383:15;3190:218;;2977:437;;;:::o;3545:545::-;3647:2;3642:3;3639:11;3636:448;;;3683:1;3708:5;3704:2;3697:17;3753:4;3749:2;3739:19;3823:2;3811:10;3807:19;3804:1;3800:27;3794:4;3790:38;3859:4;3847:10;3844:20;3841:47;;;-1:-1:-1;3882:4:16;3841:47;3937:2;3932:3;3928:12;3925:1;3921:20;3915:4;3911:31;3901:41;;3992:82;4010:2;4003:5;4000:13;3992:82;;;4055:17;;;4036:1;4025:13;3992:82;;;3996:3;;;3636:448;3545:545;;;:::o;4326:1471::-;4452:3;4446:10;4479:18;4471:6;4468:30;4465:56;;;4501:18;;:::i;:::-;4530:97;4620:6;4580:38;4612:4;4606:11;4580:38;:::i;:::-;4574:4;4530:97;:::i;:::-;4682:4;;4746:2;4735:14;;4763:1;4758:782;;;;5584:1;5601:6;5598:89;;;-1:-1:-1;5653:19:16;;;5647:26;5598:89;4232:66;4223:1;4219:11;;;4215:84;4211:89;4201:100;4307:1;4303:11;;;4198:117;5700:81;;4728:1063;;4758:782;3492:1;3485:14;;;3529:4;3516:18;;4806:66;4794:79;;;4971:236;4985:7;4982:1;4979:14;4971:236;;;5074:19;;;5068:26;5053:42;;5166:27;;;;5134:1;5122:14;;;;5001:19;;4971:236;;;4975:3;5235:6;5226:7;5223:19;5220:261;;;5296:19;;;5290:26;5397:66;5379:1;5375:14;;;5391:3;5371:24;5367:97;5363:102;5348:118;5333:134;;5220:261;-1:-1:-1;;;;;5527:1:16;5511:14;;;5507:22;5494:36;;-1:-1:-1;4326:1471:16:o;5802:576::-;6007:3;6045:6;6039:13;6061:66;6120:6;6115:3;6108:4;6100:6;6096:17;6061:66;:::i;:::-;6196:2;6192:15;;;;6209:66;6188:88;6149:16;;;;6174:103;;;6325:14;;6318:22;6313:3;6309:32;6304:2;6293:14;;6286:56;6369:2;6358:14;;5802:576;-1:-1:-1;;5802:576:16:o","linkReferences":{}},"methodIdentifiers":{"getSchema(bytes32)":"a2ea7c6e","register(string,address,bool)":"60d7a278","version()":"54fd4d50"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AlreadyExists\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"uid\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"registerer\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"uid\",\"type\":\"bytes32\"},{\"internalType\":\"contract ISchemaResolver\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"revocable\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"schema\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct SchemaRecord\",\"name\":\"schema\",\"type\":\"tuple\"}],\"name\":\"Registered\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"uid\",\"type\":\"bytes32\"}],\"name\":\"getSchema\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"uid\",\"type\":\"bytes32\"},{\"internalType\":\"contract ISchemaResolver\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"revocable\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"schema\",\"type\":\"string\"}],\"internalType\":\"struct SchemaRecord\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"schema\",\"type\":\"string\"},{\"internalType\":\"contract ISchemaResolver\",\"name\":\"resolver\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"revocable\",\"type\":\"bool\"}],\"name\":\"register\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"custom:proxied\":\"@custom:predeploy 0x4200000000000000000000000000000000000020\",\"events\":{\"Registered(bytes32,address,(bytes32,address,bool,string))\":{\"details\":\"Emitted when a new schema has been registered\",\"params\":{\"registerer\":\"The address of the account used to register the schema.\",\"schema\":\"The schema data.\",\"uid\":\"The schema UID.\"}}},\"kind\":\"dev\",\"methods\":{\"getSchema(bytes32)\":{\"details\":\"Returns an existing schema by UID\",\"params\":{\"uid\":\"The UID of the schema to retrieve.\"},\"returns\":{\"_0\":\"The schema data members.\"}},\"register(string,address,bool)\":{\"details\":\"Submits and reserves a new schema\",\"params\":{\"resolver\":\"An optional schema resolver.\",\"revocable\":\"Whether the schema allows revocations explicitly.\",\"schema\":\"The schema data schema.\"},\"returns\":{\"_0\":\"The UID of the new schema.\"}}},\"stateVariables\":{\"version\":{\"custom:semver\":\"1.3.0\"}},\"title\":\"SchemaRegistry\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"version()\":{\"notice\":\"Semantic version.\"}},\"notice\":\"The global attestation schemas for the Ethereum Attestation Service protocol.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/EAS/SchemaRegistry.sol\":\"SchemaRegistry\"},\"evmVersion\":\"paris\",\"libraries\":{\"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker\":\"0x4200000000000000000000000000000000000776\"},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":999999},\"remappings\":[\":@lib-keccak/=lib/lib-keccak/contracts/lib/\",\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/\",\":@openzeppelin/contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/contracts/\",\":@rari-capital/solmate/=lib/solmate/\",\":@solady-test/=lib/lib-keccak/lib/solady/test/\",\":@solady/=lib/solady/src/\",\":automate/=lib/automate/contracts/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts_v5.0.1/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":gelato/=lib/automate/contracts/\",\":hardhat/=lib/automate/node_modules/hardhat/\",\":kontrol-cheatcodes/=lib/kontrol-cheatcodes/src/\",\":lib-keccak/=lib/lib-keccak/contracts/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/\",\":openzeppelin-contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/\",\":prb-test/=lib/automate/lib/prb-test/src/\",\":prb/-est/=lib/automate/lib/prb-test/src/\",\":safe-contracts/=lib/safe-contracts/contracts/\",\":solady/=lib/solady/\",\":solmate/=lib/solmate/src/\"]},\"sources\":{\"src/EAS/Common.sol\":{\"keccak256\":\"0xf9ddc182aaf50d620d3cbca8037ee32ae5062bfc495524f91b677668176f9309\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ef8a29db6fb14f26b81e3ccc33f96ee25395383da00933af8799342260e76efe\",\"dweb:/ipfs/QmQc3WmVZhpoRcNsFMD5Jcw2vR4HidX4NQhMCtAvmNLMJd\"]},\"src/EAS/ISchemaRegistry.sol\":{\"keccak256\":\"0x68385349bbe43887f9c2541b6fddebaab309e5401e31ac46081460a812a2127b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://767a618229f8e5fc4dd4f268a2e5f545e249039032ca17772dda206032c55125\",\"dweb:/ipfs/QmWQTxkUHJtZxYHa3MBCLGcm8f5Kxc2saDYPifKEdCiquq\"]},\"src/EAS/SchemaRegistry.sol\":{\"keccak256\":\"0xce55204139cfaede75d511e372e94fdb17a8b03bcff87bed34ddeaa31b123fdd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f96648cea0c4567e08ffaf5f1b96b35b61ccfe01e9f30c27c89d3c472a87bb68\",\"dweb:/ipfs/Qmdep2mSAGNwxtbMEUGmH5SMPGP4fEDGM2yeJc8fk6rQHT\"]},\"src/EAS/resolver/ISchemaResolver.sol\":{\"keccak256\":\"0xf4712a6685599bd284b0c3808e7f6e08ab5e28919647404f26ca372917ddd000\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://17b31b0109cd3c1a1550738b24aa77541cc48b2ade5189bcec7808c9c9ce2c61\",\"dweb:/ipfs/QmeyKMMWsgQBeJkpr1Uugxw9bpg6oCjptyLmbR2TUqRLHB\"]},\"src/universal/ISemver.sol\":{\"keccak256\":\"0xba34562a8026f59886d2e07d1d58d90b9691d00e0788c6263cef6c22740cab44\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0826f998632f83c103c3085bf2e872db79a69022b6d2e0444c83a64ca5283c2a\",\"dweb:/ipfs/QmcJ7PNqkAfKqbjFGRordtAg1v9DvcBSKvdTkVvciLyvQR\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AlreadyExists"},{"inputs":[{"internalType":"bytes32","name":"uid","type":"bytes32","indexed":true},{"internalType":"address","name":"registerer","type":"address","indexed":true},{"internalType":"struct SchemaRecord","name":"schema","type":"tuple","components":[{"internalType":"bytes32","name":"uid","type":"bytes32"},{"internalType":"contract ISchemaResolver","name":"resolver","type":"address"},{"internalType":"bool","name":"revocable","type":"bool"},{"internalType":"string","name":"schema","type":"string"}],"indexed":false}],"type":"event","name":"Registered","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"uid","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getSchema","outputs":[{"internalType":"struct SchemaRecord","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"uid","type":"bytes32"},{"internalType":"contract ISchemaResolver","name":"resolver","type":"address"},{"internalType":"bool","name":"revocable","type":"bool"},{"internalType":"string","name":"schema","type":"string"}]}]},{"inputs":[{"internalType":"string","name":"schema","type":"string"},{"internalType":"contract ISchemaResolver","name":"resolver","type":"address"},{"internalType":"bool","name":"revocable","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"register","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"version","outputs":[{"internalType":"string","name":"","type":"string"}]}],"devdoc":{"kind":"dev","methods":{"getSchema(bytes32)":{"details":"Returns an existing schema by UID","params":{"uid":"The UID of the schema to retrieve."},"returns":{"_0":"The schema data members."}},"register(string,address,bool)":{"details":"Submits and reserves a new schema","params":{"resolver":"An optional schema resolver.","revocable":"Whether the schema allows revocations explicitly.","schema":"The schema data schema."},"returns":{"_0":"The UID of the new schema."}}},"version":1},"userdoc":{"kind":"user","methods":{"version()":{"notice":"Semantic version."}},"version":1}},"settings":{"remappings":["@lib-keccak/=lib/lib-keccak/contracts/lib/","@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/","@openzeppelin/contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/contracts/","@rari-capital/solmate/=lib/solmate/","@solady-test/=lib/lib-keccak/lib/solady/test/","@solady/=lib/solady/src/","automate/=lib/automate/contracts/","ds-test/=lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts_v5.0.1/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","gelato/=lib/automate/contracts/","hardhat/=lib/automate/node_modules/hardhat/","kontrol-cheatcodes/=lib/kontrol-cheatcodes/src/","lib-keccak/=lib/lib-keccak/contracts/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/","openzeppelin-contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/","prb-test/=lib/automate/lib/prb-test/src/","prb/-est/=lib/automate/lib/prb-test/src/","safe-contracts/=lib/safe-contracts/contracts/","solady/=lib/solady/","solmate/=lib/solmate/src/"],"optimizer":{"enabled":true,"runs":999999},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"src/EAS/SchemaRegistry.sol":"SchemaRegistry"},"evmVersion":"paris","libraries":{"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker":"0x4200000000000000000000000000000000000776"}},"sources":{"src/EAS/Common.sol":{"keccak256":"0xf9ddc182aaf50d620d3cbca8037ee32ae5062bfc495524f91b677668176f9309","urls":["bzz-raw://ef8a29db6fb14f26b81e3ccc33f96ee25395383da00933af8799342260e76efe","dweb:/ipfs/QmQc3WmVZhpoRcNsFMD5Jcw2vR4HidX4NQhMCtAvmNLMJd"],"license":"MIT"},"src/EAS/ISchemaRegistry.sol":{"keccak256":"0x68385349bbe43887f9c2541b6fddebaab309e5401e31ac46081460a812a2127b","urls":["bzz-raw://767a618229f8e5fc4dd4f268a2e5f545e249039032ca17772dda206032c55125","dweb:/ipfs/QmWQTxkUHJtZxYHa3MBCLGcm8f5Kxc2saDYPifKEdCiquq"],"license":"MIT"},"src/EAS/SchemaRegistry.sol":{"keccak256":"0xce55204139cfaede75d511e372e94fdb17a8b03bcff87bed34ddeaa31b123fdd","urls":["bzz-raw://f96648cea0c4567e08ffaf5f1b96b35b61ccfe01e9f30c27c89d3c472a87bb68","dweb:/ipfs/Qmdep2mSAGNwxtbMEUGmH5SMPGP4fEDGM2yeJc8fk6rQHT"],"license":"MIT"},"src/EAS/resolver/ISchemaResolver.sol":{"keccak256":"0xf4712a6685599bd284b0c3808e7f6e08ab5e28919647404f26ca372917ddd000","urls":["bzz-raw://17b31b0109cd3c1a1550738b24aa77541cc48b2ade5189bcec7808c9c9ce2c61","dweb:/ipfs/QmeyKMMWsgQBeJkpr1Uugxw9bpg6oCjptyLmbR2TUqRLHB"],"license":"MIT"},"src/universal/ISemver.sol":{"keccak256":"0xba34562a8026f59886d2e07d1d58d90b9691d00e0788c6263cef6c22740cab44","urls":["bzz-raw://0826f998632f83c103c3085bf2e872db79a69022b6d2e0444c83a64ca5283c2a","dweb:/ipfs/QmcJ7PNqkAfKqbjFGRordtAg1v9DvcBSKvdTkVvciLyvQR"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":3645,"contract":"src/EAS/SchemaRegistry.sol:SchemaRegistry","label":"_registry","offset":0,"slot":"0","type":"t_mapping(t_bytes32,t_struct(SchemaRecord)3587_storage)"},{"astId":3651,"contract":"src/EAS/SchemaRegistry.sol:SchemaRegistry","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)49_storage"}],"types":{"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(ISchemaResolver)4157":{"encoding":"inplace","label":"contract ISchemaResolver","numberOfBytes":"20"},"t_mapping(t_bytes32,t_struct(SchemaRecord)3587_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct SchemaRecord)","numberOfBytes":"32","value":"t_struct(SchemaRecord)3587_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(SchemaRecord)3587_storage":{"encoding":"inplace","label":"struct SchemaRecord","numberOfBytes":"96","members":[{"astId":3579,"contract":"src/EAS/SchemaRegistry.sol:SchemaRegistry","label":"uid","offset":0,"slot":"0","type":"t_bytes32"},{"astId":3582,"contract":"src/EAS/SchemaRegistry.sol:SchemaRegistry","label":"resolver","offset":0,"slot":"1","type":"t_contract(ISchemaResolver)4157"},{"astId":3584,"contract":"src/EAS/SchemaRegistry.sol:SchemaRegistry","label":"revocable","offset":20,"slot":"1","type":"t_bool"},{"astId":3586,"contract":"src/EAS/SchemaRegistry.sol:SchemaRegistry","label":"schema","offset":0,"slot":"2","type":"t_string_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"userdoc":{"version":1,"kind":"user","methods":{"version()":{"notice":"Semantic version."}},"notice":"The global attestation schemas for the Ethereum Attestation Service protocol."},"devdoc":{"version":1,"kind":"dev","methods":{"getSchema(bytes32)":{"details":"Returns an existing schema by UID","params":{"uid":"The UID of the schema to retrieve."},"returns":{"_0":"The schema data members."}},"register(string,address,bool)":{"details":"Submits and reserves a new schema","params":{"resolver":"An optional schema resolver.","revocable":"Whether the schema allows revocations explicitly.","schema":"The schema data schema."},"returns":{"_0":"The UID of the new schema."}}},"events":{"Registered(bytes32,address,(bytes32,address,bool,string))":{"details":"Emitted when a new schema has been registered","params":{"registerer":"The address of the account used to register the schema.","schema":"The schema data.","uid":"The schema UID."}}},"title":"SchemaRegistry"},"ast":{"absolutePath":"src/EAS/SchemaRegistry.sol","id":3755,"exportedSymbols":{"EMPTY_UID":[1164],"ISchemaRegistry":[3621],"ISchemaResolver":[4157],"ISemver":[4982],"MAX_GAP":[1210],"SchemaRecord":[3587],"SchemaRegistry":[3754]},"nodeType":"SourceUnit","src":"32:1990:10","nodes":[{"id":3623,"nodeType":"PragmaDirective","src":"32:23:10","nodes":[],"literals":["solidity","0.8",".19"]},{"id":3625,"nodeType":"ImportDirective","src":"57:52:10","nodes":[],"absolutePath":"src/universal/ISemver.sol","file":"src/universal/ISemver.sol","nameLocation":"-1:-1:-1","scope":3755,"sourceUnit":4983,"symbolAliases":[{"foreign":{"id":3624,"name":"ISemver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4982,"src":"66:7:10","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":3627,"nodeType":"ImportDirective","src":"110:71:10","nodes":[],"absolutePath":"src/EAS/resolver/ISchemaResolver.sol","file":"src/EAS/resolver/ISchemaResolver.sol","nameLocation":"-1:-1:-1","scope":3755,"sourceUnit":4158,"symbolAliases":[{"foreign":{"id":3626,"name":"ISchemaResolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4157,"src":"119:15:10","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":3630,"nodeType":"ImportDirective","src":"182:56:10","nodes":[],"absolutePath":"src/EAS/Common.sol","file":"src/EAS/Common.sol","nameLocation":"-1:-1:-1","scope":3755,"sourceUnit":1336,"symbolAliases":[{"foreign":{"id":3628,"name":"EMPTY_UID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1164,"src":"191:9:10","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":3629,"name":"MAX_GAP","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1210,"src":"202:7:10","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":3633,"nodeType":"ImportDirective","src":"239:76:10","nodes":[],"absolutePath":"src/EAS/ISchemaRegistry.sol","file":"src/EAS/ISchemaRegistry.sol","nameLocation":"-1:-1:-1","scope":3755,"sourceUnit":3622,"symbolAliases":[{"foreign":{"id":3631,"name":"ISchemaRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3621,"src":"248:15:10","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":3632,"name":"SchemaRecord","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3587,"src":"265:12:10","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":3754,"nodeType":"ContractDefinition","src":"518:1503:10","nodes":[{"id":3640,"nodeType":"ErrorDefinition","src":"576:22:10","nodes":[],"errorSelector":"23369fa6","name":"AlreadyExists","nameLocation":"582:13:10","parameters":{"id":3639,"nodeType":"ParameterList","parameters":[],"src":"595:2:10"}},{"id":3645,"nodeType":"VariableDeclaration","src":"668:67:10","nodes":[],"constant":false,"mutability":"mutable","name":"_registry","nameLocation":"726:9:10","scope":3754,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_SchemaRecord_$3587_storage_$","typeString":"mapping(bytes32 => struct SchemaRecord)"},"typeName":{"id":3644,"keyName":"uid","keyNameLocation":"684:3:10","keyType":{"id":3641,"name":"bytes32","nodeType":"ElementaryTypeName","src":"676:7:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Mapping","src":"668:49:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_SchemaRecord_$3587_storage_$","typeString":"mapping(bytes32 => struct SchemaRecord)"},"valueName":"schemaRecord","valueNameLocation":"704:12:10","valueType":{"id":3643,"nodeType":"UserDefinedTypeName","pathNode":{"id":3642,"name":"SchemaRecord","nameLocations":["691:12:10"],"nodeType":"IdentifierPath","referencedDeclaration":3587,"src":"691:12:10"},"referencedDeclaration":3587,"src":"691:12:10","typeDescriptions":{"typeIdentifier":"t_struct$_SchemaRecord_$3587_storage_ptr","typeString":"struct SchemaRecord"}}},"visibility":"private"},{"id":3651,"nodeType":"VariableDeclaration","src":"791:34:10","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"820:5:10","scope":3754,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage","typeString":"uint256[49]"},"typeName":{"baseType":{"id":3646,"name":"uint256","nodeType":"ElementaryTypeName","src":"791:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":3650,"length":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":3649,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"id":3647,"name":"MAX_GAP","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1210,"src":"799:7:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":3648,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"809:1:10","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"799:11:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"ArrayTypeName","src":"791:20:10","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage_ptr","typeString":"uint256[49]"}},"visibility":"private"},{"id":3655,"nodeType":"VariableDeclaration","src":"895:40:10","nodes":[],"baseFunctions":[4981],"constant":true,"documentation":{"id":3652,"nodeType":"StructuredDocumentation","src":"832:58:10","text":"@notice Semantic version.\n @custom:semver 1.3.0"},"functionSelector":"54fd4d50","mutability":"constant","name":"version","nameLocation":"918:7:10","scope":3754,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":3653,"name":"string","nodeType":"ElementaryTypeName","src":"895:6:10","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"312e332e30","id":3654,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"928:7:10","typeDescriptions":{"typeIdentifier":"t_stringliteral_6a08c3e203132c561752255a4d52ffae85bb9c5d33cb3291520dea1b84356389","typeString":"literal_string \"1.3.0\""},"value":"1.3.0"},"visibility":"public"},{"id":3717,"nodeType":"FunctionDefinition","src":"978:554:10","nodes":[],"body":{"id":3716,"nodeType":"Block","src":"1089:443:10","nodes":[],"statements":[{"assignments":[3670],"declarations":[{"constant":false,"id":3670,"mutability":"mutable","name":"schemaRecord","nameLocation":"1119:12:10","nodeType":"VariableDeclaration","scope":3716,"src":"1099:32:10","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_SchemaRecord_$3587_memory_ptr","typeString":"struct SchemaRecord"},"typeName":{"id":3669,"nodeType":"UserDefinedTypeName","pathNode":{"id":3668,"name":"SchemaRecord","nameLocations":["1099:12:10"],"nodeType":"IdentifierPath","referencedDeclaration":3587,"src":"1099:12:10"},"referencedDeclaration":3587,"src":"1099:12:10","typeDescriptions":{"typeIdentifier":"t_struct$_SchemaRecord_$3587_storage_ptr","typeString":"struct SchemaRecord"}},"visibility":"internal"}],"id":3677,"initialValue":{"arguments":[{"id":3672,"name":"EMPTY_UID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1164,"src":"1166:9:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":3673,"name":"schema","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3658,"src":"1185:6:10","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"id":3674,"name":"resolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3661,"src":"1203:8:10","typeDescriptions":{"typeIdentifier":"t_contract$_ISchemaResolver_$4157","typeString":"contract ISchemaResolver"}},{"id":3675,"name":"revocable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3663,"src":"1224:9:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"},{"typeIdentifier":"t_contract$_ISchemaResolver_$4157","typeString":"contract ISchemaResolver"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":3671,"name":"SchemaRecord","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3587,"src":"1146:12:10","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_SchemaRecord_$3587_storage_ptr_$","typeString":"type(struct SchemaRecord storage pointer)"}},"id":3676,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1161:3:10","1177:6:10","1193:8:10","1213:9:10"],"names":["uid","schema","resolver","revocable"],"nodeType":"FunctionCall","src":"1146:90:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_SchemaRecord_$3587_memory_ptr","typeString":"struct SchemaRecord memory"}},"nodeType":"VariableDeclarationStatement","src":"1099:137:10"},{"assignments":[3679],"declarations":[{"constant":false,"id":3679,"mutability":"mutable","name":"uid","nameLocation":"1255:3:10","nodeType":"VariableDeclaration","scope":3716,"src":"1247:11:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3678,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1247:7:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":3683,"initialValue":{"arguments":[{"id":3681,"name":"schemaRecord","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3670,"src":"1269:12:10","typeDescriptions":{"typeIdentifier":"t_struct$_SchemaRecord_$3587_memory_ptr","typeString":"struct SchemaRecord memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_SchemaRecord_$3587_memory_ptr","typeString":"struct SchemaRecord memory"}],"id":3680,"name":"_getUID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3753,"src":"1261:7:10","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_SchemaRecord_$3587_memory_ptr_$returns$_t_bytes32_$","typeString":"function (struct SchemaRecord memory) pure returns (bytes32)"}},"id":3682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1261:21:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"1247:35:10"},{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":3689,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":3684,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3645,"src":"1296:9:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_SchemaRecord_$3587_storage_$","typeString":"mapping(bytes32 => struct SchemaRecord storage ref)"}},"id":3686,"indexExpression":{"id":3685,"name":"uid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3679,"src":"1306:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1296:14:10","typeDescriptions":{"typeIdentifier":"t_struct$_SchemaRecord_$3587_storage","typeString":"struct SchemaRecord storage ref"}},"id":3687,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1311:3:10","memberName":"uid","nodeType":"MemberAccess","referencedDeclaration":3579,"src":"1296:18:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":3688,"name":"EMPTY_UID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1164,"src":"1318:9:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1296:31:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":3694,"nodeType":"IfStatement","src":"1292:84:10","trueBody":{"id":3693,"nodeType":"Block","src":"1329:47:10","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":3690,"name":"AlreadyExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3640,"src":"1350:13:10","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":3691,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1350:15:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":3692,"nodeType":"RevertStatement","src":"1343:22:10"}]}},{"expression":{"id":3699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":3695,"name":"schemaRecord","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3670,"src":"1386:12:10","typeDescriptions":{"typeIdentifier":"t_struct$_SchemaRecord_$3587_memory_ptr","typeString":"struct SchemaRecord memory"}},"id":3697,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1399:3:10","memberName":"uid","nodeType":"MemberAccess","referencedDeclaration":3579,"src":"1386:16:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":3698,"name":"uid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3679,"src":"1405:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1386:22:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":3700,"nodeType":"ExpressionStatement","src":"1386:22:10"},{"expression":{"id":3705,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":3701,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3645,"src":"1418:9:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_SchemaRecord_$3587_storage_$","typeString":"mapping(bytes32 => struct SchemaRecord storage ref)"}},"id":3703,"indexExpression":{"id":3702,"name":"uid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3679,"src":"1428:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"1418:14:10","typeDescriptions":{"typeIdentifier":"t_struct$_SchemaRecord_$3587_storage","typeString":"struct SchemaRecord storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":3704,"name":"schemaRecord","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3670,"src":"1435:12:10","typeDescriptions":{"typeIdentifier":"t_struct$_SchemaRecord_$3587_memory_ptr","typeString":"struct SchemaRecord memory"}},"src":"1418:29:10","typeDescriptions":{"typeIdentifier":"t_struct$_SchemaRecord_$3587_storage","typeString":"struct SchemaRecord storage ref"}},"id":3706,"nodeType":"ExpressionStatement","src":"1418:29:10"},{"eventCall":{"arguments":[{"id":3708,"name":"uid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3679,"src":"1474:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":3709,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1479:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":3710,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1483:6:10","memberName":"sender","nodeType":"MemberAccess","src":"1479:10:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":3711,"name":"schemaRecord","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3670,"src":"1491:12:10","typeDescriptions":{"typeIdentifier":"t_struct$_SchemaRecord_$3587_memory_ptr","typeString":"struct SchemaRecord memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_SchemaRecord_$3587_memory_ptr","typeString":"struct SchemaRecord memory"}],"id":3707,"name":"Registered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3598,"src":"1463:10:10","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_address_$_t_struct$_SchemaRecord_$3587_memory_ptr_$returns$__$","typeString":"function (bytes32,address,struct SchemaRecord memory)"}},"id":3712,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1463:41:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":3713,"nodeType":"EmitStatement","src":"1458:46:10"},{"expression":{"id":3714,"name":"uid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3679,"src":"1522:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":3667,"id":3715,"nodeType":"Return","src":"1515:10:10"}]},"baseFunctions":[3611],"documentation":{"id":3656,"nodeType":"StructuredDocumentation","src":"942:31:10","text":"@inheritdoc ISchemaRegistry"},"functionSelector":"60d7a278","implemented":true,"kind":"function","modifiers":[],"name":"register","nameLocation":"987:8:10","parameters":{"id":3664,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3658,"mutability":"mutable","name":"schema","nameLocation":"1012:6:10","nodeType":"VariableDeclaration","scope":3717,"src":"996:22:10","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":3657,"name":"string","nodeType":"ElementaryTypeName","src":"996:6:10","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":3661,"mutability":"mutable","name":"resolver","nameLocation":"1036:8:10","nodeType":"VariableDeclaration","scope":3717,"src":"1020:24:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISchemaResolver_$4157","typeString":"contract ISchemaResolver"},"typeName":{"id":3660,"nodeType":"UserDefinedTypeName","pathNode":{"id":3659,"name":"ISchemaResolver","nameLocations":["1020:15:10"],"nodeType":"IdentifierPath","referencedDeclaration":4157,"src":"1020:15:10"},"referencedDeclaration":4157,"src":"1020:15:10","typeDescriptions":{"typeIdentifier":"t_contract$_ISchemaResolver_$4157","typeString":"contract ISchemaResolver"}},"visibility":"internal"},{"constant":false,"id":3663,"mutability":"mutable","name":"revocable","nameLocation":"1051:9:10","nodeType":"VariableDeclaration","scope":3717,"src":"1046:14:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3662,"name":"bool","nodeType":"ElementaryTypeName","src":"1046:4:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"995:66:10"},"returnParameters":{"id":3667,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3666,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3717,"src":"1080:7:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3665,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1080:7:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1079:9:10"},"scope":3754,"stateMutability":"nonpayable","virtual":false,"visibi