UNPKG

@excubiae/contracts

Version:
1 lines 33.2 kB
{"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"IMPLEMENTATION","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"deploy","inputs":[{"name":"checkerAddress","type":"address","internalType":"address"}],"outputs":[{"name":"clone","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"event","name":"CloneDeployed","inputs":[{"name":"clone","type":"address","indexed":true,"internalType":"address"}],"anonymous":false}],"bytecode":{"object":"0x60a0604052348015600e575f5ffd5b506040516019906042565b604051809103905ff0801580156031573d5f5f3e3d5ffd5b506001600160a01b0316608052604f565b610b248061030983390190565b60805161029c61006d5f395f8181603d0152610140015261029c5ff3fe608060405234801561000f575f5ffd5b5060043610610034575f3560e01c80633a4741bd146100385780634c96a38914610088575b5f5ffd5b61005f7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b61005f610096366004610233565b6040805133602082015273ffffffffffffffffffffffffffffffffffffffff83168183015281518082038301815260609091019091525f906100d78161013a565b91508173ffffffffffffffffffffffffffffffffffffffff16638129fc1c6040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561011e575f5ffd5b505af1158015610130573d5f5f3e3d5ffd5b5050505050919050565b5f6101657f0000000000000000000000000000000000000000000000000000000000000000836101ad565b60405190915073ffffffffffffffffffffffffffffffffffffffff8216907f2158cde9935cbf85d0b02e02fbc315ad0be2f3f017a603a2ebeedead21b8d60b905f90a2919050565b5f6101b95f84846101c0565b9392505050565b5f60405182518060438301826020870160045afa506e5af43d82803e903d91602b57fd5bf360238301528460148301528060881b74fe61002d3d81600a3d39f3363d3d373d3d3d363d730182526037810161ffd38210600b01830187f092505050806101b95763301164255f526004601cfd5b5f60208284031215610243575f5ffd5b813573ffffffffffffffffffffffffffffffffffffffff811681146101b9575f5ffdfea2646970667358221220f14f347aac69f4e9ff09754fd1cd693e170d6b50ac9f14c8af8d7d2bb75359ba64736f6c634300081c003360806040523380602857604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b602f816034565b50608c565b5f80546001600160a01b03838116610100818102610100600160a81b0319851617855560405193049190911692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35050565b610a8b806100995f395ff3fe608060405234801561000f575f5ffd5b50600436106100cf575f3560e01c80637e1642041161007d578063b41a4b1911610058578063b41a4b19146101d5578063ce343deb146101ea578063f2fde38b14610223575f5ffd5b80637e1642041461018b5780638129fc1c146101ab5780638da5cb5b146101b3575f5ffd5b8063715018a6116100ad578063715018a61461012b57806372f7a03014610133578063776d1a0114610178575f5ffd5b8063158ef93e146100d35780631e898ef1146100f457806359e6c9b114610109575b5f5ffd5b5f546100df9060ff1681565b60405190151581526020015b60405180910390f35b61010761010236600461084d565b610236565b005b6100df6101173660046108cd565b60036020525f908152604090205460ff1681565b610107610297565b6001546101539073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100eb565b6101076101863660046108e4565b6102aa565b6002546101539073ffffffffffffffffffffffffffffffffffffffff1681565b6101076103bd565b5f54610100900473ffffffffffffffffffffffffffffffffffffffff16610153565b6101dd6103c5565b6040516100eb9190610952565b60408051808201909152600581527f546f6b656e00000000000000000000000000000000000000000000000000000060208201526101dd565b6101076102313660046108e4565b6103d4565b60015473ffffffffffffffffffffffffffffffffffffffff163314610287576040517f7d24b6fc00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61029283838361043c565b505050565b61029f6104db565b6102a85f610533565b565b6102b26104db565b73ffffffffffffffffffffffffffffffffffffffff81166102ff576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60015473ffffffffffffffffffffffffffffffffffffffff161561034f576040517fe0f2d7b100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f3bfb4bbf112628248058745a3c57e35b13369386e474b8e56c552f3063a4a196905f90a250565b6102a86105af565b60606103cf61062e565b905090565b6103dc6104db565b73ffffffffffffffffffffffffffffffffffffffff8116610430576040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081525f60048201526024015b60405180910390fd5b61043981610533565b50565b5f610449828401846108cd565b5f8181526003602052604090205490915060ff1615610494576040517fd10324cc00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f81815260036020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556104d5848484610639565b50505050565b5f5473ffffffffffffffffffffffffffffffffffffffff6101009091041633146102a8576040517f118cdaa7000000000000000000000000000000000000000000000000000000008152336004820152602401610427565b5f805473ffffffffffffffffffffffffffffffffffffffff8381166101008181027fffffffffffffffffffffff0000000000000000000000000000000000000000ff851617855560405193049190911692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35050565b6105b7610766565b5f6105c061062e565b90505f5f828060200190518101906105d89190610964565b915091506105e582610533565b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff929092169190911790555050565b60606103cf30610777565b6002546040517fe2b2408500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063e2b2408590610693908690869086906004016109e3565b602060405180830381865afa1580156106ae573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106d29190610a1b565b610708576040517f4715494500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60015460405173ffffffffffffffffffffffffffffffffffffffff918216918516907fc013b39287cb7a53f776482ac9573829321f002f31ef8782129b41d60047bda0906107599086908690610a3a565b60405180910390a3505050565b61076e6107c4565b6102a833610533565b60405164ffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3833b0116808252602090810190602d908301843c60408101815101604052919050565b5f5460ff1615610800576040517f0dc149f000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b73ffffffffffffffffffffffffffffffffffffffff81168114610439575f5ffd5b5f5f5f6040848603121561085f575f5ffd5b833561086a8161082c565b9250602084013567ffffffffffffffff811115610885575f5ffd5b8401601f81018613610895575f5ffd5b803567ffffffffffffffff8111156108ab575f5ffd5b8660208284010111156108bc575f5ffd5b939660209190910195509293505050565b5f602082840312156108dd575f5ffd5b5035919050565b5f602082840312156108f4575f5ffd5b81356108ff8161082c565b9392505050565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f6108ff6020830184610906565b5f5f60408385031215610975575f5ffd5b82516109808161082c565b60208401519092506109918161082c565b809150509250929050565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b73ffffffffffffffffffffffffffffffffffffffff84168152604060208201525f610a1260408301848661099c565b95945050505050565b5f60208284031215610a2b575f5ffd5b815180151581146108ff575f5ffd5b602081525f610a4d60208301848661099c565b94935050505056fea264697066735822122090e895ee521eab79045e3ddb09c45767f27beda5b5e26a7b72bc1d90cf3b999364736f6c634300081c0033","sourceMap":"429:749:46:-:0;;;567:53;;;;;;;;;;597:17;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;846:32:64;;;429:749:46;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561000f575f5ffd5b5060043610610034575f3560e01c80633a4741bd146100385780634c96a38914610088575b5f5ffd5b61005f7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b61005f610096366004610233565b6040805133602082015273ffffffffffffffffffffffffffffffffffffffff83168183015281518082038301815260609091019091525f906100d78161013a565b91508173ffffffffffffffffffffffffffffffffffffffff16638129fc1c6040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561011e575f5ffd5b505af1158015610130573d5f5f3e3d5ffd5b5050505050919050565b5f6101657f0000000000000000000000000000000000000000000000000000000000000000836101ad565b60405190915073ffffffffffffffffffffffffffffffffffffffff8216907f2158cde9935cbf85d0b02e02fbc315ad0be2f3f017a603a2ebeedead21b8d60b905f90a2919050565b5f6101b95f84846101c0565b9392505050565b5f60405182518060438301826020870160045afa506e5af43d82803e903d91602b57fd5bf360238301528460148301528060881b74fe61002d3d81600a3d39f3363d3d373d3d3d363d730182526037810161ffd38210600b01830187f092505050806101b95763301164255f526004601cfd5b5f60208284031215610243575f5ffd5b813573ffffffffffffffffffffffffffffffffffffffff811681146101b9575f5ffdfea2646970667358221220f14f347aac69f4e9ff09754fd1cd693e170d6b50ac9f14c8af8d7d2bb75359ba64736f6c634300081c0033","sourceMap":"429:749:46:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;591:39:64;;;;;;;;190:42:133;178:55;;;160:74;;148:2;133:18;591:39:64;;;;;;;950:226:46;;;;;;:::i;:::-;1051:38;;;1062:10;1051:38;;;733:74:133;763:42;843:55;;823:18;;;816:83;1051:38:46;;;;;;;;;706:18:133;;;;1051:38:46;;;-1:-1:-1;;1108:19:46;1051:38;1108:13;:19::i;:::-;1100:27;;1150:5;1138:29;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1021:155;950:226;;;:::o;1228:166:64:-;1282:13;1315:36;1330:14;1346:4;1315:14;:36::i;:::-;1367:20;;1307:44;;-1:-1:-1;1367:20:64;;;;;;;;;1228:166;;;:::o;24551:152:132:-;24627:16;24666:30;24672:1;24675:14;24691:4;24666:5;:30::i;:::-;24655:41;24551:152;-1:-1:-1;;;24551:152:132:o;24850:5781::-;24957:16;29978:4;29972:11;30011:4;30005:11;30088:1;30081:4;30078:1;30074:12;30071:1;30064:4;30058;30054:15;30051:1;30044:5;30033:57;30029:62;30125:32;30118:4;30115:1;30111:12;30104:54;30192:14;30185:4;30182:1;30178:12;30171:36;30289:1;30284:3;30280:11;30234:44;30230:62;30227:1;30220:73;30460:4;30457:1;30453:12;30442:6;30439:1;30436:13;30430:4;30426:24;30423:1;30419:32;30412:5;30405:61;30393:73;;;;30489:8;30479:136;;30530:10;30524:4;30517:24;30596:4;30590;30583:18;245:309:133;304:6;357:2;345:9;336:7;332:23;328:32;325:52;;;373:1;370;363:12;325:52;412:9;399:23;462:42;455:5;451:54;444:5;441:65;431:93;;520:1;517;510:12","linkReferences":{},"immutableReferences":{"4642":[{"start":61,"length":32},{"start":320,"length":32}]}},"methodIdentifiers":{"IMPLEMENTATION()":"3a4741bd","deploy(address)":"4c96a389"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"clone\",\"type\":\"address\"}],\"name\":\"CloneDeployed\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IMPLEMENTATION\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"checkerAddress\",\"type\":\"address\"}],\"name\":\"deploy\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"clone\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Simplifies deployment of TokenPolicy clones with appended configuration data.\",\"events\":{\"CloneDeployed(address)\":{\"params\":{\"clone\":\"Address of the deployed clone contract.\"}}},\"kind\":\"dev\",\"methods\":{\"deploy(address)\":{\"details\":\"Encodes the checker address and caller as configuration data for the clone.\",\"params\":{\"checkerAddress\":\"Address of the checker to use for validation.\"},\"returns\":{\"clone\":\"The address of the newly deployed TokenPolicy clone.\"}}},\"title\":\"TokenPolicyFactory\",\"version\":1},\"userdoc\":{\"events\":{\"CloneDeployed(address)\":{\"notice\":\"Emitted when a new clone contract is successfully deployed.\"}},\"kind\":\"user\",\"methods\":{\"IMPLEMENTATION()\":{\"notice\":\"Address of the implementation contract used for cloning.\"},\"constructor\":{\"notice\":\"Initializes the factory with the TokenPolicy implementation.\"},\"deploy(address)\":{\"notice\":\"Deploys a new TokenPolicy clone with the specified checker address.\"}},\"notice\":\"Factory contract for deploying minimal proxy instances of TokenPolicy.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/extensions/token/TokenPolicyFactory.sol\":\"TokenPolicyFactory\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200000},\"remappings\":[\":@openzeppelin/=node_modules/@openzeppelin/\",\":@semaphore-protocol/=node_modules/@semaphore-protocol/\",\":@solady/=node_modules/solady/\",\":@zk-kit/=node_modules/@zk-kit/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=node_modules/forge-std/\",\":hardhat/=node_modules/hardhat/\",\":poseidon-solidity/=node_modules/poseidon-solidity/\",\":solady/=node_modules/solady/\"]},\"sources\":{\"contracts/checker/BaseChecker.sol\":{\"keccak256\":\"0xd5a0aa62b6c617581fad10a727f4961c9f567983c58fea0c00cd9599712f5e8c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7572f9ace9d914d465401d506ecf9aa360e5458eae4a15fc9f9be1da7a925ab9\",\"dweb:/ipfs/QmX5cvUd6Vr7Jy1cYLcMtGfFjs4RTfgHQ4JSBnUp9CMJSs\"]},\"contracts/extensions/token/TokenPolicy.sol\":{\"keccak256\":\"0x5a94df9fd83560b2df5292ae90cf5d150f5ad1162ef6fa6d4d28b998a5134d26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f6c1989b2e1dd9776851c495201ffc6cba6616816d935b60b48cf9c89ba6a8d\",\"dweb:/ipfs/QmT5ptS27XAoUAQdiP6MyxqHP5bzG9x93SQZC3ZUSwSqFN\"]},\"contracts/extensions/token/TokenPolicyFactory.sol\":{\"keccak256\":\"0x1aae872af8aa24d6d4d56b8b8eabf3ecc94ab91adafbe04cc216162c54d88211\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a03dadab7cb9aaea93eee0bee972f4ba7741fcc7eab0f51bd08d04d767365f24\",\"dweb:/ipfs/QmZVXWYg6UeHoij768cqbtkTA4deZKs7v7rLNi1JenQq9r\"]},\"contracts/interfaces/IBaseChecker.sol\":{\"keccak256\":\"0x2e78c67cfe2594fbe999da0a5102099feec5b7344023f6f95c862130d8097b4a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dd6235abb53aed81c48eef7847af7fd9533ceb81afd3670541e29c1f41c275c1\",\"dweb:/ipfs/Qmbjmk4hjb4awhdk3v7WbZC3NuSeWoioewcp8FyBhkMfRB\"]},\"contracts/interfaces/IBasePolicy.sol\":{\"keccak256\":\"0x6ed2c3e67d218be96b6bc2f64a52d453d728954bb224cb89e38fa6918e722d85\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f213bae9dc663d0597bd917120cfade3419948f76f5b47df47396370594c1852\",\"dweb:/ipfs/QmcnzLnc1Jc7HoEarMFjNtPmL3BVtX7r242CCZcyk2SRst\"]},\"contracts/interfaces/IClone.sol\":{\"keccak256\":\"0xc3f6a08a3ce1db7e80dd496c6631d4d9d7a409729e67ed543411baac396369e7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d9e531790090250216d4c89b58e06b6cb942d79e94614c4e70f57021c4fdccef\",\"dweb:/ipfs/QmaGuDzcBxCr1XpWQiqB6M7GcsVaXeaouQFXsN53MnKLff\"]},\"contracts/interfaces/IFactory.sol\":{\"keccak256\":\"0xd15d88cf9a282b37e2db7893d94bac0439356e73b34bb7dd8a963bdd75aa524f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ae2c2aa12be714aed211f9ed24782896dd798efd0ed5e698b6c67d38239e680c\",\"dweb:/ipfs/QmZeWkBmSUTEThB7ZkhbFb7G8pc7oi6PepkcoaLWo3CQe1\"]},\"contracts/interfaces/IPolicy.sol\":{\"keccak256\":\"0x82f96940502cdd880f1eacc03cd8c3895f306283efa907610c899a1f5509f78c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5baf97f88beb3155f244dc301ee040786780bf6762fbaaf569e2e86b17729b3f\",\"dweb:/ipfs/Qmec9wzmmFwkQHDthMo9QaFtYqa7CadjiCP2JMsgFGGaxU\"]},\"contracts/interfaces/IPolicyFactory.sol\":{\"keccak256\":\"0x733551f59e02dbb5a3e13fc8f10eab881fcbdc9deae50b6f5ceadd3598e1b2ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://36a72244881b4fa8386384bb68e7eb118e7777de60a89fa0cc301c7b4993e3f5\",\"dweb:/ipfs/QmdmP3khyLcbpGctnMUTwyryW8okjbTma7X5kF894eQ4S2\"]},\"contracts/policy/BasePolicy.sol\":{\"keccak256\":\"0xbac32b43789d8e2534db015749e5691f438b69edb7fe67816d63586744eef5f7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8172b83b6979b3de05d0401e8cf9fccec162aa03675b98feeb0209c36042f191\",\"dweb:/ipfs/QmVi5SiXbsTMEcbmKtTNNE7PZEfZrXT2NMdcMq9iYPfJAG\"]},\"contracts/policy/Policy.sol\":{\"keccak256\":\"0x3e6ef3213ffccff5285c8c2dc2d2b062ebd27dc8380ab2e092510375533aab8c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://de88bd02c3caf55beb562b26ff5218e594122a58fe969ae15e41376efc8c2dc9\",\"dweb:/ipfs/QmP1o2aaXueaM34CwZNJwtpuUZ6DEqkJc2wvVVNwgTJqdT\"]},\"contracts/proxy/Clone.sol\":{\"keccak256\":\"0x6453f61944f6a5e19d23c930abae166f01bc1613506fd0204e8c541e611b8164\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://520e2bdb7935ac9181d7474a61129151bb2096513e62793ff1c5220827662720\",\"dweb:/ipfs/QmXCDDZfJjX9EaK6QtwDE9FHK7z6ZsG6Ebgrt4CFxxL1wU\"]},\"contracts/proxy/Factory.sol\":{\"keccak256\":\"0xf4aba22b178615c690d48ac5e6fb955e7d5e3bf094b5d1fef46f0e8d829b3089\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://513f34fd368825331e2c957998e036d1398d39abc4c09f5b3de7670f11627c1e\",\"dweb:/ipfs/QmR3L4kw7MQgK1b7TPR5tD2bowam5aQpTSdRu1AoBjNzrv\"]},\"node_modules/@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6\",\"dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a\"]},\"node_modules/@openzeppelin/contracts/interfaces/draft-IERC6093.sol\":{\"keccak256\":\"0x880da465c203cec76b10d72dbd87c80f387df4102274f23eea1f9c9b0918792b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://399594cd8bb0143bc9e55e0f1d071d0d8c850a394fb7a319d50edd55d9ed822b\",\"dweb:/ipfs/QmbPZzgtT6LEm9CMqWfagQFwETbV1ztpECBB1DtQHrKiRz\"]},\"node_modules/@openzeppelin/contracts/token/ERC721/ERC721.sol\":{\"keccak256\":\"0x39ed367e54765186281efcfe83e47cf0ad62cc879f10e191360712507125f29a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2c5ae6d85bd48cca8d6d2fcec8c63efd86f56f8a5832577a47e403ce0e65cb09\",\"dweb:/ipfs/QmUtcS8AbRSWhuc61puYet58os8FvSqm329ChoW8wwZXZk\"]},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5dc63d1c6a12fe1b17793e1745877b2fcbe1964c3edfd0a482fac21ca8f18261\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6b7f97c5960a50fd1822cb298551ffc908e37b7893a68d6d08bce18a11cb0f11\",\"dweb:/ipfs/QmQQvxBytoY1eBt3pRQDmvH2hZ2yjhs12YqVfzGm7KSURq\"]},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xb5afb8e8eebc4d1c6404df2f5e1e6d2c3d24fd01e5dfc855314951ecfaae462d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://78586466c424f076c6a2a551d848cfbe3f7c49e723830807598484a1047b3b34\",\"dweb:/ipfs/Qmb717ovcFxm7qgNKEShiV6M9SPR3v1qnNpAGH84D6w29p\"]},\"node_modules/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0x37d1aaaa5a2908a09e9dcf56a26ddf762ecf295afb5964695937344fc6802ce1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed0bfc1b92153c5000e50f4021367b931bbe96372ac6facec3c4961b72053d02\",\"dweb:/ipfs/Qmbwp8VDerjS5SV1quwHH1oMXxPQ93fzfLVqJ2RCqbowGE\"]},\"node_modules/@openzeppelin/contracts/token/ERC721/utils/ERC721Utils.sol\":{\"keccak256\":\"0x40399695922383778f9f540a620bec475a2f8e0f08d41f0005682842e28a9855\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://746d295e403931aeb9d6065fd5a0871f43ab5459814a60623611e4b6641a09fd\",\"dweb:/ipfs/QmWrgT8YJrQ9FfD1o3YYArwo57e7MGdpFKuM74qJ4qE34E\"]},\"node_modules/@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12\",\"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF\"]},\"node_modules/@openzeppelin/contracts/utils/Panic.sol\":{\"keccak256\":\"0xf7fe324703a64fc51702311dc51562d5cb1497734f074e4f483bfb6717572d7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6a5ff4f9fd8649b7ee20800b7fa387d3465bd77cf20c2d1068cd5c98e1ed57a\",\"dweb:/ipfs/QmVSaVJf9FXFhdYEYeCEfjMVHrxDh5qL4CGkxdMWpQCrqG\"]},\"node_modules/@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x44f87e91783e88415bde66f1a63f6c7f0076f2d511548820407d5c95643ac56c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://13a51bc2b23827744dcf5bad10c69e72528cf015a6fe48c93632cdb2c0eb1251\",\"dweb:/ipfs/QmZwPA47Yqgje1qtkdEFEja8ntTahMStYzKf5q3JRnaR7d\"]},\"node_modules/@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xddce8e17e3d3f9ed818b4f4c4478a8262aab8b11ed322f1bf5ed705bb4bd97fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8084aa71a4cc7d2980972412a88fe4f114869faea3fefa5436431644eb5c0287\",\"dweb:/ipfs/Qmbqfs5dRdPvHVKY8kTaeyc65NdqXRQwRK7h9s5UJEhD1p\"]},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621\",\"dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL\"]},\"node_modules/@openzeppelin/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xa00be322d7db5786750ce0ac7e2f5b633ac30a5ed5fa1ced1e74acfc19acecea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6c84e822f87cbdc4082533b626667b6928715bb2b1e8e7eb96954cebb9e38c8d\",\"dweb:/ipfs/QmZmy9dgxLTerBAQDuuHqbL6EpgRxddqgv5KmwpXYVbKz1\"]},\"node_modules/@openzeppelin/contracts/utils/math/SafeCast.sol\":{\"keccak256\":\"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8\",\"dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy\"]},\"node_modules/@openzeppelin/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03\",\"dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ\"]},\"node_modules/solady/src/utils/LibClone.sol\":{\"keccak256\":\"0x1388494b421db04cf6f33ab69580edc5b187328688818504b87eaea9fa3c0d2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8f6bf027d6fe4f102360bf7e988923f73510697a87d970b28093a0d950d9a3e5\",\"dweb:/ipfs/QmUhdrSqiwhBp2cZPef6jcTfQ8Md3KoyfnK2ZteseAvude\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.28+commit.7893614a"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"clone","type":"address","indexed":true}],"type":"event","name":"CloneDeployed","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"IMPLEMENTATION","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"checkerAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deploy","outputs":[{"internalType":"address","name":"clone","type":"address"}]}],"devdoc":{"kind":"dev","methods":{"deploy(address)":{"details":"Encodes the checker address and caller as configuration data for the clone.","params":{"checkerAddress":"Address of the checker to use for validation."},"returns":{"clone":"The address of the newly deployed TokenPolicy clone."}}},"version":1},"userdoc":{"kind":"user","methods":{"IMPLEMENTATION()":{"notice":"Address of the implementation contract used for cloning."},"constructor":{"notice":"Initializes the factory with the TokenPolicy implementation."},"deploy(address)":{"notice":"Deploys a new TokenPolicy clone with the specified checker address."}},"version":1}},"settings":{"remappings":["@openzeppelin/=node_modules/@openzeppelin/","@semaphore-protocol/=node_modules/@semaphore-protocol/","@solady/=node_modules/solady/","@zk-kit/=node_modules/@zk-kit/","eth-gas-reporter/=node_modules/eth-gas-reporter/","forge-std/=node_modules/forge-std/","hardhat/=node_modules/hardhat/","poseidon-solidity/=node_modules/poseidon-solidity/","solady/=node_modules/solady/"],"optimizer":{"enabled":true,"runs":200000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"contracts/extensions/token/TokenPolicyFactory.sol":"TokenPolicyFactory"},"evmVersion":"prague","libraries":{}},"sources":{"contracts/checker/BaseChecker.sol":{"keccak256":"0xd5a0aa62b6c617581fad10a727f4961c9f567983c58fea0c00cd9599712f5e8c","urls":["bzz-raw://7572f9ace9d914d465401d506ecf9aa360e5458eae4a15fc9f9be1da7a925ab9","dweb:/ipfs/QmX5cvUd6Vr7Jy1cYLcMtGfFjs4RTfgHQ4JSBnUp9CMJSs"],"license":"MIT"},"contracts/extensions/token/TokenPolicy.sol":{"keccak256":"0x5a94df9fd83560b2df5292ae90cf5d150f5ad1162ef6fa6d4d28b998a5134d26","urls":["bzz-raw://6f6c1989b2e1dd9776851c495201ffc6cba6616816d935b60b48cf9c89ba6a8d","dweb:/ipfs/QmT5ptS27XAoUAQdiP6MyxqHP5bzG9x93SQZC3ZUSwSqFN"],"license":"MIT"},"contracts/extensions/token/TokenPolicyFactory.sol":{"keccak256":"0x1aae872af8aa24d6d4d56b8b8eabf3ecc94ab91adafbe04cc216162c54d88211","urls":["bzz-raw://a03dadab7cb9aaea93eee0bee972f4ba7741fcc7eab0f51bd08d04d767365f24","dweb:/ipfs/QmZVXWYg6UeHoij768cqbtkTA4deZKs7v7rLNi1JenQq9r"],"license":"MIT"},"contracts/interfaces/IBaseChecker.sol":{"keccak256":"0x2e78c67cfe2594fbe999da0a5102099feec5b7344023f6f95c862130d8097b4a","urls":["bzz-raw://dd6235abb53aed81c48eef7847af7fd9533ceb81afd3670541e29c1f41c275c1","dweb:/ipfs/Qmbjmk4hjb4awhdk3v7WbZC3NuSeWoioewcp8FyBhkMfRB"],"license":"MIT"},"contracts/interfaces/IBasePolicy.sol":{"keccak256":"0x6ed2c3e67d218be96b6bc2f64a52d453d728954bb224cb89e38fa6918e722d85","urls":["bzz-raw://f213bae9dc663d0597bd917120cfade3419948f76f5b47df47396370594c1852","dweb:/ipfs/QmcnzLnc1Jc7HoEarMFjNtPmL3BVtX7r242CCZcyk2SRst"],"license":"MIT"},"contracts/interfaces/IClone.sol":{"keccak256":"0xc3f6a08a3ce1db7e80dd496c6631d4d9d7a409729e67ed543411baac396369e7","urls":["bzz-raw://d9e531790090250216d4c89b58e06b6cb942d79e94614c4e70f57021c4fdccef","dweb:/ipfs/QmaGuDzcBxCr1XpWQiqB6M7GcsVaXeaouQFXsN53MnKLff"],"license":"MIT"},"contracts/interfaces/IFactory.sol":{"keccak256":"0xd15d88cf9a282b37e2db7893d94bac0439356e73b34bb7dd8a963bdd75aa524f","urls":["bzz-raw://ae2c2aa12be714aed211f9ed24782896dd798efd0ed5e698b6c67d38239e680c","dweb:/ipfs/QmZeWkBmSUTEThB7ZkhbFb7G8pc7oi6PepkcoaLWo3CQe1"],"license":"MIT"},"contracts/interfaces/IPolicy.sol":{"keccak256":"0x82f96940502cdd880f1eacc03cd8c3895f306283efa907610c899a1f5509f78c","urls":["bzz-raw://5baf97f88beb3155f244dc301ee040786780bf6762fbaaf569e2e86b17729b3f","dweb:/ipfs/Qmec9wzmmFwkQHDthMo9QaFtYqa7CadjiCP2JMsgFGGaxU"],"license":"MIT"},"contracts/interfaces/IPolicyFactory.sol":{"keccak256":"0x733551f59e02dbb5a3e13fc8f10eab881fcbdc9deae50b6f5ceadd3598e1b2ed","urls":["bzz-raw://36a72244881b4fa8386384bb68e7eb118e7777de60a89fa0cc301c7b4993e3f5","dweb:/ipfs/QmdmP3khyLcbpGctnMUTwyryW8okjbTma7X5kF894eQ4S2"],"license":"MIT"},"contracts/policy/BasePolicy.sol":{"keccak256":"0xbac32b43789d8e2534db015749e5691f438b69edb7fe67816d63586744eef5f7","urls":["bzz-raw://8172b83b6979b3de05d0401e8cf9fccec162aa03675b98feeb0209c36042f191","dweb:/ipfs/QmVi5SiXbsTMEcbmKtTNNE7PZEfZrXT2NMdcMq9iYPfJAG"],"license":"MIT"},"contracts/policy/Policy.sol":{"keccak256":"0x3e6ef3213ffccff5285c8c2dc2d2b062ebd27dc8380ab2e092510375533aab8c","urls":["bzz-raw://de88bd02c3caf55beb562b26ff5218e594122a58fe969ae15e41376efc8c2dc9","dweb:/ipfs/QmP1o2aaXueaM34CwZNJwtpuUZ6DEqkJc2wvVVNwgTJqdT"],"license":"MIT"},"contracts/proxy/Clone.sol":{"keccak256":"0x6453f61944f6a5e19d23c930abae166f01bc1613506fd0204e8c541e611b8164","urls":["bzz-raw://520e2bdb7935ac9181d7474a61129151bb2096513e62793ff1c5220827662720","dweb:/ipfs/QmXCDDZfJjX9EaK6QtwDE9FHK7z6ZsG6Ebgrt4CFxxL1wU"],"license":"MIT"},"contracts/proxy/Factory.sol":{"keccak256":"0xf4aba22b178615c690d48ac5e6fb955e7d5e3bf094b5d1fef46f0e8d829b3089","urls":["bzz-raw://513f34fd368825331e2c957998e036d1398d39abc4c09f5b3de7670f11627c1e","dweb:/ipfs/QmR3L4kw7MQgK1b7TPR5tD2bowam5aQpTSdRu1AoBjNzrv"],"license":"MIT"},"node_modules/@openzeppelin/contracts/access/Ownable.sol":{"keccak256":"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb","urls":["bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6","dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a"],"license":"MIT"},"node_modules/@openzeppelin/contracts/interfaces/draft-IERC6093.sol":{"keccak256":"0x880da465c203cec76b10d72dbd87c80f387df4102274f23eea1f9c9b0918792b","urls":["bzz-raw://399594cd8bb0143bc9e55e0f1d071d0d8c850a394fb7a319d50edd55d9ed822b","dweb:/ipfs/QmbPZzgtT6LEm9CMqWfagQFwETbV1ztpECBB1DtQHrKiRz"],"license":"MIT"},"node_modules/@openzeppelin/contracts/token/ERC721/ERC721.sol":{"keccak256":"0x39ed367e54765186281efcfe83e47cf0ad62cc879f10e191360712507125f29a","urls":["bzz-raw://2c5ae6d85bd48cca8d6d2fcec8c63efd86f56f8a5832577a47e403ce0e65cb09","dweb:/ipfs/QmUtcS8AbRSWhuc61puYet58os8FvSqm329ChoW8wwZXZk"],"license":"MIT"},"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol":{"keccak256":"0x5dc63d1c6a12fe1b17793e1745877b2fcbe1964c3edfd0a482fac21ca8f18261","urls":["bzz-raw://6b7f97c5960a50fd1822cb298551ffc908e37b7893a68d6d08bce18a11cb0f11","dweb:/ipfs/QmQQvxBytoY1eBt3pRQDmvH2hZ2yjhs12YqVfzGm7KSURq"],"license":"MIT"},"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol":{"keccak256":"0xb5afb8e8eebc4d1c6404df2f5e1e6d2c3d24fd01e5dfc855314951ecfaae462d","urls":["bzz-raw://78586466c424f076c6a2a551d848cfbe3f7c49e723830807598484a1047b3b34","dweb:/ipfs/Qmb717ovcFxm7qgNKEShiV6M9SPR3v1qnNpAGH84D6w29p"],"license":"MIT"},"node_modules/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"keccak256":"0x37d1aaaa5a2908a09e9dcf56a26ddf762ecf295afb5964695937344fc6802ce1","urls":["bzz-raw://ed0bfc1b92153c5000e50f4021367b931bbe96372ac6facec3c4961b72053d02","dweb:/ipfs/Qmbwp8VDerjS5SV1quwHH1oMXxPQ93fzfLVqJ2RCqbowGE"],"license":"MIT"},"node_modules/@openzeppelin/contracts/token/ERC721/utils/ERC721Utils.sol":{"keccak256":"0x40399695922383778f9f540a620bec475a2f8e0f08d41f0005682842e28a9855","urls":["bzz-raw://746d295e403931aeb9d6065fd5a0871f43ab5459814a60623611e4b6641a09fd","dweb:/ipfs/QmWrgT8YJrQ9FfD1o3YYArwo57e7MGdpFKuM74qJ4qE34E"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/Context.sol":{"keccak256":"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2","urls":["bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12","dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/Panic.sol":{"keccak256":"0xf7fe324703a64fc51702311dc51562d5cb1497734f074e4f483bfb6717572d7a","urls":["bzz-raw://c6a5ff4f9fd8649b7ee20800b7fa387d3465bd77cf20c2d1068cd5c98e1ed57a","dweb:/ipfs/QmVSaVJf9FXFhdYEYeCEfjMVHrxDh5qL4CGkxdMWpQCrqG"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/Strings.sol":{"keccak256":"0x44f87e91783e88415bde66f1a63f6c7f0076f2d511548820407d5c95643ac56c","urls":["bzz-raw://13a51bc2b23827744dcf5bad10c69e72528cf015a6fe48c93632cdb2c0eb1251","dweb:/ipfs/QmZwPA47Yqgje1qtkdEFEja8ntTahMStYzKf5q3JRnaR7d"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xddce8e17e3d3f9ed818b4f4c4478a8262aab8b11ed322f1bf5ed705bb4bd97fa","urls":["bzz-raw://8084aa71a4cc7d2980972412a88fe4f114869faea3fefa5436431644eb5c0287","dweb:/ipfs/Qmbqfs5dRdPvHVKY8kTaeyc65NdqXRQwRK7h9s5UJEhD1p"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8","urls":["bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621","dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/math/Math.sol":{"keccak256":"0xa00be322d7db5786750ce0ac7e2f5b633ac30a5ed5fa1ced1e74acfc19acecea","urls":["bzz-raw://6c84e822f87cbdc4082533b626667b6928715bb2b1e8e7eb96954cebb9e38c8d","dweb:/ipfs/QmZmy9dgxLTerBAQDuuHqbL6EpgRxddqgv5KmwpXYVbKz1"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/math/SafeCast.sol":{"keccak256":"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54","urls":["bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8","dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/math/SignedMath.sol":{"keccak256":"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3","urls":["bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03","dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ"],"license":"MIT"},"node_modules/solady/src/utils/LibClone.sol":{"keccak256":"0x1388494b421db04cf6f33ab69580edc5b187328688818504b87eaea9fa3c0d2c","urls":["bzz-raw://8f6bf027d6fe4f102360bf7e988923f73510697a87d970b28093a0d950d9a3e5","dweb:/ipfs/QmUhdrSqiwhBp2cZPef6jcTfQ8Md3KoyfnK2ZteseAvude"],"license":"MIT"}},"version":1},"id":46}