UNPKG

@sablier/airdrops

Version:

Merkle-based airdrop distributions powered by Sablier

1 lines 92.8 kB
{"abi":[{"type":"constructor","inputs":[{"name":"baseParams","type":"tuple","internalType":"struct MerkleBase.ConstructorParams","components":[{"name":"token","type":"address","internalType":"contract IERC20"},{"name":"expiration","type":"uint40","internalType":"uint40"},{"name":"initialAdmin","type":"address","internalType":"address"},{"name":"ipfsCID","type":"string","internalType":"string"},{"name":"merkleRoot","type":"bytes32","internalType":"bytes32"},{"name":"campaignName","type":"string","internalType":"string"},{"name":"shape","type":"string","internalType":"string"}]},{"name":"campaignCreator","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"EXPIRATION","inputs":[],"outputs":[{"name":"","type":"uint40","internalType":"uint40"}],"stateMutability":"view"},{"type":"function","name":"FACTORY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MERKLE_ROOT","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"TOKEN","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"admin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"campaignName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"claim","inputs":[{"name":"index","type":"uint256","internalType":"uint256"},{"name":"recipient","type":"address","internalType":"address"},{"name":"amount","type":"uint128","internalType":"uint128"},{"name":"merkleProof","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"clawback","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint128","internalType":"uint128"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"collectFees","inputs":[{"name":"factoryAdmin","type":"address","internalType":"address"}],"outputs":[{"name":"feeAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"getFirstClaimTime","inputs":[],"outputs":[{"name":"","type":"uint40","internalType":"uint40"}],"stateMutability":"view"},{"type":"function","name":"hasClaimed","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"hasExpired","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"ipfsCID","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"shape","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"transferAdmin","inputs":[{"name":"newAdmin","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Claim","inputs":[{"name":"index","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"recipient","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint128","indexed":false,"internalType":"uint128"}],"anonymous":false},{"type":"event","name":"Clawback","inputs":[{"name":"admin","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint128","indexed":false,"internalType":"uint128"}],"anonymous":false},{"type":"event","name":"TransferAdmin","inputs":[{"name":"oldAdmin","type":"address","indexed":true,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressEmptyCode","inputs":[{"name":"target","type":"address","internalType":"address"}]},{"type":"error","name":"AddressInsufficientBalance","inputs":[{"name":"account","type":"address","internalType":"address"}]},{"type":"error","name":"CallerNotAdmin","inputs":[{"name":"admin","type":"address","internalType":"address"},{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"FailedInnerCall","inputs":[]},{"type":"error","name":"SablierMerkleBase_CallerNotFactory","inputs":[{"name":"factory","type":"address","internalType":"address"},{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"SablierMerkleBase_CampaignExpired","inputs":[{"name":"blockTimestamp","type":"uint256","internalType":"uint256"},{"name":"expiration","type":"uint40","internalType":"uint40"}]},{"type":"error","name":"SablierMerkleBase_ClawbackNotAllowed","inputs":[{"name":"blockTimestamp","type":"uint256","internalType":"uint256"},{"name":"expiration","type":"uint40","internalType":"uint40"},{"name":"firstClaimTime","type":"uint40","internalType":"uint40"}]},{"type":"error","name":"SablierMerkleBase_FeeTransferFail","inputs":[{"name":"factoryAdmin","type":"address","internalType":"address"},{"name":"feeAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SablierMerkleBase_InsufficientFeePayment","inputs":[{"name":"feePaid","type":"uint256","internalType":"uint256"},{"name":"fee","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SablierMerkleBase_InvalidProof","inputs":[]},{"type":"error","name":"SablierMerkleBase_StreamClaimed","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x610160806040523461044757611229803803809161001d828561045e565b83398101906040818303126104475780516001600160401b03811161044757810160e081840312610447576040519160e083016001600160401b038111848210176104075760405281516001600160a01b038116810361044757835260208201519364ffffffffff8516850361044757602084019485526100a060408401610481565b6040850190815260608401519093906001600160401b03811161044757826100c99183016104b6565b95606086019687526080820151926080870193845260a083015160018060401b03811161044757816100fc9185016104b6565b60a0880190815260c08401516001600160401b038111610447576020610142816101346101b7966101b29564ffffffffff9a016104b6565b9960c08d019a8b5201610481565b98515f80546001600160a01b0319166001600160a01b0392909216918217815560405194859290917fbdd36143ee09de60bdefca70680e0f71189b2ed7acee364b53917ad433fdaf808180a3516101a181518092858086019101610495565b81010301601f19810183528261045e565b61050a565b608052511660a0523360c05260405192631711922960e31b845260018060a01b03166004840152602083602481335afa8015610453575f9061041b575b61021e935060e0525161010052516101b26020604051836101a18295518092858086019101610495565b61012052516001600160a01b0316610140525180516001600160401b03811161040757600154600181811c911680156103fd575b60208210146103e957601f8111610386575b50602091601f8211600114610326579181925f9261031b575b50508160011b915f199060031b1c1916176001555b604051610cfc908161052d823960805181610a4f015260a05181818161018c015281816108170152818161097f0152610b1d015260c0518181816101d3015261085e015260e05181818161014c015261058f0152610100518181816103ae015261068f01526101205181610a060152610140518181816102be0152818161070a01526108f10152f35b015190505f8061027d565b601f1982169260015f52805f20915f5b85811061036e57508360019510610356575b505050811b01600155610292565b01515f1960f88460031b161c191690555f8080610348565b91926020600181928685015181550194019201610336565b60015f527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6601f830160051c810191602084106103df575b601f0160051c01905b8181106103d45750610264565b5f81556001016103c7565b90915081906103be565b634e487b7160e01b5f52602260045260245ffd5b90607f1690610252565b634e487b7160e01b5f52604160045260245ffd5b506020833d60201161044b575b816104356020938361045e565b810103126104475761021e92516101f4565b5f80fd5b3d9150610428565b6040513d5f823e3d90fd5b601f909101601f19168101906001600160401b0382119082101761040757604052565b51906001600160a01b038216820361044757565b5f5b8381106104a65750505f910152565b8181015183820152602001610497565b81601f820112156104475780516001600160401b03811161040757604051926104e9601f8301601f19166020018561045e565b81845260208284010111610447576105079160208085019101610495565b90565b60208151910151906020811061051e575090565b5f199060200360031b1b169056fe6080806040526004361015610012575f80fd5b5f3560e01c9081630724fda914610a39575080630f7514a2146109ee5780631686c909146108825780632dd310001461083f5780633f31ae3f146104f957806349fc73dd146103f55780634e390d3e146103d157806351e75e8b1461039757806375829def146102e257806382bfefc81461029f57806390e64d1314610285578063a480ca79146101b0578063bb4b57341461016f578063c57981b514610135578063ce516507146100f55763f851a440146100cc575f80fd5b346100f1575f3660031901126100f15760206001600160a01b035f5416604051908152f35b5f80fd5b346100f15760203660031901126100f157602061012b60043560ff6001918060081c5f526002602052161b60405f205416151590565b6040519015158152f35b346100f1575f3660031901126100f15760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346100f1575f3660031901126100f157602060405164ffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100f15760203660031901126100f1576101c9610ac9565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803303610256575047905f80808085855af161020d610b52565b501561021e57602082604051908152f35b6001600160a01b03907f245bf0c0000000000000000000000000000000000000000000000000000000005f521660045260245260445ffd5b7f4e3ddeed000000000000000000000000000000000000000000000000000000005f526004523360245260445ffd5b346100f1575f3660031901126100f157602061012b610b15565b346100f1575f3660031901126100f15760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100f15760203660031901126100f1576102fb610ac9565b5f546001600160a01b03811633810361036857506001600160a01b037fffffffffffffffffffffffff0000000000000000000000000000000000000000921691829116175f55337fbdd36143ee09de60bdefca70680e0f71189b2ed7acee364b53917ad433fdaf805f80a3005b7fc6cce6a4000000000000000000000000000000000000000000000000000000005f526004523360245260445ffd5b346100f1575f3660031901126100f15760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346100f1575f3660031901126100f157602064ffffffffff60035416604051908152f35b346100f1575f3660031901126100f1576040515f6001548060011c906001811680156104ef575b6020831081146104db578285529081156104b75750600114610459575b6104558361044981850382610adf565b60405191829182610a82565b0390f35b91905060015f527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6915f905b80821061049d57509091508101602001610449610439565b919260018160209254838588010152019101909291610485565b60ff191660208086019190915291151560051b840190910191506104499050610439565b634e487b7160e01b5f52602260045260245ffd5b91607f169161041c565b60803660031901126100f157600435602435906001600160a01b038216918281036100f157604435926fffffffffffffffffffffffffffffffff84168094036100f1576064359367ffffffffffffffff85116100f157366023860112156100f157846004013567ffffffffffffffff81116100f1578060051b95602487820101903682116100f157610589610b15565b6107e8577f00000000000000000000000000000000000000000000000000000000000000008034106107b957506105d78760ff6001918060081c5f526002602052161b60405f205416151590565b61078d57604051602081019088825286604082015285606082015260608152610601608082610adf565b519020604051602081019182526020815261061d604082610adf565b5190209261063160206040519a018a610adf565b8852602401602088015b82821061077d57505050925f935b865185101561068b5760208560051b88010151908181105f1461067a575f52602052600160405f205b940193610649565b905f52602052600160405f20610672565b85907f000000000000000000000000000000000000000000000000000000000000000003610755578261072e7f1dcd2362ae467d43bf31cbcac0526c0958b23eb063e011ab49a5179c839ed9a99460409460035464ffffffffff81161561073b575b508460081c5f526002602052855f20600160ff87161b81541790557f0000000000000000000000000000000000000000000000000000000000000000610b91565b82519182526020820152a2005b64ffffffffff19164264ffffffffff1617600355886106ed565b7fb4f06787000000000000000000000000000000000000000000000000000000005f5260045ffd5b813581526020918201910161063b565b867febe6f30d000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b7fa164c6b4000000000000000000000000000000000000000000000000000000005f523460045260245260445ffd5b7fdf4bae05000000000000000000000000000000000000000000000000000000005f524260045264ffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660245260445ffd5b346100f1575f3660031901126100f15760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100f15760403660031901126100f15761089b610ac9565b602435906fffffffffffffffffffffffffffffffff82168092036100f1576001600160a01b035f5416338103610368575064ffffffffff60035416801515806109b9575b806109aa575b610950575061091582827f0000000000000000000000000000000000000000000000000000000000000000610b91565b7f2e9d425ba8b27655048400b366d7b6a1f7180ebdb088e06bb7389704860ffe1f60206001600160a01b03805f5416936040519586521693a3005b7fe2e40a0c000000000000000000000000000000000000000000000000000000005f524260045264ffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660245260445260645ffd5b506109b3610b15565b156108e5565b5062093a80810164ffffffffff81116109da5764ffffffffff1642116108df565b634e487b7160e01b5f52601160045260245ffd5b346100f1575f3660031901126100f1576104556040517f0000000000000000000000000000000000000000000000000000000000000000602082015260208152610449604082610adf565b346100f1575f3660031901126100f157610455907f0000000000000000000000000000000000000000000000000000000000000000602082015260208152610449604082610adf565b9190916020815282518060208301525f5b818110610ab3575060409293505f838284010152601f8019910116010190565b8060208092870101516040828601015201610a93565b600435906001600160a01b03821682036100f157565b90601f8019910116810190811067ffffffffffffffff821117610b0157604052565b634e487b7160e01b5f52604160045260245ffd5b64ffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168015159081610b4a575090565b905042101590565b3d15610b8c573d9067ffffffffffffffff8211610b015760405191610b81601f8201601f191660200184610adf565b82523d5f602084013e565b606090565b5f610bfe926001600160a01b038293604051968260208901947fa9059cbb000000000000000000000000000000000000000000000000000000008652166024890152604488015260448752610be7606488610adf565b1694519082865af1610bf7610b52565b9083610c63565b8051908115159182610c3f575b5050610c145750565b7f5274afe7000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b81925090602091810103126100f157602001518015908115036100f1575f80610c0b565b90610ca05750805115610c7857805190602001fd5b7f1425ea42000000000000000000000000000000000000000000000000000000005f5260045ffd5b81511580610ce6575b610cb1575090565b6001600160a01b03907f9996b315000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b50803b15610ca956fea164736f6c634300081a000a","sourceMap":"3100:1177:85:-:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;;;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;3100:1177:85;;;;;;;;2596:46:88;3100:1177:85;2604:37:88;3100:1177:85;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;-1:-1:-1;3100:1177:85;;-1:-1:-1;;;;;;3100:1177:85;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;;;;;1431:63:51;;;-1:-1:-1;;1431:63:51;2621:19:88;3100:1177:85;;;2604:37:88;;;;;;3100:1177:85;;;:::i;:::-;;;2604:37:88;;3100:1177:85;;2604:37:88;;;;;;:::i;:::-;2596:46;:::i;:::-;3100:1177:85;2580:62:88;3100:1177:85;;;2652:30:88;2702:10;3100:1177:85;2692:20:88;3100:1177:85;;;;;;2728:54:88;;3100:1177:85;;;;;;2728:54:88;;;3100:1177:85;;2702:10:88;2728:54;2702:10;;2728:54;;;;;;-1:-1:-1;2728:54:88;;;-1:-1:-1;2841:39:88;2722:60;;3100:1177:85;2722:60:88;3100:1177:85;2792:31:88;;2866:12;2849:30;3100:1177:85;;;;;;;;2849:30:88;;;;;;3100:1177:85;;;:::i;2841:39:88:-;2833:47;;3100:1177:85;-1:-1:-1;;;;;3100:1177:85;2890:20:88;;2930:14;3100:1177:85;;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;;;;;;;-1:-1:-1;3100:1177:85;;;;;;;;;;;-1:-1:-1;3100:1177:85;;;;;;;;;;;;;-1:-1:-1;3100:1177:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2792:31:88;3100:1177:85;;;;;;;;;;2833:47:88;3100:1177:85;;;;;2890:20:88;3100:1177:85;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3100:1177:85;;;;;;;;;;;-1:-1:-1;3100:1177:85;;-1:-1:-1;3100:1177:85;;-1:-1:-1;3100:1177:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3100:1177:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3100:1177:85;;;;;;;;;-1:-1:-1;3100:1177:85;;;;;;;;-1:-1:-1;3100:1177:85;;2728:54:88;3100:1177:85;2728:54:88;-1:-1:-1;3100:1177:85;;;;;;;;;;;;-1:-1:-1;3100:1177:85;;2728:54:88;3100:1177:85;2728:54:88;-1:-1:-1;3100:1177:85;2728:54:88;;3100:1177:85;2728:54:88;;3100:1177:85;2728:54:88;;;;;;3100:1177:85;2728:54:88;;;:::i;:::-;;;3100:1177:85;;;;2841:39:88;3100:1177:85;;2728:54:88;;3100:1177:85;-1:-1:-1;3100:1177:85;;2728:54:88;;;-1:-1:-1;2728:54:88;;;3100:1177:85;;;-1:-1:-1;3100:1177:85;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;3100:1177:85;;;;;;:::o;:::-;;;;;;;;-1:-1:-1;;3100:1177:85;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::o","linkReferences":{}},"deployedBytecode":{"object":"0x6080806040526004361015610012575f80fd5b5f3560e01c9081630724fda914610a39575080630f7514a2146109ee5780631686c909146108825780632dd310001461083f5780633f31ae3f146104f957806349fc73dd146103f55780634e390d3e146103d157806351e75e8b1461039757806375829def146102e257806382bfefc81461029f57806390e64d1314610285578063a480ca79146101b0578063bb4b57341461016f578063c57981b514610135578063ce516507146100f55763f851a440146100cc575f80fd5b346100f1575f3660031901126100f15760206001600160a01b035f5416604051908152f35b5f80fd5b346100f15760203660031901126100f157602061012b60043560ff6001918060081c5f526002602052161b60405f205416151590565b6040519015158152f35b346100f1575f3660031901126100f15760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346100f1575f3660031901126100f157602060405164ffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100f15760203660031901126100f1576101c9610ac9565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803303610256575047905f80808085855af161020d610b52565b501561021e57602082604051908152f35b6001600160a01b03907f245bf0c0000000000000000000000000000000000000000000000000000000005f521660045260245260445ffd5b7f4e3ddeed000000000000000000000000000000000000000000000000000000005f526004523360245260445ffd5b346100f1575f3660031901126100f157602061012b610b15565b346100f1575f3660031901126100f15760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100f15760203660031901126100f1576102fb610ac9565b5f546001600160a01b03811633810361036857506001600160a01b037fffffffffffffffffffffffff0000000000000000000000000000000000000000921691829116175f55337fbdd36143ee09de60bdefca70680e0f71189b2ed7acee364b53917ad433fdaf805f80a3005b7fc6cce6a4000000000000000000000000000000000000000000000000000000005f526004523360245260445ffd5b346100f1575f3660031901126100f15760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346100f1575f3660031901126100f157602064ffffffffff60035416604051908152f35b346100f1575f3660031901126100f1576040515f6001548060011c906001811680156104ef575b6020831081146104db578285529081156104b75750600114610459575b6104558361044981850382610adf565b60405191829182610a82565b0390f35b91905060015f527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6915f905b80821061049d57509091508101602001610449610439565b919260018160209254838588010152019101909291610485565b60ff191660208086019190915291151560051b840190910191506104499050610439565b634e487b7160e01b5f52602260045260245ffd5b91607f169161041c565b60803660031901126100f157600435602435906001600160a01b038216918281036100f157604435926fffffffffffffffffffffffffffffffff84168094036100f1576064359367ffffffffffffffff85116100f157366023860112156100f157846004013567ffffffffffffffff81116100f1578060051b95602487820101903682116100f157610589610b15565b6107e8577f00000000000000000000000000000000000000000000000000000000000000008034106107b957506105d78760ff6001918060081c5f526002602052161b60405f205416151590565b61078d57604051602081019088825286604082015285606082015260608152610601608082610adf565b519020604051602081019182526020815261061d604082610adf565b5190209261063160206040519a018a610adf565b8852602401602088015b82821061077d57505050925f935b865185101561068b5760208560051b88010151908181105f1461067a575f52602052600160405f205b940193610649565b905f52602052600160405f20610672565b85907f000000000000000000000000000000000000000000000000000000000000000003610755578261072e7f1dcd2362ae467d43bf31cbcac0526c0958b23eb063e011ab49a5179c839ed9a99460409460035464ffffffffff81161561073b575b508460081c5f526002602052855f20600160ff87161b81541790557f0000000000000000000000000000000000000000000000000000000000000000610b91565b82519182526020820152a2005b64ffffffffff19164264ffffffffff1617600355886106ed565b7fb4f06787000000000000000000000000000000000000000000000000000000005f5260045ffd5b813581526020918201910161063b565b867febe6f30d000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b7fa164c6b4000000000000000000000000000000000000000000000000000000005f523460045260245260445ffd5b7fdf4bae05000000000000000000000000000000000000000000000000000000005f524260045264ffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660245260445ffd5b346100f1575f3660031901126100f15760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100f15760403660031901126100f15761089b610ac9565b602435906fffffffffffffffffffffffffffffffff82168092036100f1576001600160a01b035f5416338103610368575064ffffffffff60035416801515806109b9575b806109aa575b610950575061091582827f0000000000000000000000000000000000000000000000000000000000000000610b91565b7f2e9d425ba8b27655048400b366d7b6a1f7180ebdb088e06bb7389704860ffe1f60206001600160a01b03805f5416936040519586521693a3005b7fe2e40a0c000000000000000000000000000000000000000000000000000000005f524260045264ffffffffff7f00000000000000000000000000000000000000000000000000000000000000001660245260445260645ffd5b506109b3610b15565b156108e5565b5062093a80810164ffffffffff81116109da5764ffffffffff1642116108df565b634e487b7160e01b5f52601160045260245ffd5b346100f1575f3660031901126100f1576104556040517f0000000000000000000000000000000000000000000000000000000000000000602082015260208152610449604082610adf565b346100f1575f3660031901126100f157610455907f0000000000000000000000000000000000000000000000000000000000000000602082015260208152610449604082610adf565b9190916020815282518060208301525f5b818110610ab3575060409293505f838284010152601f8019910116010190565b8060208092870101516040828601015201610a93565b600435906001600160a01b03821682036100f157565b90601f8019910116810190811067ffffffffffffffff821117610b0157604052565b634e487b7160e01b5f52604160045260245ffd5b64ffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168015159081610b4a575090565b905042101590565b3d15610b8c573d9067ffffffffffffffff8211610b015760405191610b81601f8201601f191660200184610adf565b82523d5f602084013e565b606090565b5f610bfe926001600160a01b038293604051968260208901947fa9059cbb000000000000000000000000000000000000000000000000000000008652166024890152604488015260448752610be7606488610adf565b1694519082865af1610bf7610b52565b9083610c63565b8051908115159182610c3f575b5050610c145750565b7f5274afe7000000000000000000000000000000000000000000000000000000005f5260045260245ffd5b81925090602091810103126100f157602001518015908115036100f1575f80610c0b565b90610ca05750805115610c7857805190602001fd5b7f1425ea42000000000000000000000000000000000000000000000000000000005f5260045ffd5b81511580610ce6575b610cb1575090565b6001600160a01b03907f9996b315000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b50803b15610ca956fea164736f6c634300081a000a","sourceMap":"3100:1177:85:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;3637:25:88;3100:1177:85;;;1170:1:18;1028:217;3100:1177:85;1144:1:18;3100:1177:85;-1:-1:-1;3100:1177:85;4919:14:88;3100:1177:85;;1176:12:18;3100:1177:85;;-1:-1:-1;3100:1177:85;;1206:27:18;:32;;1028:217;;3637:25:88;3100:1177:85;;;;;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;;;1563:37:88;3100:1177:85;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;;;;1387:43:88;3100:1177:85;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;;:::i;:::-;-1:-1:-1;;;;;6693:7:88;3100:1177:85;6679:10:88;;:21;6675:121;;6818:21;;6927:41;3100:1177:85;6927:41:88;;;;;;;;;:::i;:::-;;7021:8;7017:111;;3100:1177:85;;;;;;;;7017:111:88;-1:-1:-1;;;;;7052:65:88;;3100:1177:85;7052:65:88;3100:1177:85;;;;;;;7052:65:88;6675:121;6723:62;3100:1177:85;6723:62:88;3100:1177:85;;6679:10:88;3100:1177:85;;;;6723:62:88;3100:1177:85;;;;;;-1:-1:-1;;3100:1177:85;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;3100:1177:85;;;;;;;-1:-1:-1;;;;;1835:38:88;3100:1177:85;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;;:::i;:::-;;;-1:-1:-1;;;;;3100:1177:85;;908:10:51;899:19;;895:116;;3100:1177:85;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;908:10:51;1957:70;3100:1177:85;1957:70:51;;3100:1177:85;895:116:51;941:59;3100:1177:85;941:59:51;3100:1177:85;;908:10:51;3100:1177:85;;;;941:59:51;3100:1177:85;;;;;;-1:-1:-1;;3100:1177:85;;;;;;;1646:45:88;3100:1177:85;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;;3482:15:88;3100:1177:85;;;;;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;;;1919:30:88;3100:1177:85;;1919:30:88;3100:1177:85;;1919:30:88;3100:1177:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;1919:30:88;3100:1177:85;;;;;;;;;;;;-1:-1:-1;3100:1177:85;;-1:-1:-1;3100:1177:85;;;;;;;;;;1919:30:88;3100:1177:85;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3100:1177:85;;-1:-1:-1;3100:1177:85;;;-1:-1:-1;;;3100:1177:85;;;;;;;;;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;;;;;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4526:12:88;;:::i;:::-;4522:151;;4755:3;4743:9;;:15;4739:116;;4919:25;;;3100:1177:85;1170:1:18;1028:217;3100:1177:85;1144:1:18;3100:1177:85;-1:-1:-1;3100:1177:85;4919:14:88;3100:1177:85;;1176:12:18;3100:1177:85;;-1:-1:-1;3100:1177:85;;1206:27:18;:32;;1028:217;;4919:25:88;4915:108;;3100:1177:85;;;5222:36:88;;3100:1177:85;;;;;;;;;;;;;;;5222:36:88;;;3100:1177:85;5222:36:88;;:::i;:::-;3100:1177:85;5212:47:88;;3100:1177:85;;;;;;;;;;;;;;;:::i;:::-;;5189:72:88;;3100:1177:85;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;2069:27:14;;;2111:13;3100:1177:85;2106:116:14;2144:3;3100:1177:85;;2126:16:14;;;;;3100:1177:85;;;;;;;;9318:51:14;:5;;;:51;:5;;;3100:1177:85;9632:119:14;3100:1177:85;9632:119:14;3100:1177:85;;;9632:119:14;9318:51;2144:3;3100:1177:85;2111:13:14;;;9318:51;9632:119;3100:1177:85;9632:119:14;3100:1177:85;9632:119:14;3100:1177:85;;;9632:119:14;9318:51;;2126:16;;;5375:11:88;1379:33:14;5338:128:88;;3100:1177:85;4158:37;4237:31;3100:1177;;;5538:15:88;3100:1177:85;;;;5538:20:88;5534:92;;2106:116:14;3100:1177:85;;1677:1:18;3100:1177:85;;;4919:14:88;3100:1177:85;;;;;;;1709:12:18;;3100:1177:85;;;1732:28:18;3100:1177:85;;4158:5;:37;:::i;:::-;3100:1177;;;;;;;;;4237:31;3100:1177;5534:92:88;-1:-1:-1;;3100:1177:85;5599:15:88;3100:1177:85;;;5538:15:88;3100:1177:85;5534:92:88;;;5338:128;5416:39;3100:1177:85;5416:39:88;3100:1177:85;;5416:39:88;3100:1177:85;;;;;;;;;;;;;4915:108:88;4967:45;;3100:1177:85;4967:45:88;3100:1177:85;;;;4967:45:88;4739:116;4781:63;3100:1177:85;4781:63:88;4743:9;3100:1177:85;;;;;;4781:63:88;4522:151;4561:101;3100:1177:85;4561:101:88;4620:15;3100:1177:85;;;4649:10:88;3100:1177:85;;;;;4561:101:88;3100:1177:85;;;;;;-1:-1:-1;;3100:1177:85;;;;;;;-1:-1:-1;;;;;1476:41:88;3100:1177:85;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;3100:1177:85;;;908:10:51;899:19;;895:116;;3100:1177:85;;7580:15:88;3100:1177:85;;7580:19:88;;;:65;;;3100:1177:85;6032:40:88;;;3100:1177:85;6028:275:88;;6377:5;:30;:5;;;:30;:::i;:::-;6452:27;3100:1177:85;-1:-1:-1;;;;;3100:1177:85;;;;;;;;;;;6452:27:88;;3100:1177:85;6028:275:88;6095:197;3100:1177:85;6095:197:88;6173:15;3100:1177:85;;;6218:10:88;3100:1177:85;;;;;;;6095:197:88;6032:40;6060:12;;;:::i;:::-;6059:13;6032:40;;7580:65;3100:1177:85;7639:6:88;3100:1177:85;;;;;;;;;7603:15:88;:42;7580:65;;3100:1177:85;-1:-1:-1;;;3100:1177:85;;;;;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;;;3993:5:88;3976:23;;;3100:1177:85;3976:23:88;;;;3100:1177:85;3976:23:88;;:::i;3100:1177:85:-;;;;;;-1:-1:-1;;3100:1177:85;;;;;3329:13:88;;3312:31;;;3100:1177:85;3312:31:88;;;;3100:1177:85;3312:31:88;;:::i;3100:1177:85:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3100:1177:85;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;3100:1177:85;;;;;-1:-1:-1;3100:1177:85;3714:129:88;3100:1177:85;3789:10:88;3100:1177:85;3789:14:88;;;:47;;;;3782:54;3714:129;:::o;3789:47::-;3821:15;;;-1:-1:-1;3807:29:88;3714:129;:::o;3100:1177:85:-;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3100:1177:85;;;;;:::i;:::-;;;;-1:-1:-1;3100:1177:85;;;;:::o;:::-;;;:::o;1303:160:8:-;2847:1:11;3510:55;1303:160:8;-1:-1:-1;;;;;1303:160:8;;3100:1177:85;;1412:43:8;;;;;;3100:1177:85;1412:43:8;;3100:1177:85;1412:43:8;;;3100:1177:85;;;;;1412:43:8;;;;;;;:::i;:::-;3100:1177:85;3462:31:11;;;;;;;;;:::i;:::-;3510:55;;;:::i;:::-;3100:1177:85;;4551:22:8;;;;:57;;;;1303:160;4547:135;;;;1303:160;:::o;4547:135::-;4631:40;2847:1:11;4631:40:8;;3100:1177:85;1412:43:8;2847:1:11;4631:40:8;4551:57;4578:30;;;;1412:43;4578:30;;;3100:1177:85;;;;1412:43:8;4578:30;3100:1177:85;;;;;;;;;4551:57:8;;;;4625:582:11;;4797:8;;-1:-1:-1;3100:1177:85;;5874:21:11;:17;;6046:142;;;;;;5870:383;6225:17;5894:1;6225:17;;5894:1;6225:17;4793:408;3100:1177:85;;5045:22:11;:49;;;4793:408;5041:119;;5173:17;;:::o;5041:119::-;-1:-1:-1;;;;;5121:24:11;;5066:1;5121:24;3100:1177:85;5121:24:11;3100:1177:85;;5066:1:11;5121:24;5045:49;5071:18;;;:23;5045:49;","linkReferences":{},"immutableReferences":{"57792":[{"start":2639,"length":32}],"57796":[{"start":396,"length":32},{"start":2071,"length":32},{"start":2431,"length":32},{"start":2845,"length":32}],"57800":[{"start":467,"length":32},{"start":2142,"length":32}],"57804":[{"start":332,"length":32},{"start":1423,"length":32}],"57808":[{"start":942,"length":32},{"start":1679,"length":32}],"57811":[{"start":2566,"length":32}],"57816":[{"start":702,"length":32},{"start":1802,"length":32},{"start":2289,"length":32}]}},"methodIdentifiers":{"EXPIRATION()":"bb4b5734","FACTORY()":"2dd31000","FEE()":"c57981b5","MERKLE_ROOT()":"51e75e8b","TOKEN()":"82bfefc8","admin()":"f851a440","campaignName()":"0724fda9","claim(uint256,address,uint128,bytes32[])":"3f31ae3f","clawback(address,uint128)":"1686c909","collectFees(address)":"a480ca79","getFirstClaimTime()":"4e390d3e","hasClaimed(uint256)":"ce516507","hasExpired()":"90e64d13","ipfsCID()":"49fc73dd","shape()":"0f7514a2","transferAdmin(address)":"75829def"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.26+commit.8a97fa7a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"components\":[{\"internalType\":\"contract IERC20\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint40\",\"name\":\"expiration\",\"type\":\"uint40\"},{\"internalType\":\"address\",\"name\":\"initialAdmin\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"ipfsCID\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"merkleRoot\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"campaignName\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"shape\",\"type\":\"string\"}],\"internalType\":\"struct MerkleBase.ConstructorParams\",\"name\":\"baseParams\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"campaignCreator\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"AddressEmptyCode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"AddressInsufficientBalance\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"CallerNotAdmin\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FailedInnerCall\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"factory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"SablierMerkleBase_CallerNotFactory\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"blockTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint40\",\"name\":\"expiration\",\"type\":\"uint40\"}],\"name\":\"SablierMerkleBase_CampaignExpired\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"blockTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint40\",\"name\":\"expiration\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"firstClaimTime\",\"type\":\"uint40\"}],\"name\":\"SablierMerkleBase_ClawbackNotAllowed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"factoryAdmin\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"feeAmount\",\"type\":\"uint256\"}],\"name\":\"SablierMerkleBase_FeeTransferFail\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"feePaid\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"SablierMerkleBase_InsufficientFeePayment\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SablierMerkleBase_InvalidProof\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"SablierMerkleBase_StreamClaimed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"SafeERC20FailedOperation\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\"}],\"name\":\"Claim\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\"}],\"name\":\"Clawback\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldAdmin\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"TransferAdmin\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"EXPIRATION\",\"outputs\":[{\"internalType\":\"uint40\",\"name\":\"\",\"type\":\"uint40\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"FACTORY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MERKLE_ROOT\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"TOKEN\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"campaignName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\"},{\"internalType\":\"bytes32[]\",\"name\":\"merkleProof\",\"type\":\"bytes32[]\"}],\"name\":\"claim\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint128\",\"name\":\"amount\",\"type\":\"uint128\"}],\"name\":\"clawback\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"factoryAdmin\",\"type\":\"address\"}],\"name\":\"collectFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"feeAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFirstClaimTime\",\"outputs\":[{\"internalType\":\"uint40\",\"name\":\"\",\"type\":\"uint40\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"hasClaimed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hasExpired\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ipfsCID\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"shape\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"transferAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"AddressEmptyCode(address)\":[{\"details\":\"There's no code at `target` (it is not a contract).\"}],\"AddressInsufficientBalance(address)\":[{\"details\":\"The ETH balance of the account is not enough to perform the operation.\"}],\"FailedInnerCall()\":[{\"details\":\"A call to an address target failed. The target may have reverted.\"}],\"SafeERC20FailedOperation(address)\":[{\"details\":\"An operation with an ERC20 token failed.\"}]},\"events\":{\"TransferAdmin(address,address)\":{\"params\":{\"newAdmin\":\"The address of the new admin.\",\"oldAdmin\":\"The address of the old admin.\"}}},\"kind\":\"dev\",\"methods\":{\"claim(uint256,address,uint128,bytes32[])\":{\"details\":\"Depending on the Merkle campaign, it either transfers tokens to the recipient or creates a Lockup stream with an NFT minted to the recipient. Requirements: - The campaign must not have expired. - The stream must not have been claimed already. - The Merkle proof must be valid. - The `msg.value` must not be less than `FEE`.\",\"params\":{\"amount\":\"The amount of ERC-20 tokens to be transferred to the recipient.\",\"index\":\"The index of the recipient in the Merkle tree.\",\"merkleProof\":\"The proof of inclusion in the Merkle tree.\",\"recipient\":\"The address of the airdrop recipient.\"}},\"clawback(address,uint128)\":{\"details\":\"Emits a {Clawback} event. Requirements: - `msg.sender` must be the admin. - No claim must be made, OR The current timestamp must not exceed 7 days after the first claim, OR The campaign must be expired.\",\"params\":{\"amount\":\"The amount of tokens to claw back.\",\"to\":\"The address to receive the tokens.\"}},\"collectFees(address)\":{\"params\":{\"factoryAdmin\":\"The address of the `FACTORY` admin.\"},\"returns\":{\"feeAmount\":\"The amount of native tokens (e.g., ETH) collected as fees.\"}},\"constructor\":{\"details\":\"Constructs the contract by initializing the immutable state variables.\"},\"hasClaimed(uint256)\":{\"details\":\"Uses a bitmap to save gas.\",\"params\":{\"index\":\"The index of the recipient to check.\"}},\"transferAdmin(address)\":{\"details\":\"Notes: - Does not revert if the admin is the same. - This function can potentially leave the contract without an admin, thereby removing any functionality that is only available to the admin. Requirements: - `msg.sender` must be the contract admin.\",\"params\":{\"newAdmin\":\"The address of the new admin.\"}}},\"title\":\"SablierMerkleInstant\",\"version\":1},\"userdoc\":{\"errors\":{\"CallerNotAdmin(address,address)\":[{\"notice\":\"Thrown when `msg.sender` is not the admin.\"}],\"SablierMerkleBase_CallerNotFactory(address,address)\":[{\"notice\":\"Thrown when caller is not the factory contract.\"}],\"SablierMerkleBase_CampaignExpired(uint256,uint40)\":[{\"notice\":\"Thrown when trying to claim after the campaign has expired.\"}],\"SablierMerkleBase_ClawbackNotAllowed(uint256,uint40,uint40)\":[{\"notice\":\"Thrown when trying to clawback when the current timestamp is over the grace period and the campaign has not expired.\"}],\"SablierMerkleBase_FeeTransferFail(address,uint256)\":[{\"notice\":\"Thrown if the fees withdrawal failed.\"}],\"SablierMerkleBase_InsufficientFeePayment(uint256,uint256)\":[{\"notice\":\"Thrown when trying to claim with an insufficient fee payment.\"}],\"SablierMerkleBase_InvalidProof()\":[{\"notice\":\"Thrown when trying to claim with an invalid Merkle proof.\"}],\"SablierMerkleBase_StreamClaimed(uint256)\":[{\"notice\":\"Thrown when trying to claim the same stream more than once.\"}]},\"events\":{\"Claim(uint256,address,uint128)\":{\"notice\":\"Emitted when a recipient claims an instant airdrop.\"},\"Clawback(address,address,uint128)\":{\"notice\":\"Emitted when the admin claws back the unclaimed tokens.\"},\"TransferAdmin(address,address)\":{\"notice\":\"Emitted when the admin is transferred.\"}},\"kind\":\"user\",\"methods\":{\"EXPIRATION()\":{\"notice\":\"The cut-off point for the campaign, as a Unix timestamp. A value of zero means there is no expiration.\"},\"FACTORY()\":{\"notice\":\"Retrieves the address of the factory contract.\"},\"FEE()\":{\"notice\":\"Retrieves the minimum fee required to claim the airdrop, which is paid in the native token of the chain, e.g. ETH for Ethereum Mainnet.\"},\"MERKLE_ROOT()\":{\"notice\":\"The root of the Merkle tree used to validate the proofs of inclusion.\"},\"TOKEN()\":{\"notice\":\"The ERC-20 token to distribute.\"},\"admin()\":{\"notice\":\"The address of the admin account or contract.\"},\"campaignName()\":{\"notice\":\"Retrieves the name of the campaign.\"},\"claim(uint256,address,uint128,bytes32[])\":{\"notice\":\"Makes the claim.\"},\"clawback(address,uint128)\":{\"notice\":\"Claws back the unclaimed tokens from the campaign.\"},\"collectFees(address)\":{\"notice\":\"Collects the accrued fees by transferring them to `FACTORY` admin. Requirements: - `msg.sender` must be the `FACTORY` contract.\"},\"getFirstClaimTime()\":{\"notice\":\"Returns the timestamp when the first claim is made.\"},\"hasClaimed(uint256)\":{\"notice\":\"Returns a flag indicating whether a claim has been made for a given index.\"},\"hasExpired()\":{\"notice\":\"Returns a flag indicating whether the campaign has expired.\"},\"ipfsCID()\":{\"notice\":\"The content identifier for indexing the campaign on IPFS.\"},\"shape()\":{\"notice\":\"Retrieves the shape of the lockup stream that the campaign produces upon claiming.\"},\"transferAdmin(address)\":{\"notice\":\"Transfers the contract admin to a new address.\"}},\"notice\":\"See the documentation in {ISablierMerkleInstant}.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/SablierMerkleInstant.sol\":\"SablierMerkleInstant\"},\"evmVersion\":\"shanghai\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":1000},\"remappings\":[\":@openzeppelin/contracts/=node_modules/@openzeppelin/contracts/\",\":@prb/math/=node_modules/@prb/math/\",\":@sablier/lockup/=node_modules/@sablier/lockup/\",\":forge-std/=node_modules/forge-std/\",\":hardhat/=node_modules/hardhat/\",\":murky/=node_modules/murky/\",\":openzeppelin-contracts/=node_modules/murky/lib/openzeppelin-contracts/\",\":solady/=node_modules/solady/\"],\"viaIR\":true},\"sources\":{\"node_modules/@openzeppelin/contracts/interfaces/IERC165.sol\":{\"keccak256\":\"0xde7e9fd9aee8d4f40772f96bb3b58836cbc6dfc0227014a061947f8821ea9724\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://11fea9f8bc98949ac6709f0c1699db7430d2948137aa94d5a9e95a91f61a710a\",\"dweb:/ipfs/QmQdfRXxQjwP6yn3DVo1GHPpriKNcFghSPi94Z1oKEFUNS\"]},\"node_modules/@openzeppelin/contracts/interfaces/IERC4906.sol\":{\"keccak256\":\"0xb31b86c03f4677dcffa4655285d62433509513be9bafa0e04984565052d34e44\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a89c6fb0cd5fef4244500b633f63def9f2bb2134debb961e590bd5a2910662fd\",\"dweb:/ipfs/QmNqWyCxyopvb99RbRomPpfTZGXRi5MnzgpFXE2BFLLgMc\"]},\"node_modules/@openzeppelin/contracts/interfaces/IERC721.sol\":{\"keccak256\":\"0xc4d7ebf63eb2f6bf3fee1b6c0ee775efa9f31b4843a5511d07eea147e212932d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01c66a2fad66bc710db7510419a7eee569b40b67cd9f01b70a3fc90d6f76c03b\",\"dweb:/ipfs/QmT1CjJZq4eTNA4nu8E9ZrWfaZu6ReUsDbjcK8DbEFqwx5\"]},\"node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xc6a8ff0ea489379b61faa647490411b80102578440ab9d84e9a957cc12164e70\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ea104e577e63faea3b69c415637e99e755dcbf64c5833d7140c35a714d6d90c\",\"dweb:/ipfs/Qmau6x4Ns9XdyynRCNNp3RhLqijJjFm7z5fyZazfYFGYdq\"]},\"node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0x6008dabfe393240d73d7dd7688033f72740d570aa422254d29a7dce8568f3aff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f5196ec75139918c6c7bb4251b36395e668f1fa6d206beba7e7520e74913940d\",\"dweb:/ipfs/QmSyqjksXxmm2mCG6qRd1yuwLykypkSVBbnBnGqJRcuJMi\"]},\"node_modules/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x37bb49513c49c87c4642a891b13b63571bc87013dde806617aa1efb54605f386\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3036b3a83b7c48f96641f2a9002b9f2dcb6a5958dd670894ada21ae8229b3d0\",\"dweb:/ipfs/QmUNfSBdoVtjhETaUJCYcaC7pTMgbhht926tJ2uXJbiVd3\"]},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5ef46daa3b58ef2702279d514780316efaa952915ee1aa3396f041ee2982b0b4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2f8f2a76e23b02fc69e8cd24c3cb47da6c7af3a2d6c3a382f8ac25c6e094ade7\",\"dweb:/ipfs/QmPV4ZS4tPVv4mTCf9ejyZ1ai57EEibDRj7mN2ARDCLV5n\"]},\"node_modules/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0x37d1aaaa5a2908a09e9dcf56a26ddf762ecf295afb5964695937344fc6802ce1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed0bfc1b92153c5000e50f4021367b931bbe96372ac6facec3c4961b72053d02\",\"dweb:/ipfs/Qmbwp8VDerjS5SV1quwHH1oMXxPQ93fzfLVqJ2RCqbowGE\"]},\"node_modules/@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0xaf28a975a78550e45f65e559a3ad6a5ad43b9b8a37366999abd1b7084eb70721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7bd24e224f67f65bfadf85dc2929fa965456bb2415478bd0125471b5ce35245\",\"dweb:/ipfs/QmRaydGr8BTHs1kvaZfsNU69pKzUAGFrvABn1KiRSbE51y\"]},\"node_modules/@openzeppelin/contracts/utils/cryptography/MerkleProof.sol\":{\"keccak256\":\"0x6400c4bee15052e043e5d10315135972529bd1c8012f43da494dc6b4f4661058\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://da5d3d47d35af4373743a559ea4b9b7ecfe4bab6f0703f410c1e59959b7966ac\",\"dweb:/ipfs/QmTHdoghh4WLu4yURjGEgRk162pcwwdsG52MPGa12GqnGR\"]},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"]},\"node_modules/@openzeppelin/contracts/utils/structs/BitMaps.sol\":{\"keccak256\":\"0x3616f1b0d0a9ee1ca8f0953ecaceb9230e36f691c7974d30f964212acff52d2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d4bebdd07b31ac28e3e596ac6f0333da90a4e332405aa7d65f3a3a7e0b4cf15e\",\"dweb:/ipfs/QmckoDU5bBnye2UtPcrfJNahLD2FbxrnPP9nrREMWPpnug\"]},\"node_modules/@prb/math/src/Common.sol\":{\"keccak256\":\"0x8225a3898d2f11f585da1fb82234800e9717fa080dbe53d450fd429a3a632e99\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2dcbf39ca575f68f32f0d1c66391de94082424956e7585e849813966f8c0fc05\",\"dweb:/ipfs/QmYvk8vXFDUJHrmqbtutYXfoLomLBosYLyBzuPoYBxsQ42\"]},\"node_modules/@prb/math/src/UD2x18.sol\":{\"keccak256\":\"0xfb624e24cd8bb790fa08e7827819de85504a86e20e961fa4ad126c65b6d90641\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dd795b8df250e7eedc68e2dba1afbb60357ce8f22f21bed212b5a9046d2057d2\",\"dweb:/ipfs/QmUHtrSr8Gb6bvSe2rCWPA5YrJq72UiJARYr1gZqFVRsYH\"]},\"node_modules/@prb/math/src/UD60x18.sol\":{\"keccak256\":\"0xb98c6f74275914d279e8af6c502c2b1f50d5f6e1ed418d3b0153f5a193206c48\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a750edde2955f160806a51083a12185fb04e20efca0e3a7ebd127dc1acc049a9\",\"dweb:/ipfs/QmeAre3mThopoQPB9mSXZq6jck59QZ7JbDFR83urd2SLvp\"]},\"node_modules/@prb/math/src/sd1x18/Casting.sol\":{\"keccak256\":\"0x5d365f655f01598926c5d4fe5cda277f2cc