0 txs
1 call
constructor
constructor()
functions
getCryptoLegacyVer
purefunction getCryptoLegacyVer() pure returns (uint16)
getPluginName
purefunction getPluginName() pure returns (string)
getPluginVer
purefunction getPluginVer() pure returns (uint16)
getSigs
viewfunction getSigs() view returns (bytes4[] sigs)
isLifetimeActive
viewfunction isLifetimeActive() view returns (bool isNftLocked)
isPaused
viewfunction isPaused() view returns (bool)
owner
viewfunction owner() view returns (address)
beneficiaryClaim
payablefunction beneficiaryClaim(address[] _tokens) payable
beneficiarySwitch
nonpayablefunction beneficiarySwitch(bytes32 _newBeneficiary)
initBeneficiariesByFactory
nonpayablefunction initBeneficiariesByFactory(bytes32[] _beneficiaryHashes, tuple[] _beneficiaryConfig)
initiateChallenge
nonpayablefunction initiateChallenge()
payInitialFee
payablefunction payInitialFee(uint256[] _lockToChainIds) payable
renounceOwnership
nonpayablefunction renounceOwnership()
sendMessagesToBeneficiary
nonpayablefunction sendMessagesToBeneficiary(bytes32[] _beneficiaryList, bytes32[] _messageHashList, bytes[] _messageList, bytes[] _messageCheckList, uint256 _messageType)
setBeneficiaries
nonpayablefunction setBeneficiaries(bytes32[] _beneficiaryHashes, tuple[] _beneficiaryConfig)
setPause
nonpayablefunction setPause(bool _isPaused)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
transferTreasuryTokensToLegacy
nonpayablefunction transferTreasuryTokensToLegacy(address[] _holders, address[] _tokens)
update
payablefunction update(uint256[] _lockToChainIds) payable
events
BeneficiaryClaim
event BeneficiaryClaim(address indexed token, uint256 amount, bytes32 indexed beneficiary)
BeneficiaryMessage
event BeneficiaryMessage(bytes32 indexed toBeneficiary, bytes32 messageHash, bytes message, uint256 indexed messageType)
BeneficiaryMessageCheck
event BeneficiaryMessageCheck(bytes32 indexed toBeneficiary, bytes32 messageHash, bytes message, uint256 indexed messageType)
ChallengeInitiate
event ChallengeInitiate(bytes32 indexed beneficiary)
FeePaidByDefault
event FeePaidByDefault(bytes8 indexed refCode, bool indexed initial, uint256 value, address factory)
FeePaidByLifetime
event FeePaidByLifetime(bytes8 indexed refCode, bool indexed initial, address factory)
FeePaidByTransfer
event FeePaidByTransfer(bytes8 indexed refCode, bool indexed initial, uint256 value, address factory)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
PauseSet
event PauseSet(bool indexed isPaused)
SetBeneficiary
event SetBeneficiary(bytes32 indexed beneficiary, uint64 indexed vestingPeriod, uint64 shareBps, uint64 claimDelay)
SwitchBeneficiary
event SwitchBeneficiary(bytes32 indexed oldBeneficiary, bytes32 indexed newBeneficiary)
TransferTreasuryTokensToLegacy
event TransferTreasuryTokensToLegacy(address[] holders, address[] tokens)
Update
event Update(uint256 updateFee, bool indexed force, bytes32 indexed byPlugin)
errors
AlreadyInit
error AlreadyInit()
AlreadySet
error AlreadySet()
DisabledFunc
error DisabledFunc()
DistributionStartAlreadySet
error DistributionStartAlreadySet()
DistributionStarted
error DistributionStarted()
InitialFeeAlreadyPaid
error InitialFeeAlreadyPaid()
InitialFeeNotPaid
error InitialFeeNotPaid()
LengthMismatch
error LengthMismatch()
NotBuildManager
error NotBuildManager()
NotTheBeneficiary
error NotTheBeneficiary()
NotTheOwner
error NotTheOwner()
Pause
error Pause()
ShareSumDoesntMatchBase
error ShareSumDoesntMatchBase()
TooEarly
error TooEarly()
ValueNotEnough
error ValueNotEnough()
ZeroAddress
error ZeroAddress()
creation bytecode
0x608060405234801561000f575f80fd5b5060015f5561304c806100215f395ff3fe608060405260043610610110575f3560e01c806396d9f77d1161009d578063dee07bec11610062578063dee07bec1461020f578063ea957316146102e5578063eb68e99a146102f9578063f2fde38b14610318578063f4e3e37d14610337575f80fd5b806396d9f77d1461023d578063a212c8411461025c578063b187bd261461026f578063bedb86fb146102a5578063cdcf7fb3146102c4575f80fd5b8063715018a6116100e3578063715018a6146101b0578063739086aa146101c45780638da5cb5b146101e357806392b7e8a91461020f5780639374dbe91461022a575f80fd5b80630193f63e1461011457806324d6e9871461012a5780636038b6671461013d5780636c4f097c1461015c575b5f80fd5b34801561011f575f80fd5b50610128610356565b005b610128610138366004612785565b610488565b348015610148575f80fd5b50610128610157366004612887565b61077b565b348015610167575f80fd5b50604080518082018252601f81527f62656e65666963696172795f646973747269627574696f6e5f72696768747300602082015290516101a791906129c8565b60405180910390f35b3480156101bb575f80fd5b5061012861080d565b3480156101cf575f80fd5b506101286101de366004612ab4565b610820565b3480156101ee575f80fd5b506101f76109cd565b6040516001600160a01b0390911681526020016101a7565b34801561021a575f80fd5b50604051600181526020016101a7565b610128610238366004612bd9565b6109db565b348015610248575f80fd5b50610128610257366004612c0a565b610b55565b61012861026a366004612785565b610ca0565b34801561027a575f80fd5b505f80516020612ff783398151915254600160a01b900460ff165b60405190151581526020016101a7565b3480156102b0575f80fd5b506101286102bf366004612c2e565b610d48565b3480156102cf575f80fd5b506102d8610d59565b6040516101a79190612c49565b3480156102f0575f80fd5b506102956110ec565b348015610304575f80fd5b50610128610313366004612887565b61110b565b348015610323575f80fd5b50610128610332366004612c96565b611121565b348015610342575f80fd5b50610128610351366004612cb1565b611159565b61035e6113c0565b7fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cee545f80516020612fd7833981519152906001600160401b0316156103b6576040516372c75c1d60e11b815260040160405180910390fd5b60018101546103d8906001600160401b0380821691600160c01b900416612d24565b6001600160401b0316426001600160401b0316101561040a5760405163085de62560e01b815260040160405180910390fd5b5f61041582336113f7565b600183015490915061043790600160401b90046001600160401b031642612d24565b60028301805467ffffffffffffffff19166001600160401b039290921691909117905560405181907fb9f9177a14447764dfa5cd3eefbf4377286d795113bb1f7db2ebf2bb6641f694905f90a25050565b610490611452565b7fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75ced545f80516020612fd783398151915290600160801b90046001600160401b0316156104ef57604051633363a5df60e01b815260040160405180910390fd5b6104f85f6114ae565b6001810180546001600160801b0316600160801b426001600160401b03169081026001600160c01b031691909117600160c01b9190910217905561053a6110ec565b156105b25780546001600160801b0319168155600281015460038201546040516001600160a01b039091168152600191600160401b900460c01b6001600160c01b031916907f9d640c638e9a33a0f7ffaf46f10dba56ae9b85501ea7f84d35c52faae3d7cdf39060200160405180910390a35061076f565b600381015460028201546001600160a01b0390911690639da32674903490600160401b900460c01b6105e26109cd565b866040518563ffffffff1660e01b815260040161060193929190612d7e565b5f604051808303818588803b158015610618575f80fd5b505af19350505050801561062a575060015b6106fb5780546001600160801b031634101561065957604051633c89335b60e11b815260040160405180910390fd5b60038101546040516001600160a01b03909116903480156108fc02915f818181858888f19350505050158015610691573d5f803e3d5ffd5b5060028101546003820154604080513481526001600160a01b039092166020830152600192600160401b900460c01b6001600160c01b031916917fc540aac9cba3155c162d8d8e4da2e0c3a440df6a148c0e7193125d8cff33d469910160405180910390a3610760565b60028101546003820154604080513481526001600160a01b039092166020830152600192600160401b900460c01b6001600160c01b031916917ff2c1654ed9a061c98ca8740f361a8e87901eb28a5a99dfbf2fa52bfd630c8718910160405180910390a35b80546001600160801b03191690555b61077860015f55565b50565b7fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cef545f80516020612fd7833981519152906001600160a01b031633146107d45760405163771f23a560e01b815260040160405180910390fd5b6107e0816004016114b7565b156107fe57604051633bcd329760e21b815260040160405180910390fd5b61080883836114c0565b505050565b61081561180f565b61081e5f611862565b565b61082861180f565b5f80516020612fd78339815191525f5b86518110156109c4578287828151811061085457610854612dba565b60200260200101517f8fed2a9d56c64fa183a0f7f59e00507b0944c47bb2afcf3c71e9a1ecfd7896a488848151811061088f5761088f612dba565b60200260200101518885815181106108a9576108a9612dba565b60200260200101516040516108bf929190612dce565b60405180910390a3828782815181106108da576108da612dba565b60200260200101517f1da564d055176049c69e02a5056d05b4e7ca4b567660a389f8fc8222a67e7fa588848151811061091557610915612dba565b602002602001015187858151811061092f5761092f612dba565b6020026020010151604051610945929190612dce565b60405180910390a381600a015f88838151811061096457610964612dba565b6020908102919091018101518252818101929092526040015f908120805460018082018355918352929091206004830401805460039093166008026101000a6001600160401b038181021990941643909416029290921790915501610838565b50505050505050565b5f6109d66118ba565b905090565b6109e36113c0565b6109eb611452565b5f80516020612fd7833981519152610a048160016118d5565b604080515f815260208101909152610a2582610a1e6109cd565b5f84611904565b5f610a2f83611c29565b5f818152600685016020526040812091925080610a4c8684611c44565b91509150816001600160401b0316426001600160401b03161015610a835760405163085de62560e01b815260040160405180910390fd5b5f5b8751811015610b45575f610ab2888a8481518110610aa557610aa5612dba565b6020026020010151611c8d565b90505f610adc8983898d8781518110610acd57610acd612dba565b60200260200101518989611d97565b9050868a8481518110610af157610af1612dba565b60200260200101516001600160a01b03167f58bcef7d314689eafb1b8c76e478ede45da5a7741523a13c95cb541b7ea3a58583604051610b3391815260200190565b60405180910390a35050600101610a85565b5050505050505061077860015f55565b5f80516020612fd78339815191525f610b6e82336113f7565b9050610b7d6004830184611e92565b15610b9b5760405163a741a04560e01b815260040160405180910390fd5b610ba86004830182611eac565b50610bb66004830184611eb7565b50610bc282825f611ec2565b610bce82846001611ec2565b5f8181526006830160209081526040808320868452818420815481546001600160401b0391821667ffffffffffffffff1982168117845584546001600160801b031990921617600160401b91829004831690910217808355835467ffffffffffffffff60801b19909116600160801b918290049092160217905584845280546001600160c01b03191690556007850190915280822080548684528284205583835282905551849183917f71524cc6ca22de4a0fdad5e5fb660b4abc255fe16434872acec1da4eb7532bd19190a3505050565b610ca861180f565b610cb0611452565b5f80516020612fd7833981519152610cd281610cca6109cd565b600185611904565b600181810180546001600160c01b0316600160c01b426001600160401b03160217905560028201805467ffffffffffffffff191690556040513481525f91907f85079cd8e9f7dc912dcb7495b4ecc967d82c6578235c8a04f9b218ab1a4a4eaf9060200160405180910390a35061077860015f55565b610d5061180f565b610778816114ae565b6040805160118082526102408201909252606091602082016102208036833701905050905063dee07bec60e01b815f81518110610d9857610d98612dba565b6001600160e01b0319909216602092830291909101909101528051638da5cb5b60e01b9082906001908110610dcf57610dcf612dba565b6001600160e01b03199092166020928302919091019091015280516338a80c5360e11b9082906002908110610e0657610e06612dba565b6001600160e01b031990921660209283029190910190910152805163f2fde38b60e01b9082906003908110610e3d57610e3d612dba565b6001600160e01b03199092166020928302919091019091015280516358c3de9360e11b9082906004908110610e7457610e74612dba565b6001600160e01b031990921660209283029190910190910152805163bedb86fb60e01b9082906005908110610eab57610eab612dba565b6001600160e01b03199092166020928302919091019091015280516324d6e98760e01b9082906006908110610ee257610ee2612dba565b6001600160e01b0319909216602092830291909101909101528051636038b66760e01b9082906007908110610f1957610f19612dba565b6001600160e01b03199092166020928302919091019091015280516375b474cd60e11b9082906008908110610f5057610f50612dba565b6001600160e01b031990921660209283029190910190910152805163a212c84160e01b9082906009908110610f8757610f87612dba565b6001600160e01b031990921660209283029190910190910152805162c9fb1f60e11b908290600a908110610fbd57610fbd612dba565b6001600160e01b031990921660209283029190910190910152805163f4e3e37d60e01b908290600b908110610ff457610ff4612dba565b6001600160e01b0319909216602092830291909101909101528051639374dbe960e01b908290600c90811061102b5761102b612dba565b6001600160e01b03199092166020928302919091019091015280516396d9f77d60e01b908290600d90811061106257611062612dba565b6001600160e01b03199092166020928302919091019091015280516339c8435560e11b908290600e90811061109957611099612dba565b6001600160e01b031990921660209283029190910190910152805163754ab98b60e11b90829060109081106110d0576110d0612dba565b6001600160e01b03199092166020928302919091019091015290565b5f6109d65f80516020612fd78339815191526111066109cd565b611fa8565b61111361180f565b61111d82826114c0565b5050565b61112961180f565b6001600160a01b0381166111505760405163d92e233d60e01b815260040160405180910390fd5b61077881611862565b6111616113c0565b611169611452565b5f80516020612fd783398151915261118081611c29565b505f5b825181101561133e575f83828151811061119f5761119f612dba565b602002602001015190505f5b8551811015611334575f826001600160a01b03166370a082318884815181106111d6576111d6612dba565b60200260200101516040518263ffffffff1660e01b815260040161120991906001600160a01b0391909116815260200190565b602060405180830381865afa158015611224573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112489190612de6565b90505f836001600160a01b031663dd62ed3e89858151811061126c5761126c612dba565b60209081029190910101516040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604401602060405180830381865afa1580156112bf573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112e39190612de6565b9050808211156112f1578091505b61132a88848151811061130657611306612dba565b60200260200101513084876001600160a01b031661201c909392919063ffffffff16565b50506001016111ab565b5050600101611183565b507f5f100ccc3df8c6c33f91b15f974257b4674e596b7d717ea56454eabf2344f6128383604051611370929190612e35565b60405180910390a1600b018054600180820183555f928352602083206004830401805460039093166008026101000a6001600160401b038181021990941643909416029290921790915590555050565b5f80516020612ff783398151915254600160a01b900460ff161561081e576040516334c2d01160e11b815260040160405180910390fd5b604080516001600160a01b038316602080830191909152825180830382018152918301909252805191012061142f6004840182611e92565b61144c5760405163394b6cd960e11b815260040160405180910390fd5b92915050565b60025f54036114a85760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b60025f55565b61077881612076565b5f61144c825490565b80518251146114e5576040516001621398b960e31b0319815260040160405180910390fd5b5f80516020612fd78339815191525f5b8351811015611769575f83828151811061151157611511612dba565b6020026020010151905080604001516001600160401b03165f036115885761155e85838151811061154457611544612dba565b602002602001015184600401611eac90919063ffffffff16565b506115838386848151811061157557611575612dba565b60200260200101515f611ec2565b611610565b6115b785838151811061159d5761159d612dba565b602002602001015184600401611e9290919063ffffffff16565b611610576115ea8583815181106115d0576115d0612dba565b602002602001015184600401611eb790919063ffffffff16565b506116108386848151811061160157611601612dba565b60200260200101516001611ec2565b80836006015f87858151811061162857611628612dba565b60209081029190910181015182528181019290925260409081015f20835181549385015194909201516001600160401b03908116600160801b0267ffffffffffffffff60801b19958216600160401b026001600160801b03199095169190931617929092179290921691909117905584518590839081106116ab576116ab612dba565b6020026020010151836007015f8785815181106116ca576116ca612dba565b602002602001015181526020019081526020015f208190555080602001516001600160401b031685838151811061170357611703612dba565b60200260200101517fe209cfcf6a120dd7a1b9a8561f945c9cb8743f0e5dfefd8b522ccd788cbdce438360400151845f01516040516117589291906001600160401b0392831681529116602082015260400190565b60405180910390a3506001016114f5565b505f80611778836004016120ee565b90505f5b81518110156117dc57836006015f83838151811061179c5761179c612dba565b602002602001015181526020019081526020015f205f0160109054906101000a90046001600160401b0316836117d29190612d24565b925060010161177c565b50612710826001600160401b03161461180857604051632573366160e21b815260040160405180910390fd5b5050505050565b5f80516020612fd7833981519152611826816120fa565b6001810154600160801b90046001600160401b03165f0361185a576040516392e3e90760e01b815260040160405180910390fd5b610778612143565b5f61186b6118ba565b905061187682612173565b816001600160a01b0316816001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f80516020612ff7833981519152546001600160a01b031690565b6002820154600160801b9004811660ff161561111d5760405163580722b560e01b815260040160405180910390fd5b60038401546001600160a01b031661191c8585611fa8565b156119a65760018501805467ffffffffffffffff60801b1916600160801b426001600160401b03160217905560028501546040516001600160a01b03831681525f91600160401b900460c01b6001600160c01b031916907f9d640c638e9a33a0f7ffaf46f10dba56ae9b85501ea7f84d35c52faae3d7cdf39060200160405180910390a350611c23565b60018501545f906001600160401b03808216916119cc91600160801b9091041642612e59565b6119d69190612e8d565b90508380156119ee575060016001600160401b038216105b156119f7575060015b60016001600160401b03821610611c20576003860154600287015460405163373074e960e01b81526001600160a01b039092169163373074e9913491611a5991600160401b900460c01b908a906001600160401b038816908a90600401612eb2565b5f604051808303818588803b158015611a70575f80fd5b505af193505050508015611a82575060015b611b61578554611aac906001600160401b03831690600160801b90046001600160801b0316612ef6565b341015611acc57604051633c89335b60e11b815260040160405180910390fd5b6040516001600160a01b038316903480156108fc02915f818181858888f19350505050158015611afe573d5f803e3d5ffd5b506002860154604080513481526001600160a01b03851660208201525f92600160401b900460c01b6001600160c01b031916917fc540aac9cba3155c162d8d8e4da2e0c3a440df6a148c0e7193125d8cff33d469910160405180910390a3611bbf565b6002860154604080513481526001600160a01b03851660208201525f92600160401b900460c01b6001600160c01b031916917ff2c1654ed9a061c98ca8740f361a8e87901eb28a5a99dfbf2fa52bfd630c8718910160405180910390a35b6001860154611bd7906001600160401b031682612f0d565b600187018054601090611bfb908490600160801b90046001600160401b0316612d24565b92506101000a8154816001600160401b0302191690836001600160401b031602179055505b50505b50505050565b5f611c3482336113f7565b9050611c3f826121f4565b919050565b805460028301545f918291611c65916001600160401b039081169116612d24565b8354909250611c8490600160401b90046001600160401b031683612d24565b90509250929050565b6001600160a01b0381165f81815260098401602052604080822090516370a0823160e01b81523060048201529092906370a0823190602401602060405180830381865afa158015611ce0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d049190612de6565b82549091505f03611d1757808255611d90565b60018201548254611d289190612f38565b811115611d665760018201548254611d409190612f38565b611d4a9082612f38565b825f015f828254611d5b9190612f4b565b90915550611d909050565b60018201548254611d779190612f38565b811015611d90576001820154611d8d9082612f4b565b82555b5092915050565b5f848152600687016020908152604080832060078a01835281842054845260088a0190925282205f80611dce8a85858b8b8b61223e565b509092509050611dde8183612f38565b60405163a9059cbb60e01b8152336004820152602481018290529095506001600160a01b0389169063a9059cbb906044016020604051808303815f875af1158015611e2b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e4f9190612f5e565b506001600160a01b0388165f90815260208490526040812083905560018b018054879290611e7e908490612f4b565b90915550949b9a5050505050505050505050565b5f81815260018301602052604081205415155b9392505050565b5f611ea58383612314565b5f611ea583836123f7565b60038301546040805163cd26aee560e01b815290515f926001600160a01b03169163cd26aee59160048083019260209291908290030181865afa925050508015611f29575060408051601f3d908101601f19168201909252611f2691810190612f79565b60015b15611f315790505b6001600160a01b038116611f455750505050565b604051637da29dfb60e11b81526004810184905282151560248201526001600160a01b0382169063fb453bf6906044015f604051808303815f87803b158015611f8c575f80fd5b505af1925050508015611f9d575060015b15611c235750505050565b6003820154604051637706c9cb60e01b81526001600160a01b0383811660048301525f921690637706c9cb90602401602060405180830381865afa925050508015612010575060408051601f3d908101601f1916820190925261200d91810190612f5e565b60015b1561144c579392505050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052611c23908590612443565b5f80516020612ff7833981519152805460ff60a01b1916600160a01b831515908102919091179091556040517fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c91907f878ac8a2ca79520471f8f3c8494fa802c03ce3bf034252aad7f22318984fdbdb905f90a25050565b60605f611ea583612514565b60028101546001600160401b031615801590612125575060028101546001600160401b034281169116105b1561077857604051636576290f60e11b815260040160405180910390fd5b3361214c6118ba565b6001600160a01b03161461081e576040516336b6b89560e01b815260040160405180910390fd5b5f80516020612ff783398151915280546001600160a01b031981166001600160a01b038481169182179093556040517fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c939092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3505050565b600281015442906001600160401b03161580612220575060028201546001600160401b03908116908216105b1561111d5760405163085de62560e01b815260040160405180910390fd5b5f805f80846001600160401b0316426001600160401b03161161229c578854600160401b90046001600160401b031661271061227a8842612e59565b6001600160401b031661228d9190612ef6565b6122979190612f94565b6122a0565b6127105b89548b54919250612710916122c591600160801b90046001600160401b031690612ef6565b6122cf9190612f94565b91506127106122de8284612ef6565b6122e89190612f94565b6001600160a01b039097165f908152602098909852506040909620549498949750949550929350505050565b5f81815260018301602052604081205480156123ee575f612336600183612f38565b85549091505f9061234990600190612f38565b90508181146123a8575f865f01828154811061236757612367612dba565b905f5260205f200154905080875f01848154811061238757612387612dba565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806123b9576123b9612fa7565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f90556001935050505061144c565b5f91505061144c565b5f81815260018301602052604081205461243c57508154600181810184555f84815260208082209093018490558454848252828601909352604090209190915561144c565b505f61144c565b5f612497826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661256d9092919063ffffffff16565b80519091501561080857808060200190518101906124b59190612f5e565b6108085760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161149f565b6060815f0180548060200260200160405190810160405280929190818152602001828054801561256157602002820191905f5260205f20905b81548152602001906001019080831161254d575b50505050509050919050565b606061257b84845f85612583565b949350505050565b6060824710156125e45760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161149f565b5f80866001600160a01b031685876040516125ff9190612fbb565b5f6040518083038185875af1925050503d805f8114612639576040519150601f19603f3d011682016040523d82523d5f602084013e61263e565b606091505b509150915061264f8783838761265a565b979650505050505050565b606083156126c85782515f036126c1576001600160a01b0385163b6126c15760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161149f565b508161257b565b61257b83838151156126dd5781518083602001fd5b8060405162461bcd60e51b815260040161149f91906129c8565b634e487b7160e01b5f52604160045260245ffd5b604051606081016001600160401b038111828210171561272d5761272d6126f7565b60405290565b604051601f8201601f191681016001600160401b038111828210171561275b5761275b6126f7565b604052919050565b5f6001600160401b0382111561277b5761277b6126f7565b5060051b60200190565b5f6020808385031215612796575f80fd5b82356001600160401b038111156127ab575f80fd5b8301601f810185136127bb575f80fd5b80356127ce6127c982612763565b612733565b81815260059190911b820183019083810190878311156127ec575f80fd5b928401925b8284101561264f578335825292840192908401906127f1565b5f82601f830112612819575f80fd5b813560206128296127c983612763565b8083825260208201915060208460051b87010193508684111561284a575f80fd5b602086015b84811015612866578035835291830191830161284f565b509695505050505050565b80356001600160401b0381168114611c3f575f80fd5b5f806040808486031215612899575f80fd5b83356001600160401b03808211156128af575f80fd5b6128bb8783880161280a565b94506020915081860135818111156128d1575f80fd5b86019050601f810187136128e3575f80fd5b80356128f16127c982612763565b8181526060918202830184019184820191908a84111561290f575f80fd5b938501935b8385101561296a5780858c03121561292a575f80fd5b61293261270b565b61293b86612871565b8152612948878701612871565b87820152612957888701612871565b8189015283529384019391850191612914565b508096505050505050509250929050565b5f5b8381101561299557818101518382015260200161297d565b50505f910152565b5f81518084526129b481602086016020860161297b565b601f01601f19169290920160200192915050565b602081525f611ea5602083018461299d565b5f601f83601f8401126129eb575f80fd5b823560206129fb6127c983612763565b82815260059290921b85018101918181019087841115612a19575f80fd5b8287015b84811015612aa85780356001600160401b0380821115612a3b575f80fd5b818a0191508a603f830112612a4e575f80fd5b85820135604082821115612a6457612a646126f7565b612a75828b01601f19168901612733565b92508183528c81838601011115612a8a575f80fd5b8181850189850137505f908201870152845250918301918301612a1d565b50979650505050505050565b5f805f805f60a08688031215612ac8575f80fd5b85356001600160401b0380821115612ade575f80fd5b612aea89838a0161280a565b96506020880135915080821115612aff575f80fd5b612b0b89838a0161280a565b95506040880135915080821115612b20575f80fd5b612b2c89838a016129da565b94506060880135915080821115612b41575f80fd5b50612b4e888289016129da565b95989497509295608001359392505050565b6001600160a01b0381168114610778575f80fd5b5f82601f830112612b83575f80fd5b81356020612b936127c983612763565b8083825260208201915060208460051b870101935086841115612bb4575f80fd5b602086015b84811015612866578035612bcc81612b60565b8352918301918301612bb9565b5f60208284031215612be9575f80fd5b81356001600160401b03811115612bfe575f80fd5b61257b84828501612b74565b5f60208284031215612c1a575f80fd5b5035919050565b8015158114610778575f80fd5b5f60208284031215612c3e575f80fd5b8135611ea581612c21565b602080825282518282018190525f9190848201906040850190845b81811015612c8a5783516001600160e01b03191683529284019291840191600101612c64565b50909695505050505050565b5f60208284031215612ca6575f80fd5b8135611ea581612b60565b5f8060408385031215612cc2575f80fd5b82356001600160401b0380821115612cd8575f80fd5b612ce486838701612b74565b93506020850135915080821115612cf9575f80fd5b50612d0685828601612b74565b9150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115611d9057611d90612d10565b5f815180845260208085019450602084015f5b83811015612d7357815187529582019590820190600101612d57565b509495945050505050565b6001600160c01b0319841681526001600160a01b03831660208201526060604082018190525f90612db190830184612d44565b95945050505050565b634e487b7160e01b5f52603260045260245ffd5b828152604060208201525f61257b604083018461299d565b5f60208284031215612df6575f80fd5b5051919050565b5f815180845260208085019450602084015f5b83811015612d735781516001600160a01b031687529582019590820190600101612e10565b604081525f612e476040830185612dfd565b8281036020840152612db18185612dfd565b6001600160401b03828116828216039080821115611d9057611d90612d10565b634e487b7160e01b5f52601260045260245ffd5b5f6001600160401b0380841680612ea657612ea6612e79565b92169190910492915050565b6001600160c01b0319851681526001600160a01b0384166020820152604081018390526080606082018190525f90612eec90830184612d44565b9695505050505050565b808202811582820484141761144c5761144c612d10565b6001600160401b03818116838216028082169190828114612f3057612f30612d10565b505092915050565b8181038181111561144c5761144c612d10565b8082018082111561144c5761144c612d10565b5f60208284031215612f6e575f80fd5b8151611ea581612c21565b5f60208284031215612f89575f80fd5b8151611ea581612b60565b5f82612fa257612fa2612e79565b500490565b634e487b7160e01b5f52603160045260245ffd5b5f8251612fcc81846020870161297b565b919091019291505056fec20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cecc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c1320a26469706673582212201cbb934e0c7f95250394eeb0fb3c94c76532b9fc5cb06651228cc81b73d5413964736f6c63430008180033