{"ready":true,"chainId":99801,"distributor":"0xCF8956BAF0B24D41304EC9dEf808F05Bf0ccea7D","owner":"0x9332e35e87eAc40a0810813a7a12C458E8043184","artifact":{"format":"kalos-testnet-contract-artifact-v1","artifactVersion":"airdrop-testnet-candidate.2","contractName":"KalosMerkleAirdrop","testnetOnly":true,"allowedChainIds":[99801],"independentlyAudited":false,"sourceLockDigest":"94c792e9de930b06aa7a2907dbd55400a7e5adb621f89ee91b602209632e3fd0","compiler":{"version":"0.8.30+commit.73712a01","path":".tools/solc-windows-amd64-v0.8.30+commit.73712a01.exe","sha256":"0xccbd3ed44d5fbd26fe039702d403421f1212d2e8752e3cbe3bfd074986911586","url":"https://raw.githubusercontent.com/ethereum/solc-bin/gh-pages/windows-amd64/solc-windows-amd64-v0.8.30+commit.73712a01.exe"},"abi":[{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AlreadyClaimed","type":"error"},{"inputs":[],"name":"GloballyStopped","type":"error"},{"inputs":[],"name":"InsolventToken","type":"error"},{"inputs":[],"name":"InvalidAllocation","type":"error"},{"inputs":[],"name":"InvalidAmount","type":"error"},{"inputs":[],"name":"InvalidCampaign","type":"error"},{"inputs":[],"name":"InvalidOwner","type":"error"},{"inputs":[],"name":"InvalidProof","type":"error"},{"inputs":[],"name":"InvalidRecipient","type":"error"},{"inputs":[{"internalType":"enum KalosMerkleAirdrop.State","name":"actual","type":"uint8"}],"name":"InvalidState","type":"error"},{"inputs":[],"name":"InvalidToken","type":"error"},{"inputs":[],"name":"NoWithdrawableFunds","type":"error"},{"inputs":[],"name":"NotFullyFunded","type":"error"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"SafeERC20FailedOperation","type":"error"},{"inputs":[],"name":"Unauthorized","type":"error"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"actual","type":"uint256"}],"name":"UnexpectedCampaignId","type":"error"},{"inputs":[],"name":"UnsupportedTokenTransfer","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"}],"name":"AirdropsStopped","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"campaignId","type":"uint256"}],"name":"CampaignActivated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"campaignId","type":"uint256"}],"name":"CampaignCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"campaignId","type":"uint256"},{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"bytes32","name":"merkleRoot","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"totalAllocation","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"recipientCount","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"allocationDigest","type":"bytes32"}],"name":"CampaignCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"campaignId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"funded","type":"uint256"}],"name":"CampaignFunded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"campaignId","type":"uint256"}],"name":"CampaignPaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"campaignId","type":"uint256"}],"name":"CampaignResumed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"campaignId","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"index","type":"uint256"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Claimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"reserveReleased","type":"uint256"}],"name":"EmergencyWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"SurplusRecovered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"campaignId","type":"uint256"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"UnclaimedWithdrawn","type":"event"},{"inputs":[],"name":"LEAF_DOMAIN","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_PROOF_LENGTH","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_RECIPIENTS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"activateCampaign","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"campaignRemaining","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"campaigns","outputs":[{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"bytes32","name":"merkleRoot","type":"bytes32"},{"internalType":"bytes32","name":"allocationDigest","type":"bytes32"},{"internalType":"uint256","name":"totalAllocation","type":"uint256"},{"internalType":"uint256","name":"recipientCount","type":"uint256"},{"internalType":"uint256","name":"funded","type":"uint256"},{"internalType":"uint256","name":"claimed","type":"uint256"},{"internalType":"uint256","name":"refunded","type":"uint256"},{"internalType":"enum KalosMerkleAirdrop.State","name":"state","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"cancelCampaign","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes32[]","name":"proof","type":"bytes32[]"}],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"expectedCampaignId","type":"uint256"},{"internalType":"address","name":"token","type":"address"},{"internalType":"bytes32","name":"merkleRoot","type":"bytes32"},{"internalType":"uint256","name":"totalAllocation","type":"uint256"},{"internalType":"uint256","name":"recipientCount","type":"uint256"},{"internalType":"bytes32","name":"allocationDigest","type":"bytes32"}],"name":"createCampaign","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"emergencyRecovered","outputs":[{"internalType":"bool","name":"recovered","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"emergencyWithdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"fundCampaign","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"isClaimed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"leaf","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nextCampaignId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"pauseCampaign","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"recoverSurplus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"reserved","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"resumeCampaign","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stopped","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"withdrawCancelled","outputs":[],"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x60a0604052600160025534801561001557600080fd5b5060405161231838038061231883398101604081905261003491610086565b60016000556001600160a01b038116158061005757506001600160a01b03811630145b15610075576040516349e27cff60e01b815260040160405180910390fd5b6001600160a01b03166080526100b6565b60006020828403121561009857600080fd5b81516001600160a01b03811681146100af57600080fd5b9392505050565b6080516121c26101566000396000818161025b0152818161036a015281816104af015281816104d60152818161055a015281816106f80152818161071f015281816108630152818161096b01528181610d2e01528181610de501528181610edf01528181610f0601528181610f9201528181611259015281816113e7015281816114750152818161152001528181611696015261186601526121c26000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c80638da5cb5b116100b8578063b9df20511161007c578063b9df2051146102d7578063d0f9ff9a146102df578063da9425e214610306578063de99347a14610326578063f168177e14610339578063f364c90c1461034c57600080fd5b80638da5cb5b14610256578063918eab15146102955780639e3696d9146102a8578063a6980ce2146102bb578063ad67002a146102c457600080fd5b80635d4df3bf1161010a5780635d4df3bf146101c6578063688a25af146101d95780636ff1c9bc1461020c57806375f12b211461021f5780637903a7561461022c5780637e2477a31461024357600080fd5b80630e57c69a1461014757806310fbebf71461015c578063141961bc1461016f57806345598b4a146101a0578063493f1726146101b3575b600080fd5b61015a610155366004611ee1565b61035f565b005b61015a61016a366004611f0b565b61054f565b61018261017d366004611f0b565b610790565b60405161019799989796959493929190611f5c565b60405180910390f35b61015a6101ae366004611f0b565b610858565b61015a6101c1366004611f0b565b610960565b61015a6101d4366004611fb6565b610aa4565b6101fc6101e736600461205b565b60056020526000908152604090205460ff1681565b6040519015158152602001610197565b61015a61021a36600461205b565b610d23565b6001546101fc9060ff1681565b61023560025481565b604051908152602001610197565b61015a610251366004612076565b610f87565b61027d7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610197565b61015a6102a33660046120c4565b61124e565b61015a6102b6366004611f0b565b61168b565b61023561271081565b6102356102d23660046120e6565b6117a7565b610235602081565b6102357fe2a915bdd10e43512c10e14a150da3ef92dd69b58dcb860722383a11e32e4d8a81565b61023561031436600461205b565b60046020526000908152604090205481565b61015a610334366004611f0b565b61185b565b610235610347366004611f0b565b611963565b6101fc61035a3660046120c4565b6119c5565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146103a7576040516282b42960e81b815260040160405180910390fd5b6103af6119f4565b6001600160a01b03821615806103cd57506001600160a01b0382163b155b156103eb5760405163c1ab6dc160e01b815260040160405180910390fd5b816103f581611a1e565b81158061048b57506001600160a01b038381166000908152600460208190526040918290205491516370a0823160e01b8152309181019190915290918316906370a0823190602401602060405180830381865afa15801561045a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061047e9190612123565b6104889190612152565b82115b156104a9576040516353cd7f7960e01b815260040160405180910390fd5b6104d4817f000000000000000000000000000000000000000000000000000000000000000084611abb565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b03167ec571bcd43634ce4043e2bd7088ab9a1d36bd5dc21f5f4246e9eddda3c222f68460405161053891815260200190565b60405180910390a35061054b6001600055565b5050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610597576040516282b42960e81b815260040160405180910390fd5b61059f6119f4565b60006105aa82611ce5565b60015490915060ff161580156105d957506004600882015460ff1660048111156105d6576105d6611f24565b14155b1561060957600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b60405180910390fd5b80546001600160a01b031660009081526005602052604090205460ff1615610644576040516353cd7f7960e01b815260040160405180910390fd5b600081600701548260060154836005015461065f9190612152565b6106699190612152565b90508060000361068c576040516353cd7f7960e01b815260040160405180910390fd5b81546106a0906001600160a01b0316611a1e565b808260070160008282546106b49190612173565b909155505081546001600160a01b0316600090815260046020526040812080548392906106e2908490612152565b9091555050815461071d906001600160a01b03167f000000000000000000000000000000000000000000000000000000000000000083611abb565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316837fe714a003ff32e430172ffebb2eed392a83ea6cbb3f999674d48070451e45e9838360405161077991815260200190565b60405180910390a3505061078d6001600055565b50565b600080600080600080600080600080600360008c815260200190815260200160002090508060000160009054906101000a90046001600160a01b03168160010154826002015483600301548460040154856005015486600601548760070154600160009054906101000a900460ff1680156108245750600060088a015460ff16600481111561082157610821611f24565b14155b61083557600889015460ff16610838565b60045b995099509950995099509950995099509950509193959799909294969850565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146108a0576040516282b42960e81b815260040160405180910390fd5b6108a86119f4565b60015460ff16156108cc576040516377b048e160e01b815260040160405180910390fd5b60006108d782611ce5565b90506004600882015460ff1660048111156108f4576108f4611f24565b0361091b57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b60088101805460ff1916600417905560405182907f403b6718db13878ac16c27decb08f09d3a10f116c7c25af575ff5bfbc11ae9e690600090a25061078d6001600055565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146109a8576040516282b42960e81b815260040160405180910390fd5b6109b06119f4565b60015460ff16156109d4576040516377b048e160e01b815260040160405180910390fd5b60006109df82611ce5565b90506001600882015460ff1660048111156109fc576109fc611f24565b14610a2357600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b8060030154816005015414610a4b576040516341d1bdff60e01b815260040160405180910390fd5b8054610a5f906001600160a01b0316611a1e565b60088101805460ff1916600217905560405182907f141c887329aaf008f79cc3613bdf4b305d54d2f381909f35518966b3d6a79d5690600090a25061078d6001600055565b610aac6119f4565b60015460ff1615610ad0576040516377b048e160e01b815260040160405180910390fd5b6000610adb87611ce5565b90506002600882015460ff166004811115610af857610af8611f24565b14610b1f57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b6001600160a01b0385161580610b3d57506001600160a01b03851630145b15610b5b57604051634e46966960e11b815260040160405180910390fd5b831580610b6c575080600401548610155b15610b8a5760405163162908e360e11b815260040160405180910390fd5b610b9487876119c5565b15610bb257604051630c8d9eab60e31b815260040160405180910390fd5b80600601548160030154610bc69190612152565b841115610be65760405163162908e360e11b815260040160405180910390fd5b6020821180610c0d5750610c0b83838360010154610c068b8b8b8b6117a7565b611d30565b155b15610c2b576040516309bde33960e01b815260040160405180910390fd5b8054610c3f906001600160a01b0316611a1e565b600087815260066020818152604080842060088b901c855290915282208054600160ff8b161b17905582018054869290610c7a908490612173565b909155505080546001600160a01b031660009081526004602052604081208054869290610ca8908490612152565b90915550508054610cc3906001600160a01b03168686611abb565b8054604080516001600160a01b039283168152602081018790529187169188918a917ff960c21aca9260721d7642bfc1e7e7f5e4e20cd2bd47ad9bc2d1f5309eb89489910160405180910390a450610d1b6001600055565b505050505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d6b576040516282b42960e81b815260040160405180910390fd5b610d736119f4565b6001600160a01b0381161580610d9157506001600160a01b03811630145b80610da457506001600160a01b0381163b155b15610dc25760405163c1ab6dc160e01b815260040160405180910390fd5b60015460ff16610e2d576001805460ff1916811790556040516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016907f17c8bac359a298da3101e92bc9953a016e071548799431077ad6e6e29564fbf090600090a25b6040516370a0823160e01b815230600482015281906000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610e76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9a9190612123565b6001600160a01b0384166000908152600460208181526040808420805460058452918520805460ff19166001179055929091529190559091508115610f0457610f04837f000000000000000000000000000000000000000000000000000000000000000084611abb565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03167ff6ef4d26ce8ca3318c261d24ca939f2b45a0e46dd59bf453fc1a52dc4cd40ef88484604051610f72929190918252602082015260400190565b60405180910390a350505061078d6001600055565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610fcf576040516282b42960e81b815260040160405180910390fd5b610fd76119f4565b60015460ff1615610ffb576040516377b048e160e01b815260040160405180910390fd5b600254861461102b576002546040516333e4da3b60e21b8152610600918891600401918252602082015260400190565b6001600160a01b038516158061104957506001600160a01b03851630145b8061105c57506001600160a01b0385163b155b1561107a5760405163c1ab6dc160e01b815260040160405180910390fd5b831580611085575080155b8061108e575082155b80611097575081155b806110a3575061271082115b156110c1576040516305d7ba1960e11b815260040160405180910390fd5b60028054600091826110d283612186565b919050559050604051806101200160405280876001600160a01b031681526020018681526020018381526020018581526020018481526020016000815260200160008152602001600081526020016001600481111561113357611133611f24565b8152506003600083815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015560c0820151816006015560e082015181600701556101008201518160080160006101000a81548160ff021916908360048111156111e7576111e7611f24565b0217905550506040805187815260208101879052908101859052606081018490526001600160a01b038816915082907f7a82b455ae1425c9c9a7ff311e8c8671c58f0cb214b7594722eb398eae5371009060800160405180910390a350610d1b6001600055565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611296576040516282b42960e81b815260040160405180910390fd5b61129e6119f4565b60015460ff16156112c2576040516377b048e160e01b815260040160405180910390fd5b60006112cd83611ce5565b90506001600882015460ff1660048111156112ea576112ea611f24565b1461131157600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b81158061133057508060050154816003015461132d9190612152565b82115b1561134e5760405163162908e360e11b815260040160405180910390fd5b8054611362906001600160a01b0316611a1e565b80546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa1580156113aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ce9190612123565b82546040516370a0823160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152929350600092909116906370a0823190602401602060405180830381865afa15801561143d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114619190612123565b835490915061149b906001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000003087611d48565b82546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa1580156114e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115079190612123565b84546040516370a0823160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152929350600092909116906370a0823190602401602060405180830381865afa158015611576573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159a9190612123565b9050838210806115b35750856115b08584612152565b14155b806115bd57508083105b806115d15750856115ce8285612152565b14155b156115ef576040516304ca328160e11b815260040160405180910390fd5b858560050160008282546116039190612173565b909155505084546001600160a01b031660009081526004602052604081208054889290611631908490612173565b9091555050600585015460405188917f42a74499fc8265a526ec8ab4b3e4a4a06e50ef92c084b2634b356f72a5ee44af91611674918a8252602082015260400190565b60405180910390a2505050505061054b6001600055565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146116d3576040516282b42960e81b815260040160405180910390fd5b6116db6119f4565b60015460ff16156116ff576040516377b048e160e01b815260040160405180910390fd5b600061170a82611ce5565b90506003600882015460ff16600481111561172757611727611f24565b1461174e57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b8054611762906001600160a01b0316611a1e565b60088101805460ff1916600217905560405182907f25128b02d37802123547e1526ab020238abf16bbc37a5bd0a918d5088b016e9590600090a25061078d6001600055565b6000806117b386611ce5565b54604080517fe2a915bdd10e43512c10e14a150da3ef92dd69b58dcb860722383a11e32e4d8a602080830191909152468284015230606083015260808201999099526001600160a01b0392831660a082015260c0810197909752941660e0860152505061010080840191909152815180840390910181526101208301825280519084012061014080840191909152815180840390910181526101609092019052805191012090565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146118a3576040516282b42960e81b815260040160405180910390fd5b6118ab6119f4565b60015460ff16156118cf576040516377b048e160e01b815260040160405180910390fd5b60006118da82611ce5565b90506002600882015460ff1660048111156118f7576118f7611f24565b1461191e57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b60088101805460ff1916600317905560405182907fab1902ee37c92d1a78dda53814d64b815e7e3ee287d60843a3dbd6954e3206b490600090a25061078d6001600055565b60008061196f83611ce5565b80546001600160a01b031660009081526005602052604090205490915060ff166119bb578060070154816006015482600501546119ac9190612152565b6119b69190612152565b6119be565b60005b9392505050565b6000828152600660209081526040808320600885901c8452909152902054600160ff83161b1615155b92915050565b600260005403611a1757604051633ee5aeb560e01b815260040160405180910390fd5b6002600055565b6001600160a01b0381166000818152600460208190526040918290205491516370a0823160e01b815230918101919091529091906370a0823190602401602060405180830381865afa158015611a78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a9c9190612123565b101561078d576040516303ebbed960e01b815260040160405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a0823190602401602060405180830381865afa158015611b02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b269190612123565b6040516370a0823160e01b81526001600160a01b0385811660048301529192506000918616906370a0823190602401602060405180830381865afa158015611b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b969190612123565b9050611bac6001600160a01b0386168585611db5565b6040516370a0823160e01b81523060048201526000906001600160a01b038716906370a0823190602401602060405180830381865afa158015611bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c179190612123565b6040516370a0823160e01b81526001600160a01b0387811660048301529192506000918816906370a0823190602401602060405180830381865afa158015611c63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c879190612123565b905081841080611ca0575084611c9d8386612152565b14155b80611caa57508281105b80611cbe575084611cbb8483612152565b14155b15611cdc576040516304ca328160e11b815260040160405180910390fd5b50505050505050565b600081815260036020526040812090600882015460ff166004811115611d0d57611d0d611f24565b03611d2b57604051630477a3e560e41b815260040160405180910390fd5b919050565b600082611d3e868685611deb565b1495945050505050565b6040516001600160a01b038481166024830152838116604483015260648201839052611daf9186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611e2d565b50505050565b6040516001600160a01b03838116602483015260448201839052611de691859182169063a9059cbb90606401611d7d565b505050565b600081815b84811015611e2457611e1a82878784818110611e0e57611e0e61219f565b90506020020135611e9e565b9150600101611df0565b50949350505050565b600080602060008451602086016000885af180611e50576040513d6000823e3d81fd5b50506000513d91508115611e68578060011415611e75565b6001600160a01b0384163b155b15611daf57604051635274afe760e01b81526001600160a01b0385166004820152602401610600565b6000818310611eba5760008281526020849052604090206119be565b5060009182526020526040902090565b80356001600160a01b0381168114611d2b57600080fd5b60008060408385031215611ef457600080fd5b611efd83611eca565b946020939093013593505050565b600060208284031215611f1d57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b60058110611f5857634e487b7160e01b600052602160045260246000fd5b9052565b60006101208201905060018060a01b038b1682528960208301528860408301528760608301528660808301528560a08301528460c08301528360e0830152611fa8610100830184611f3a565b9a9950505050505050505050565b60008060008060008060a08789031215611fcf57600080fd5b8635955060208701359450611fe660408801611eca565b935060608701359250608087013567ffffffffffffffff81111561200957600080fd5b8701601f8101891361201a57600080fd5b803567ffffffffffffffff81111561203157600080fd5b8960208260051b840101111561204657600080fd5b60208201935080925050509295509295509295565b60006020828403121561206d57600080fd5b6119be82611eca565b60008060008060008060c0878903121561208f57600080fd5b8635955061209f60208801611eca565b95989597505050506040840135936060810135936080820135935060a0909101359150565b600080604083850312156120d757600080fd5b50508035926020909101359150565b600080600080608085870312156120fc57600080fd5b843593506020850135925061211360408601611eca565b9396929550929360600135925050565b60006020828403121561213557600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b818103818111156119ee576119ee61213c565b602081016119ee8284611f3a565b808201808211156119ee576119ee61213c565b6000600182016121985761219861213c565b5060010190565b634e487b7160e01b600052603260045260246000fdfea164736f6c634300081e000a","creationKeccak":"0x697180c637a8281c8b13fec696f39a9b26a9941d73f2fe69bb0f17897d924134","runtimeTemplate":"0x608060405234801561001057600080fd5b50600436106101425760003560e01c80638da5cb5b116100b8578063b9df20511161007c578063b9df2051146102d7578063d0f9ff9a146102df578063da9425e214610306578063de99347a14610326578063f168177e14610339578063f364c90c1461034c57600080fd5b80638da5cb5b14610256578063918eab15146102955780639e3696d9146102a8578063a6980ce2146102bb578063ad67002a146102c457600080fd5b80635d4df3bf1161010a5780635d4df3bf146101c6578063688a25af146101d95780636ff1c9bc1461020c57806375f12b211461021f5780637903a7561461022c5780637e2477a31461024357600080fd5b80630e57c69a1461014757806310fbebf71461015c578063141961bc1461016f57806345598b4a146101a0578063493f1726146101b3575b600080fd5b61015a610155366004611ee1565b61035f565b005b61015a61016a366004611f0b565b61054f565b61018261017d366004611f0b565b610790565b60405161019799989796959493929190611f5c565b60405180910390f35b61015a6101ae366004611f0b565b610858565b61015a6101c1366004611f0b565b610960565b61015a6101d4366004611fb6565b610aa4565b6101fc6101e736600461205b565b60056020526000908152604090205460ff1681565b6040519015158152602001610197565b61015a61021a36600461205b565b610d23565b6001546101fc9060ff1681565b61023560025481565b604051908152602001610197565b61015a610251366004612076565b610f87565b61027d7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610197565b61015a6102a33660046120c4565b61124e565b61015a6102b6366004611f0b565b61168b565b61023561271081565b6102356102d23660046120e6565b6117a7565b610235602081565b6102357fe2a915bdd10e43512c10e14a150da3ef92dd69b58dcb860722383a11e32e4d8a81565b61023561031436600461205b565b60046020526000908152604090205481565b61015a610334366004611f0b565b61185b565b610235610347366004611f0b565b611963565b6101fc61035a3660046120c4565b6119c5565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146103a7576040516282b42960e81b815260040160405180910390fd5b6103af6119f4565b6001600160a01b03821615806103cd57506001600160a01b0382163b155b156103eb5760405163c1ab6dc160e01b815260040160405180910390fd5b816103f581611a1e565b81158061048b57506001600160a01b038381166000908152600460208190526040918290205491516370a0823160e01b8152309181019190915290918316906370a0823190602401602060405180830381865afa15801561045a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061047e9190612123565b6104889190612152565b82115b156104a9576040516353cd7f7960e01b815260040160405180910390fd5b6104d4817f000000000000000000000000000000000000000000000000000000000000000084611abb565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b03167ec571bcd43634ce4043e2bd7088ab9a1d36bd5dc21f5f4246e9eddda3c222f68460405161053891815260200190565b60405180910390a35061054b6001600055565b5050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610597576040516282b42960e81b815260040160405180910390fd5b61059f6119f4565b60006105aa82611ce5565b60015490915060ff161580156105d957506004600882015460ff1660048111156105d6576105d6611f24565b14155b1561060957600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b60405180910390fd5b80546001600160a01b031660009081526005602052604090205460ff1615610644576040516353cd7f7960e01b815260040160405180910390fd5b600081600701548260060154836005015461065f9190612152565b6106699190612152565b90508060000361068c576040516353cd7f7960e01b815260040160405180910390fd5b81546106a0906001600160a01b0316611a1e565b808260070160008282546106b49190612173565b909155505081546001600160a01b0316600090815260046020526040812080548392906106e2908490612152565b9091555050815461071d906001600160a01b03167f000000000000000000000000000000000000000000000000000000000000000083611abb565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316837fe714a003ff32e430172ffebb2eed392a83ea6cbb3f999674d48070451e45e9838360405161077991815260200190565b60405180910390a3505061078d6001600055565b50565b600080600080600080600080600080600360008c815260200190815260200160002090508060000160009054906101000a90046001600160a01b03168160010154826002015483600301548460040154856005015486600601548760070154600160009054906101000a900460ff1680156108245750600060088a015460ff16600481111561082157610821611f24565b14155b61083557600889015460ff16610838565b60045b995099509950995099509950995099509950509193959799909294969850565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146108a0576040516282b42960e81b815260040160405180910390fd5b6108a86119f4565b60015460ff16156108cc576040516377b048e160e01b815260040160405180910390fd5b60006108d782611ce5565b90506004600882015460ff1660048111156108f4576108f4611f24565b0361091b57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b60088101805460ff1916600417905560405182907f403b6718db13878ac16c27decb08f09d3a10f116c7c25af575ff5bfbc11ae9e690600090a25061078d6001600055565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146109a8576040516282b42960e81b815260040160405180910390fd5b6109b06119f4565b60015460ff16156109d4576040516377b048e160e01b815260040160405180910390fd5b60006109df82611ce5565b90506001600882015460ff1660048111156109fc576109fc611f24565b14610a2357600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b8060030154816005015414610a4b576040516341d1bdff60e01b815260040160405180910390fd5b8054610a5f906001600160a01b0316611a1e565b60088101805460ff1916600217905560405182907f141c887329aaf008f79cc3613bdf4b305d54d2f381909f35518966b3d6a79d5690600090a25061078d6001600055565b610aac6119f4565b60015460ff1615610ad0576040516377b048e160e01b815260040160405180910390fd5b6000610adb87611ce5565b90506002600882015460ff166004811115610af857610af8611f24565b14610b1f57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b6001600160a01b0385161580610b3d57506001600160a01b03851630145b15610b5b57604051634e46966960e11b815260040160405180910390fd5b831580610b6c575080600401548610155b15610b8a5760405163162908e360e11b815260040160405180910390fd5b610b9487876119c5565b15610bb257604051630c8d9eab60e31b815260040160405180910390fd5b80600601548160030154610bc69190612152565b841115610be65760405163162908e360e11b815260040160405180910390fd5b6020821180610c0d5750610c0b83838360010154610c068b8b8b8b6117a7565b611d30565b155b15610c2b576040516309bde33960e01b815260040160405180910390fd5b8054610c3f906001600160a01b0316611a1e565b600087815260066020818152604080842060088b901c855290915282208054600160ff8b161b17905582018054869290610c7a908490612173565b909155505080546001600160a01b031660009081526004602052604081208054869290610ca8908490612152565b90915550508054610cc3906001600160a01b03168686611abb565b8054604080516001600160a01b039283168152602081018790529187169188918a917ff960c21aca9260721d7642bfc1e7e7f5e4e20cd2bd47ad9bc2d1f5309eb89489910160405180910390a450610d1b6001600055565b505050505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d6b576040516282b42960e81b815260040160405180910390fd5b610d736119f4565b6001600160a01b0381161580610d9157506001600160a01b03811630145b80610da457506001600160a01b0381163b155b15610dc25760405163c1ab6dc160e01b815260040160405180910390fd5b60015460ff16610e2d576001805460ff1916811790556040516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016907f17c8bac359a298da3101e92bc9953a016e071548799431077ad6e6e29564fbf090600090a25b6040516370a0823160e01b815230600482015281906000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610e76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9a9190612123565b6001600160a01b0384166000908152600460208181526040808420805460058452918520805460ff19166001179055929091529190559091508115610f0457610f04837f000000000000000000000000000000000000000000000000000000000000000084611abb565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03167ff6ef4d26ce8ca3318c261d24ca939f2b45a0e46dd59bf453fc1a52dc4cd40ef88484604051610f72929190918252602082015260400190565b60405180910390a350505061078d6001600055565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610fcf576040516282b42960e81b815260040160405180910390fd5b610fd76119f4565b60015460ff1615610ffb576040516377b048e160e01b815260040160405180910390fd5b600254861461102b576002546040516333e4da3b60e21b8152610600918891600401918252602082015260400190565b6001600160a01b038516158061104957506001600160a01b03851630145b8061105c57506001600160a01b0385163b155b1561107a5760405163c1ab6dc160e01b815260040160405180910390fd5b831580611085575080155b8061108e575082155b80611097575081155b806110a3575061271082115b156110c1576040516305d7ba1960e11b815260040160405180910390fd5b60028054600091826110d283612186565b919050559050604051806101200160405280876001600160a01b031681526020018681526020018381526020018581526020018481526020016000815260200160008152602001600081526020016001600481111561113357611133611f24565b8152506003600083815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015560c0820151816006015560e082015181600701556101008201518160080160006101000a81548160ff021916908360048111156111e7576111e7611f24565b0217905550506040805187815260208101879052908101859052606081018490526001600160a01b038816915082907f7a82b455ae1425c9c9a7ff311e8c8671c58f0cb214b7594722eb398eae5371009060800160405180910390a350610d1b6001600055565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611296576040516282b42960e81b815260040160405180910390fd5b61129e6119f4565b60015460ff16156112c2576040516377b048e160e01b815260040160405180910390fd5b60006112cd83611ce5565b90506001600882015460ff1660048111156112ea576112ea611f24565b1461131157600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b81158061133057508060050154816003015461132d9190612152565b82115b1561134e5760405163162908e360e11b815260040160405180910390fd5b8054611362906001600160a01b0316611a1e565b80546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa1580156113aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ce9190612123565b82546040516370a0823160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152929350600092909116906370a0823190602401602060405180830381865afa15801561143d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114619190612123565b835490915061149b906001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000003087611d48565b82546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa1580156114e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115079190612123565b84546040516370a0823160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152929350600092909116906370a0823190602401602060405180830381865afa158015611576573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159a9190612123565b9050838210806115b35750856115b08584612152565b14155b806115bd57508083105b806115d15750856115ce8285612152565b14155b156115ef576040516304ca328160e11b815260040160405180910390fd5b858560050160008282546116039190612173565b909155505084546001600160a01b031660009081526004602052604081208054889290611631908490612173565b9091555050600585015460405188917f42a74499fc8265a526ec8ab4b3e4a4a06e50ef92c084b2634b356f72a5ee44af91611674918a8252602082015260400190565b60405180910390a2505050505061054b6001600055565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146116d3576040516282b42960e81b815260040160405180910390fd5b6116db6119f4565b60015460ff16156116ff576040516377b048e160e01b815260040160405180910390fd5b600061170a82611ce5565b90506003600882015460ff16600481111561172757611727611f24565b1461174e57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b8054611762906001600160a01b0316611a1e565b60088101805460ff1916600217905560405182907f25128b02d37802123547e1526ab020238abf16bbc37a5bd0a918d5088b016e9590600090a25061078d6001600055565b6000806117b386611ce5565b54604080517fe2a915bdd10e43512c10e14a150da3ef92dd69b58dcb860722383a11e32e4d8a602080830191909152468284015230606083015260808201999099526001600160a01b0392831660a082015260c0810197909752941660e0860152505061010080840191909152815180840390910181526101208301825280519084012061014080840191909152815180840390910181526101609092019052805191012090565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146118a3576040516282b42960e81b815260040160405180910390fd5b6118ab6119f4565b60015460ff16156118cf576040516377b048e160e01b815260040160405180910390fd5b60006118da82611ce5565b90506002600882015460ff1660048111156118f7576118f7611f24565b1461191e57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b60088101805460ff1916600317905560405182907fab1902ee37c92d1a78dda53814d64b815e7e3ee287d60843a3dbd6954e3206b490600090a25061078d6001600055565b60008061196f83611ce5565b80546001600160a01b031660009081526005602052604090205490915060ff166119bb578060070154816006015482600501546119ac9190612152565b6119b69190612152565b6119be565b60005b9392505050565b6000828152600660209081526040808320600885901c8452909152902054600160ff83161b1615155b92915050565b600260005403611a1757604051633ee5aeb560e01b815260040160405180910390fd5b6002600055565b6001600160a01b0381166000818152600460208190526040918290205491516370a0823160e01b815230918101919091529091906370a0823190602401602060405180830381865afa158015611a78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a9c9190612123565b101561078d576040516303ebbed960e01b815260040160405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a0823190602401602060405180830381865afa158015611b02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b269190612123565b6040516370a0823160e01b81526001600160a01b0385811660048301529192506000918616906370a0823190602401602060405180830381865afa158015611b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b969190612123565b9050611bac6001600160a01b0386168585611db5565b6040516370a0823160e01b81523060048201526000906001600160a01b038716906370a0823190602401602060405180830381865afa158015611bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c179190612123565b6040516370a0823160e01b81526001600160a01b0387811660048301529192506000918816906370a0823190602401602060405180830381865afa158015611c63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c879190612123565b905081841080611ca0575084611c9d8386612152565b14155b80611caa57508281105b80611cbe575084611cbb8483612152565b14155b15611cdc576040516304ca328160e11b815260040160405180910390fd5b50505050505050565b600081815260036020526040812090600882015460ff166004811115611d0d57611d0d611f24565b03611d2b57604051630477a3e560e41b815260040160405180910390fd5b919050565b600082611d3e868685611deb565b1495945050505050565b6040516001600160a01b038481166024830152838116604483015260648201839052611daf9186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611e2d565b50505050565b6040516001600160a01b03838116602483015260448201839052611de691859182169063a9059cbb90606401611d7d565b505050565b600081815b84811015611e2457611e1a82878784818110611e0e57611e0e61219f565b90506020020135611e9e565b9150600101611df0565b50949350505050565b600080602060008451602086016000885af180611e50576040513d6000823e3d81fd5b50506000513d91508115611e68578060011415611e75565b6001600160a01b0384163b155b15611daf57604051635274afe760e01b81526001600160a01b0385166004820152602401610600565b6000818310611eba5760008281526020849052604090206119be565b5060009182526020526040902090565b80356001600160a01b0381168114611d2b57600080fd5b60008060408385031215611ef457600080fd5b611efd83611eca565b946020939093013593505050565b600060208284031215611f1d57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b60058110611f5857634e487b7160e01b600052602160045260246000fd5b9052565b60006101208201905060018060a01b038b1682528960208301528860408301528760608301528660808301528560a08301528460c08301528360e0830152611fa8610100830184611f3a565b9a9950505050505050505050565b60008060008060008060a08789031215611fcf57600080fd5b8635955060208701359450611fe660408801611eca565b935060608701359250608087013567ffffffffffffffff81111561200957600080fd5b8701601f8101891361201a57600080fd5b803567ffffffffffffffff81111561203157600080fd5b8960208260051b840101111561204657600080fd5b60208201935080925050509295509295509295565b60006020828403121561206d57600080fd5b6119be82611eca565b60008060008060008060c0878903121561208f57600080fd5b8635955061209f60208801611eca565b95989597505050506040840135936060810135936080820135935060a0909101359150565b600080604083850312156120d757600080fd5b50508035926020909101359150565b600080600080608085870312156120fc57600080fd5b843593506020850135925061211360408601611eca565b9396929550929360600135925050565b60006020828403121561213557600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b818103818111156119ee576119ee61213c565b602081016119ee8284611f3a565b808201808211156119ee576119ee61213c565b6000600182016121985761219861213c565b5060010190565b634e487b7160e01b600052603260045260246000fdfea164736f6c634300081e000a","runtimeTemplateKeccak":"0x0db4cc030780eebbfb542bead8b443c5398e9e7a6e665ef6ec614ef11591687b","immutableReferences":[{"name":"owner","offsets":[{"length":32,"start":603},{"length":32,"start":874},{"length":32,"start":1199},{"length":32,"start":1238},{"length":32,"start":1370},{"length":32,"start":1784},{"length":32,"start":1823},{"length":32,"start":2147},{"length":32,"start":2411},{"length":32,"start":3374},{"length":32,"start":3557},{"length":32,"start":3807},{"length":32,"start":3846},{"length":32,"start":3986},{"length":32,"start":4697},{"length":32,"start":5095},{"length":32,"start":5237},{"length":32,"start":5408},{"length":32,"start":5782},{"length":32,"start":6246}]}],"methodIdentifiers":{"LEAF_DOMAIN()":"d0f9ff9a","MAX_PROOF_LENGTH()":"b9df2051","MAX_RECIPIENTS()":"a6980ce2","activateCampaign(uint256)":"493f1726","campaignRemaining(uint256)":"f168177e","campaigns(uint256)":"141961bc","cancelCampaign(uint256)":"45598b4a","claim(uint256,uint256,address,uint256,bytes32[])":"5d4df3bf","createCampaign(uint256,address,bytes32,uint256,uint256,bytes32)":"7e2477a3","emergencyRecovered(address)":"688a25af","emergencyWithdraw(address)":"6ff1c9bc","fundCampaign(uint256,uint256)":"918eab15","isClaimed(uint256,uint256)":"f364c90c","leaf(uint256,uint256,address,uint256)":"ad67002a","nextCampaignId()":"7903a756","owner()":"8da5cb5b","pauseCampaign(uint256)":"de99347a","recoverSurplus(address,uint256)":"0e57c69a","reserved(address)":"da9425e2","resumeCampaign(uint256)":"9e3696d9","stopped()":"75f12b21","withdrawCancelled(uint256)":"10fbebf7"},"reviewedOwner":"0x9332e35e87eAc40a0810813a7a12C458E8043184","reviewedRuntime":"0x608060405234801561001057600080fd5b50600436106101425760003560e01c80638da5cb5b116100b8578063b9df20511161007c578063b9df2051146102d7578063d0f9ff9a146102df578063da9425e214610306578063de99347a14610326578063f168177e14610339578063f364c90c1461034c57600080fd5b80638da5cb5b14610256578063918eab15146102955780639e3696d9146102a8578063a6980ce2146102bb578063ad67002a146102c457600080fd5b80635d4df3bf1161010a5780635d4df3bf146101c6578063688a25af146101d95780636ff1c9bc1461020c57806375f12b211461021f5780637903a7561461022c5780637e2477a31461024357600080fd5b80630e57c69a1461014757806310fbebf71461015c578063141961bc1461016f57806345598b4a146101a0578063493f1726146101b3575b600080fd5b61015a610155366004611ee1565b61035f565b005b61015a61016a366004611f0b565b61054f565b61018261017d366004611f0b565b610790565b60405161019799989796959493929190611f5c565b60405180910390f35b61015a6101ae366004611f0b565b610858565b61015a6101c1366004611f0b565b610960565b61015a6101d4366004611fb6565b610aa4565b6101fc6101e736600461205b565b60056020526000908152604090205460ff1681565b6040519015158152602001610197565b61015a61021a36600461205b565b610d23565b6001546101fc9060ff1681565b61023560025481565b604051908152602001610197565b61015a610251366004612076565b610f87565b61027d7f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318481565b6040516001600160a01b039091168152602001610197565b61015a6102a33660046120c4565b61124e565b61015a6102b6366004611f0b565b61168b565b61023561271081565b6102356102d23660046120e6565b6117a7565b610235602081565b6102357fe2a915bdd10e43512c10e14a150da3ef92dd69b58dcb860722383a11e32e4d8a81565b61023561031436600461205b565b60046020526000908152604090205481565b61015a610334366004611f0b565b61185b565b610235610347366004611f0b565b611963565b6101fc61035a3660046120c4565b6119c5565b336001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318416146103a7576040516282b42960e81b815260040160405180910390fd5b6103af6119f4565b6001600160a01b03821615806103cd57506001600160a01b0382163b155b156103eb5760405163c1ab6dc160e01b815260040160405180910390fd5b816103f581611a1e565b81158061048b57506001600160a01b038381166000908152600460208190526040918290205491516370a0823160e01b8152309181019190915290918316906370a0823190602401602060405180830381865afa15801561045a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061047e9190612123565b6104889190612152565b82115b156104a9576040516353cd7f7960e01b815260040160405180910390fd5b6104d4817f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318484611abb565b7f0000000000000000000000009332e35e87eac40a0810813a7a12c458e80431846001600160a01b0316836001600160a01b03167ec571bcd43634ce4043e2bd7088ab9a1d36bd5dc21f5f4246e9eddda3c222f68460405161053891815260200190565b60405180910390a35061054b6001600055565b5050565b336001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e80431841614610597576040516282b42960e81b815260040160405180910390fd5b61059f6119f4565b60006105aa82611ce5565b60015490915060ff161580156105d957506004600882015460ff1660048111156105d6576105d6611f24565b14155b1561060957600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b60405180910390fd5b80546001600160a01b031660009081526005602052604090205460ff1615610644576040516353cd7f7960e01b815260040160405180910390fd5b600081600701548260060154836005015461065f9190612152565b6106699190612152565b90508060000361068c576040516353cd7f7960e01b815260040160405180910390fd5b81546106a0906001600160a01b0316611a1e565b808260070160008282546106b49190612173565b909155505081546001600160a01b0316600090815260046020526040812080548392906106e2908490612152565b9091555050815461071d906001600160a01b03167f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318483611abb565b7f0000000000000000000000009332e35e87eac40a0810813a7a12c458e80431846001600160a01b0316837fe714a003ff32e430172ffebb2eed392a83ea6cbb3f999674d48070451e45e9838360405161077991815260200190565b60405180910390a3505061078d6001600055565b50565b600080600080600080600080600080600360008c815260200190815260200160002090508060000160009054906101000a90046001600160a01b03168160010154826002015483600301548460040154856005015486600601548760070154600160009054906101000a900460ff1680156108245750600060088a015460ff16600481111561082157610821611f24565b14155b61083557600889015460ff16610838565b60045b995099509950995099509950995099509950509193959799909294969850565b336001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318416146108a0576040516282b42960e81b815260040160405180910390fd5b6108a86119f4565b60015460ff16156108cc576040516377b048e160e01b815260040160405180910390fd5b60006108d782611ce5565b90506004600882015460ff1660048111156108f4576108f4611f24565b0361091b57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b60088101805460ff1916600417905560405182907f403b6718db13878ac16c27decb08f09d3a10f116c7c25af575ff5bfbc11ae9e690600090a25061078d6001600055565b336001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318416146109a8576040516282b42960e81b815260040160405180910390fd5b6109b06119f4565b60015460ff16156109d4576040516377b048e160e01b815260040160405180910390fd5b60006109df82611ce5565b90506001600882015460ff1660048111156109fc576109fc611f24565b14610a2357600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b8060030154816005015414610a4b576040516341d1bdff60e01b815260040160405180910390fd5b8054610a5f906001600160a01b0316611a1e565b60088101805460ff1916600217905560405182907f141c887329aaf008f79cc3613bdf4b305d54d2f381909f35518966b3d6a79d5690600090a25061078d6001600055565b610aac6119f4565b60015460ff1615610ad0576040516377b048e160e01b815260040160405180910390fd5b6000610adb87611ce5565b90506002600882015460ff166004811115610af857610af8611f24565b14610b1f57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b6001600160a01b0385161580610b3d57506001600160a01b03851630145b15610b5b57604051634e46966960e11b815260040160405180910390fd5b831580610b6c575080600401548610155b15610b8a5760405163162908e360e11b815260040160405180910390fd5b610b9487876119c5565b15610bb257604051630c8d9eab60e31b815260040160405180910390fd5b80600601548160030154610bc69190612152565b841115610be65760405163162908e360e11b815260040160405180910390fd5b6020821180610c0d5750610c0b83838360010154610c068b8b8b8b6117a7565b611d30565b155b15610c2b576040516309bde33960e01b815260040160405180910390fd5b8054610c3f906001600160a01b0316611a1e565b600087815260066020818152604080842060088b901c855290915282208054600160ff8b161b17905582018054869290610c7a908490612173565b909155505080546001600160a01b031660009081526004602052604081208054869290610ca8908490612152565b90915550508054610cc3906001600160a01b03168686611abb565b8054604080516001600160a01b039283168152602081018790529187169188918a917ff960c21aca9260721d7642bfc1e7e7f5e4e20cd2bd47ad9bc2d1f5309eb89489910160405180910390a450610d1b6001600055565b505050505050565b336001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e80431841614610d6b576040516282b42960e81b815260040160405180910390fd5b610d736119f4565b6001600160a01b0381161580610d9157506001600160a01b03811630145b80610da457506001600160a01b0381163b155b15610dc25760405163c1ab6dc160e01b815260040160405180910390fd5b60015460ff16610e2d576001805460ff1916811790556040516001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318416907f17c8bac359a298da3101e92bc9953a016e071548799431077ad6e6e29564fbf090600090a25b6040516370a0823160e01b815230600482015281906000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610e76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9a9190612123565b6001600160a01b0384166000908152600460208181526040808420805460058452918520805460ff19166001179055929091529190559091508115610f0457610f04837f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318484611abb565b7f0000000000000000000000009332e35e87eac40a0810813a7a12c458e80431846001600160a01b0316846001600160a01b03167ff6ef4d26ce8ca3318c261d24ca939f2b45a0e46dd59bf453fc1a52dc4cd40ef88484604051610f72929190918252602082015260400190565b60405180910390a350505061078d6001600055565b336001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e80431841614610fcf576040516282b42960e81b815260040160405180910390fd5b610fd76119f4565b60015460ff1615610ffb576040516377b048e160e01b815260040160405180910390fd5b600254861461102b576002546040516333e4da3b60e21b8152610600918891600401918252602082015260400190565b6001600160a01b038516158061104957506001600160a01b03851630145b8061105c57506001600160a01b0385163b155b1561107a5760405163c1ab6dc160e01b815260040160405180910390fd5b831580611085575080155b8061108e575082155b80611097575081155b806110a3575061271082115b156110c1576040516305d7ba1960e11b815260040160405180910390fd5b60028054600091826110d283612186565b919050559050604051806101200160405280876001600160a01b031681526020018681526020018381526020018581526020018481526020016000815260200160008152602001600081526020016001600481111561113357611133611f24565b8152506003600083815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015560c0820151816006015560e082015181600701556101008201518160080160006101000a81548160ff021916908360048111156111e7576111e7611f24565b0217905550506040805187815260208101879052908101859052606081018490526001600160a01b038816915082907f7a82b455ae1425c9c9a7ff311e8c8671c58f0cb214b7594722eb398eae5371009060800160405180910390a350610d1b6001600055565b336001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e80431841614611296576040516282b42960e81b815260040160405180910390fd5b61129e6119f4565b60015460ff16156112c2576040516377b048e160e01b815260040160405180910390fd5b60006112cd83611ce5565b90506001600882015460ff1660048111156112ea576112ea611f24565b1461131157600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b81158061133057508060050154816003015461132d9190612152565b82115b1561134e5760405163162908e360e11b815260040160405180910390fd5b8054611362906001600160a01b0316611a1e565b80546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa1580156113aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ce9190612123565b82546040516370a0823160e01b81526001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318481166004830152929350600092909116906370a0823190602401602060405180830381865afa15801561143d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114619190612123565b835490915061149b906001600160a01b03167f0000000000000000000000009332e35e87eac40a0810813a7a12c458e80431843087611d48565b82546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa1580156114e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115079190612123565b84546040516370a0823160e01b81526001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318481166004830152929350600092909116906370a0823190602401602060405180830381865afa158015611576573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159a9190612123565b9050838210806115b35750856115b08584612152565b14155b806115bd57508083105b806115d15750856115ce8285612152565b14155b156115ef576040516304ca328160e11b815260040160405180910390fd5b858560050160008282546116039190612173565b909155505084546001600160a01b031660009081526004602052604081208054889290611631908490612173565b9091555050600585015460405188917f42a74499fc8265a526ec8ab4b3e4a4a06e50ef92c084b2634b356f72a5ee44af91611674918a8252602082015260400190565b60405180910390a2505050505061054b6001600055565b336001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318416146116d3576040516282b42960e81b815260040160405180910390fd5b6116db6119f4565b60015460ff16156116ff576040516377b048e160e01b815260040160405180910390fd5b600061170a82611ce5565b90506003600882015460ff16600481111561172757611727611f24565b1461174e57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b8054611762906001600160a01b0316611a1e565b60088101805460ff1916600217905560405182907f25128b02d37802123547e1526ab020238abf16bbc37a5bd0a918d5088b016e9590600090a25061078d6001600055565b6000806117b386611ce5565b54604080517fe2a915bdd10e43512c10e14a150da3ef92dd69b58dcb860722383a11e32e4d8a602080830191909152468284015230606083015260808201999099526001600160a01b0392831660a082015260c0810197909752941660e0860152505061010080840191909152815180840390910181526101208301825280519084012061014080840191909152815180840390910181526101609092019052805191012090565b336001600160a01b037f0000000000000000000000009332e35e87eac40a0810813a7a12c458e804318416146118a3576040516282b42960e81b815260040160405180910390fd5b6118ab6119f4565b60015460ff16156118cf576040516377b048e160e01b815260040160405180910390fd5b60006118da82611ce5565b90506002600882015460ff1660048111156118f7576118f7611f24565b1461191e57600881015460405163683f44bb60e11b81526106009160ff1690600401612165565b60088101805460ff1916600317905560405182907fab1902ee37c92d1a78dda53814d64b815e7e3ee287d60843a3dbd6954e3206b490600090a25061078d6001600055565b60008061196f83611ce5565b80546001600160a01b031660009081526005602052604090205490915060ff166119bb578060070154816006015482600501546119ac9190612152565b6119b69190612152565b6119be565b60005b9392505050565b6000828152600660209081526040808320600885901c8452909152902054600160ff83161b1615155b92915050565b600260005403611a1757604051633ee5aeb560e01b815260040160405180910390fd5b6002600055565b6001600160a01b0381166000818152600460208190526040918290205491516370a0823160e01b815230918101919091529091906370a0823190602401602060405180830381865afa158015611a78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a9c9190612123565b101561078d576040516303ebbed960e01b815260040160405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a0823190602401602060405180830381865afa158015611b02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b269190612123565b6040516370a0823160e01b81526001600160a01b0385811660048301529192506000918616906370a0823190602401602060405180830381865afa158015611b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b969190612123565b9050611bac6001600160a01b0386168585611db5565b6040516370a0823160e01b81523060048201526000906001600160a01b038716906370a0823190602401602060405180830381865afa158015611bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c179190612123565b6040516370a0823160e01b81526001600160a01b0387811660048301529192506000918816906370a0823190602401602060405180830381865afa158015611c63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c879190612123565b905081841080611ca0575084611c9d8386612152565b14155b80611caa57508281105b80611cbe575084611cbb8483612152565b14155b15611cdc576040516304ca328160e11b815260040160405180910390fd5b50505050505050565b600081815260036020526040812090600882015460ff166004811115611d0d57611d0d611f24565b03611d2b57604051630477a3e560e41b815260040160405180910390fd5b919050565b600082611d3e868685611deb565b1495945050505050565b6040516001600160a01b038481166024830152838116604483015260648201839052611daf9186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611e2d565b50505050565b6040516001600160a01b03838116602483015260448201839052611de691859182169063a9059cbb90606401611d7d565b505050565b600081815b84811015611e2457611e1a82878784818110611e0e57611e0e61219f565b90506020020135611e9e565b9150600101611df0565b50949350505050565b600080602060008451602086016000885af180611e50576040513d6000823e3d81fd5b50506000513d91508115611e68578060011415611e75565b6001600160a01b0384163b155b15611daf57604051635274afe760e01b81526001600160a01b0385166004820152602401610600565b6000818310611eba5760008281526020849052604090206119be565b5060009182526020526040902090565b80356001600160a01b0381168114611d2b57600080fd5b60008060408385031215611ef457600080fd5b611efd83611eca565b946020939093013593505050565b600060208284031215611f1d57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b60058110611f5857634e487b7160e01b600052602160045260246000fd5b9052565b60006101208201905060018060a01b038b1682528960208301528860408301528760608301528660808301528560a08301528460c08301528360e0830152611fa8610100830184611f3a565b9a9950505050505050505050565b60008060008060008060a08789031215611fcf57600080fd5b8635955060208701359450611fe660408801611eca565b935060608701359250608087013567ffffffffffffffff81111561200957600080fd5b8701601f8101891361201a57600080fd5b803567ffffffffffffffff81111561203157600080fd5b8960208260051b840101111561204657600080fd5b60208201935080925050509295509295509295565b60006020828403121561206d57600080fd5b6119be82611eca565b60008060008060008060c0878903121561208f57600080fd5b8635955061209f60208801611eca565b95989597505050506040840135936060810135936080820135935060a0909101359150565b600080604083850312156120d757600080fd5b50508035926020909101359150565b600080600080608085870312156120fc57600080fd5b843593506020850135925061211360408601611eca565b9396929550929360600135925050565b60006020828403121561213557600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b818103818111156119ee576119ee61213c565b602081016119ee8284611f3a565b808201808211156119ee576119ee61213c565b6000600182016121985761219861213c565b5060010190565b634e487b7160e01b600052603260045260246000fdfea164736f6c634300081e000a","reviewedRuntimeKeccak":"0xcf30d56bc71d27e6203849941a7c5e21cc81d1868eaff2532eda7812edb06395"},"fixedTokenArtifact":{"format":"kalos-testnet-contract-artifact-v1","artifactVersion":"airdrop-testnet-candidate.2","contractName":"KalosFixedSupplyToken","testnetOnly":true,"allowedChainIds":[99801],"independentlyAudited":false,"sourceLockDigest":"94c792e9de930b06aa7a2907dbd55400a7e5adb621f89ee91b602209632e3fd0","compiler":{"version":"0.8.30+commit.73712a01","path":".tools/solc-windows-amd64-v0.8.30+commit.73712a01.exe","sha256":"0xccbd3ed44d5fbd26fe039702d403421f1212d2e8752e3cbe3bfd074986911586","url":"https://raw.githubusercontent.com/ethereum/solc-bin/gh-pages/windows-amd64/solc-windows-amd64-v0.8.30+commit.73712a01.exe"},"abi":[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint256","name":"totalSupplyRaw","type":"uint256"},{"internalType":"address","name":"recipient","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"allowance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientAllowance","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC20InvalidApprover","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC20InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC20InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"ERC20InvalidSpender","type":"error"},{"inputs":[],"name":"InvalidSupply","type":"error"},{"inputs":[],"name":"InvalidTokenName","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50604051610bef380380610bef83398101604081905261002f916102e6565b8383600361003d8382610402565b50600461004a8282610402565b5050508160000361006e576040516315ae672760e01b815260040160405180910390fd5b8351158061007d575060508451115b8061008757508251155b80610093575060108351115b156100b1576040516316c31e7760e21b815260040160405180910390fd5b6100bb81836100c4565b505050506104e7565b6001600160a01b0382166100f35760405163ec442f0560e01b8152600060048201526024015b60405180910390fd5b6100ff60008383610103565b5050565b6001600160a01b03831661012e57806002600082825461012391906104c0565b909155506101a09050565b6001600160a01b038316600090815260208190526040902054818110156101815760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016100ea565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b0382166101bc576002805482900390556101db565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161022091815260200190565b60405180910390a3505050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261025457600080fd5b81516001600160401b0381111561026d5761026d61022d565b604051601f8201601f19908116603f011681016001600160401b038111828210171561029b5761029b61022d565b6040528181528382016020018510156102b357600080fd5b60005b828110156102d2576020818601810151838301820152016102b6565b506000918101602001919091529392505050565b600080600080608085870312156102fc57600080fd5b84516001600160401b0381111561031257600080fd5b61031e87828801610243565b602087015190955090506001600160401b0381111561033c57600080fd5b61034887828801610243565b60408701516060880151919550935090506001600160a01b038116811461036e57600080fd5b939692955090935050565b600181811c9082168061038d57607f821691505b6020821081036103ad57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156103fd57806000526020600020601f840160051c810160208510156103da5750805b601f840160051c820191505b818110156103fa57600081556001016103e6565b50505b505050565b81516001600160401b0381111561041b5761041b61022d565b61042f816104298454610379565b846103b3565b6020601f821160018114610463576000831561044b5750848201515b600019600385901b1c1916600184901b1784556103fa565b600084815260208120601f198516915b828110156104935787850151825560209485019460019092019101610473565b50848210156104b15786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b808201808211156104e157634e487b7160e01b600052601160045260246000fd5b92915050565b6106f9806104f66000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063313ce56711610066578063313ce567146100fe57806370a082311461010d57806395d89b4114610136578063a9059cbb1461013e578063dd62ed3e1461015157600080fd5b806306fdde0314610098578063095ea7b3146100b657806318160ddd146100d957806323b872dd146100eb575b600080fd5b6100a061018a565b6040516100ad919061056b565b60405180910390f35b6100c96100c43660046105d5565b61021c565b60405190151581526020016100ad565b6002545b6040519081526020016100ad565b6100c96100f93660046105ff565b610236565b604051601281526020016100ad565b6100dd61011b36600461063c565b6001600160a01b031660009081526020819052604090205490565b6100a061025a565b6100c961014c3660046105d5565b610269565b6100dd61015f36600461065e565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b60606003805461019990610691565b80601f01602080910402602001604051908101604052809291908181526020018280546101c590610691565b80156102125780601f106101e757610100808354040283529160200191610212565b820191906000526020600020905b8154815290600101906020018083116101f557829003601f168201915b5050505050905090565b60003361022a818585610277565b60019150505b92915050565b600033610244858285610289565b61024f85858561030d565b506001949350505050565b60606004805461019990610691565b60003361022a81858561030d565b610284838383600161036c565b505050565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981101561030757818110156102f857604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064015b60405180910390fd5b6103078484848403600061036c565b50505050565b6001600160a01b03831661033757604051634b637e8f60e11b8152600060048201526024016102ef565b6001600160a01b0382166103615760405163ec442f0560e01b8152600060048201526024016102ef565b610284838383610441565b6001600160a01b0384166103965760405163e602df0560e01b8152600060048201526024016102ef565b6001600160a01b0383166103c057604051634a1406b160e11b8152600060048201526024016102ef565b6001600160a01b038085166000908152600160209081526040808320938716835292905220829055801561030757826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161043391815260200190565b60405180910390a350505050565b6001600160a01b03831661046c57806002600082825461046191906106cb565b909155506104de9050565b6001600160a01b038316600090815260208190526040902054818110156104bf5760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016102ef565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b0382166104fa57600280548290039055610519565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161055e91815260200190565b60405180910390a3505050565b602081526000825180602084015260005b81811015610599576020818601810151604086840101520161057c565b506000604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b03811681146105d057600080fd5b919050565b600080604083850312156105e857600080fd5b6105f1836105b9565b946020939093013593505050565b60008060006060848603121561061457600080fd5b61061d846105b9565b925061062b602085016105b9565b929592945050506040919091013590565b60006020828403121561064e57600080fd5b610657826105b9565b9392505050565b6000806040838503121561067157600080fd5b61067a836105b9565b9150610688602084016105b9565b90509250929050565b600181811c908216806106a557607f821691505b6020821081036106c557634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561023057634e487b7160e01b600052601160045260246000fdfea164736f6c634300081e000a","creationKeccak":"0xc7f009273ba1963b5d4aca9f1f726cc92ab7dc54614ca6f664a924ff9397f653","runtimeTemplate":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063313ce56711610066578063313ce567146100fe57806370a082311461010d57806395d89b4114610136578063a9059cbb1461013e578063dd62ed3e1461015157600080fd5b806306fdde0314610098578063095ea7b3146100b657806318160ddd146100d957806323b872dd146100eb575b600080fd5b6100a061018a565b6040516100ad919061056b565b60405180910390f35b6100c96100c43660046105d5565b61021c565b60405190151581526020016100ad565b6002545b6040519081526020016100ad565b6100c96100f93660046105ff565b610236565b604051601281526020016100ad565b6100dd61011b36600461063c565b6001600160a01b031660009081526020819052604090205490565b6100a061025a565b6100c961014c3660046105d5565b610269565b6100dd61015f36600461065e565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b60606003805461019990610691565b80601f01602080910402602001604051908101604052809291908181526020018280546101c590610691565b80156102125780601f106101e757610100808354040283529160200191610212565b820191906000526020600020905b8154815290600101906020018083116101f557829003601f168201915b5050505050905090565b60003361022a818585610277565b60019150505b92915050565b600033610244858285610289565b61024f85858561030d565b506001949350505050565b60606004805461019990610691565b60003361022a81858561030d565b610284838383600161036c565b505050565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981101561030757818110156102f857604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064015b60405180910390fd5b6103078484848403600061036c565b50505050565b6001600160a01b03831661033757604051634b637e8f60e11b8152600060048201526024016102ef565b6001600160a01b0382166103615760405163ec442f0560e01b8152600060048201526024016102ef565b610284838383610441565b6001600160a01b0384166103965760405163e602df0560e01b8152600060048201526024016102ef565b6001600160a01b0383166103c057604051634a1406b160e11b8152600060048201526024016102ef565b6001600160a01b038085166000908152600160209081526040808320938716835292905220829055801561030757826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161043391815260200190565b60405180910390a350505050565b6001600160a01b03831661046c57806002600082825461046191906106cb565b909155506104de9050565b6001600160a01b038316600090815260208190526040902054818110156104bf5760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016102ef565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b0382166104fa57600280548290039055610519565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161055e91815260200190565b60405180910390a3505050565b602081526000825180602084015260005b81811015610599576020818601810151604086840101520161057c565b506000604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b03811681146105d057600080fd5b919050565b600080604083850312156105e857600080fd5b6105f1836105b9565b946020939093013593505050565b60008060006060848603121561061457600080fd5b61061d846105b9565b925061062b602085016105b9565b929592945050506040919091013590565b60006020828403121561064e57600080fd5b610657826105b9565b9392505050565b6000806040838503121561067157600080fd5b61067a836105b9565b9150610688602084016105b9565b90509250929050565b600181811c908216806106a557607f821691505b6020821081036106c557634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561023057634e487b7160e01b600052601160045260246000fdfea164736f6c634300081e000a","runtimeTemplateKeccak":"0x66487be86988b1e1d5dce91b9b78db360b556b647f175438fc10166ae7230004","immutableReferences":[],"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decimals()":"313ce567","name()":"06fdde03","symbol()":"95d89b41","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"}},"deployment":{"chainId":99801,"address":"0xcf8956baf0b24d41304ec9def808f05bf0ccea7d","owner":"0x9332e35e87eac40a0810813a7a12c458e8043184","deploymentBlock":7680075,"deploymentBlockHash":"0x2e3cc04e0cb3c909b8940d77da455a1bf06c60d810b166e76aaa0011f59b648a","transaction":"0xf88876d91c1e4cfb7cab47ebbbb3d8b72e9c8e6b1681ba85483f73b9a3a4b800","runtimeCodeHash":"0xcf30d56bc71d27e6203849941a7c5e21cc81d1868eaff2532eda7812edb06395","artifactVersion":"airdrop-testnet-candidate.2","sourceLockDigest":"94c792e9de930b06aa7a2907dbd55400a7e5adb621f89ee91b602209632e3fd0"}}