Sourcify Logosourcify.eth

0x1c576C8d038F48224dfE780108449A0ac828864A

on Polygon Mainnet (137)

Match
Runtime Bytecode
Creation Bytecode
Contract Name
TokenMaster2
Compilation Target
TokenMaster2.sol:TokenMaster2
Language
Solidity
Compiler
solc 0.8.30+commit.73712a01
EVM Version
default
Verified At
2025-10-02 08:47:28 UTC
Deployer
0x9F88d9B0b934A5261C364A726a9A36d67B431cAb
Deployment Transaction
0x4aca0f6fe8f0c0c0dc32ee3b57b510cfd011d3eec9d48a040c4f126f608e9cec
Block Number
76791090
Transaction Index
91

Read/Write Contract on:

OpenZeppelin Logo

ABI

Expand to view

Source Code

Remix IDE LogoView on Remix IDE
  • TokenMaster2.sol
Loading...

Compiler Settings

Loading...

Contract Metadata

Loading...

Creation Bytecode

0x60a060405260016005556040516164313803806164318339810160408190526100279161022d565b6040805180820190915260018152605360f81b6020820152610055906001600160a01b0384161515906101e9565b60018390555f8054336001600160a01b0319918216811790925560d0610082600a655af3107a4000610282565b61009290655af3107a40006102a1565b6100a5911b64016bcc41e960ae1b6102ba565b166100b091906102ba565b6002556001600160a01b038083166080819052604080516316aa8a1960e11b81529051919263c47f00279290851691632d551432916004808301925f9291908290030181865afa158015610106573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261012d91908101906102e1565b60405160200161013d9190610391565b6040516020818303038152906040526040518263ffffffff1660e01b815260040161016891906103d0565b6020604051808303815f875af1158015610184573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101a89190610405565b50604080513381523060208201527feventSignature82488d8ab594db2178e4a45b7106aaa804836e608f001b5d7fcb6c3514730b3e910160405180910390a150505061041c565b80826102115760405162461bcd60e51b815260040161020891906103d0565b60405180910390fd5b505050565b6001600160a01b038116811461022a575f5ffd5b50565b5f5f5f6060848603121561023f575f5ffd5b8351602085015190935061025281610216565b604085015190925061026381610216565b809150509250925092565b634e487b7160e01b5f52601160045260245ffd5b5f8261029c57634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156102b4576102b461026e565b92915050565b808201808211156102b4576102b461026e565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156102f1575f5ffd5b81516001600160401b03811115610306575f5ffd5b8201601f81018413610316575f5ffd5b80516001600160401b0381111561032f5761032f6102cd565b604051601f8201601f19908116603f011681016001600160401b038111828210171561035d5761035d6102cd565b604052818152828201602001861015610374575f5ffd5b8160208401602083015e5f91810160200191909152949350505050565b7f746f6b656e6d61737465722e756e67726176656c00000000000000000000000081525f82518060208501601485015e5f920160140191825250919050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f60208284031215610415575f5ffd5b5051919050565b608051615fef6104425f395f818161050301528181613d480152613dd60152615fef5ff3fe60806040526004361061018c575f3560e01c8063functionSignature4d16255d116100db578063functionSignature4d16255d146103df578063functionSignature54fd4d50146103f2578063functionSignature5a3b7e4214610408578063functionSignature5de5cbe414610436578063functionSignature6f48eb9014610449578063functionSignature70a0823114610468578063functionSignature8620410b1461049f578063functionSignature8963c0f8146104bf578063functionSignature8da5cb5b146104de578063functionSignature92399c04146104f2578063functionSignature95d89b4114610525578063functionSignature9b10778314610553578063functionSignatureb82b5a5814610572578063functionSignaturebdf0c7f614610591578063functionSignaturee1168ff9146105b0578063functionSignaturef23a6e61146105e0578063functionSignaturef730395514610625575f5ffd5b80614a01146101cf57806184f3146101f057806187111461020f578061b1841461022e578061b3ea14610236578061c77114610255578061e7f114610274578063functionSignature04e80e9014610293578063functionSignature0580cc69146102c1578063functionSignature06fdde03146102ed578063functionSignature18160ddd1461030e578063functionSignature2dda78e31461032e578063functionSignature2eddf9a21461035c578063functionSignature313ce5671461037b578063functionSignature323180cd14610396578063functionSignature4b750334146103a9578063functionSignature4cd1ad32146103c0575f5ffd5b366101cb57604080513381523460208201527feventSignaturee1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c910160405180910390a1005b5f5ffd5b3480156101da575f5ffd5b506101ee6101e9366004614d27565b610649565b005b3480156101fb575f5ffd5b506101ee61020a366004614d51565b6107a4565b34801561021a575f5ffd5b506101ee610229366004614d71565b61084d565b6101ee610a46565b348015610241575f5ffd5b506101ee610250366004614daf565b610c0d565b348015610260575f5ffd5b506101ee61026f366004614d27565b610d98565b34801561027f575f5ffd5b506101ee61028e366004614dc6565b610f04565b34801561029e575f5ffd5b505f546001600160a01b03165b6040516102b89190614de8565b60405180910390f35b3480156102cc575f5ffd5b506102e06102db366004614dfc565b610f9c565b6040516102b89190614e64565b3480156102f8575f5ffd5b5061030161138c565b6040516102b89190614ea4565b348015610319575f5ffd5b506307270e005b6040519081526020016102b8565b348015610339575f5ffd5b5061034d610348366004614daf565b61139e565b6040516102b893929190614eef565b348015610367575f5ffd5b506101ee610376366004614f31565b6116fc565b348015610386575f5ffd5b50604051600281526020016102b8565b6101ee6103a4366004614dfc565b611974565b3480156103b4575f5ffd5b5060025460d01c610320565b3480156103cb575f5ffd5b506103016103da366004615028565b611c04565b6101ee6103ed366004614dfc565b611c9b565b3480156103fd575f5ffd5b506301315484610320565b348015610413575f5ffd5b5060408051808201909152600681526504552432d32360d41b6020820152610301565b6101ee610444366004615084565b611e71565b348015610454575f5ffd5b506101ee6104633660046150f3565b61223e565b348015610473575f5ffd5b50610320610482366004614dc6565b6001600160a01b03165f9081526003602052604090205460011c90565b3480156104aa575f5ffd5b5061032060025460a01c65ffffffffffff1690565b3480156104ca575f5ffd5b506101ee6104d9366004615164565b6126fd565b3480156104e9575f5ffd5b506102ab612793565b3480156104fd575f5ffd5b506102ab7f000000000000000000000000000000000000000000000000000000000000000081565b348015610530575f5ffd5b5060408051808201909152600681526573686172657360d01b6020820152610301565b34801561055e575f5ffd5b5061032061056d3660046151a3565b6127a2565b34801561057d575f5ffd5b506101ee61058c3660046151cf565b61280f565b34801561059c575f5ffd5b506101ee6105ab366004615164565b612949565b3480156105bb575f5ffd5b506105cf6105ca366004614daf565b6129b1565b6040516102b89594939291906151fa565b3480156105eb575f5ffd5b5061060c6105fa366004615294565b63functionSignaturef23a6e6160e01b9695505050505050565b6040516001600160e01b031990911681526020016102b8565b61063861063336600461530a565b612d22565b6040516102b8959493929190615362565b600160055f82825461065b91906153d6565b9091555050600554826106ab6001600160a01b0382161580159061068c5750335f9081526003602052604090205415155b604051806040016040528060018152602001601560fa1b8152506137d6565b5f60035f336001600160a01b03166001600160a01b031681526020019081526020015f205490506106fc84600183901c1015604051806040016040528060018152602001603360f91b8152506137d6565b335f9081526004602090815260408083206001600160a01b03891684529091528120805486929061072e9084906153d6565b90915550506040518481526001600160a01b0386169033907feventSignature8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259060200160405180910390a35050600554811461079f5760405162461bcd60e51b8152600401610796906153e9565b60405180910390fd5b505050565b600160055f8282546107b691906153d6565b90915550506005546107fc6107c9612793565b6001600160a01b0316336001600160a01b031614604051806040016040528060018152602001602960f91b8152506137d6565b610804612793565b6001600160a01b031661081f60d085901b60a085901b6153d6565b61082991906153d6565b600255600554811461079f5760405162461bcd60e51b8152600401610796906153e9565b600160055f82825461085f91906153d6565b90915550506005546108726107c9612793565b6108b36001600160a01b0385161580159061068c57506001600160a01b0384161515604051806040016040528060018152602001601560fa1b8152506137d6565b6001600160a01b038084165f9081526003602090815260408083205493881683526004825280832033845290915290205460019190911c9061094b90841180159061091857506001600160a01b0386165f9081526003602052604090205460011c8411155b801561068c57508161092a85826153d6565b1015604051806040016040528060018152602001601560fa1b8152506137d6565b6001600160a01b0385165f9081526004602090815260408083203384529091528120805485929061097d908490615404565b90915550506001600160a01b0385165f9081526003602052604081208054600186901b92906109ad908490615404565b90915550506001600160a01b0384165f9081526003602052604081208054600186901b92906109dd9084906153d6565b92505081905550836001600160a01b0316856001600160a01b03165f516020615f9a5f395f51905f5285604051610a1691815260200190565b60405180910390a3506005548114610a405760405162461bcd60e51b8152600401610796906153e9565b50505050565b600160055f828254610a5891906153d6565b9091555050600554610aac610a6b6137f5565b80610a8d575033610a82610a7d61386b565b61399f565b6001600160a01b0316145b604051806040016040528060018152602001604f60f81b8152506137d6565b335f9081526003602052604090205460025460a01c65ffffffffffff16610af93415801590610ada57505f82115b604051806040016040528060018152602001607960f81b8152506137d6565b5f6103e882610b083483615417565b610b12919061542e565b610b1c919061542e565b305f90815260036020526040902054909150610b749060011c8211801590610b555750600184811c90610b529084901b826153d6565b10155b604051806040016040528060018152602001607160f81b8152506137d6565b305f9081526003602052604081208054600184901b9290610b96908490615404565b9091555050335f9081526003602052604081208054600184901b9290610bbd9084906153d6565b9091555050604051818152339030905f516020615f9a5f395f51905f529060200160405180910390a35050506005548114610c0a5760405162461bcd60e51b8152600401610796906153e9565b50565b600160055f828254610c1f91906153d6565b9091555050600554610c32610a6b6137f5565b335f9081526003602052604090205460025460d01c610c878415801590610c5857505f82115b8015610c68575084600184901c10155b604051806040016040528060018152602001606560f81b8152506137d6565b305f9081526003602052604090205460011c9150610cca82610ca986826153d6565b1015604051806040016040528060018152602001605160f81b8152506137d6565b335f9081526003602052604081208054600187901b9290610cec908490615404565b9091555050305f9081526003602052604081208054600187901b9290610d139084906153d6565b909155503390506108fc610d278387615417565b6040518115909202915f818181858888f19350505050158015610d4c573d5f5f3e3d5ffd5b50604051848152309033905f516020615f9a5f395f51905f529060200160405180910390a350506005548114610d945760405162461bcd60e51b8152600401610796906153e9565b5050565b600160055f828254610daa91906153d6565b909155505060055482610df96001600160a01b0382161580159061068c5750335f908152600360205260409020541515604051806040016040528060018152602001601560fa1b8152506137d6565b6001600160a01b0384165f9081526003602052604080822054338352912054600191821c91610e5c9082901c8611801590610e3d575082610e3a87826153d6565b10155b604051806040016040528060018152602001601d60fa1b8152506137d6565b335f9081526003602052604081208054600188901b9290610e7e908490615404565b90915550506001600160a01b0386165f9081526003602052604081208054600188901b9290610eae9084906153d6565b90915550506040518581526001600160a01b0387169033905f516020615f9a5f395f51905f529060200160405180910390a3505050600554811461079f5760405162461bcd60e51b8152600401610796906153e9565b600160055f828254610f1691906153d6565b9091555050600554610f296107c9612793565b6040805180820190915260018152605960f81b6020820152610f57906001600160a01b0384161515906137d6565b816001600160a01b03166001600160a01b031960025416610f7891906153d6565b6002556005548114610d945760405162461bcd60e51b8152600401610796906153e9565b604051631f29e98760e21b8152600481018390526060905f906001600160a01b03841690637ca7a61c90602401602060405180830381865afa158015610fe4573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611008919061544d565b604051631b5576df60e11b8152600481018690529091505f906001600160a01b038516906336aaedbe90602401602060405180830381865afa158015611050573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611074919061544d565b90505f826001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156110b2573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526110d9919081019061548a565b90505f815160026110ea9190615417565b90505f846001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa158015611129573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061114d9190615519565b90505f61115a82846153d6565b6001600160401b0381111561117157611171614f83565b60405190808252806020026020018201604052801561119a578160200160208202803683370190505b5090505f866001600160a01b03166327506f536040518163ffffffff1660e01b81526004015f60405180830381865afa1580156111d9573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526112009190810190615530565b90505f805b868181518110611217576112176155b6565b60200260200101519150816001600160a01b0316318482600261123a9190615417565b8151811061124a5761124a6155b6565b602090810291909101015260405163functionSignature70a0823160e01b81526001600160a01b0389169063functionSignature70a0823190611281908590600401614de8565b602060405180830381865afa15801561129c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112c09190615519565b846112cc836002615417565b6112d79060016153d6565b815181106112e7576112e76155b6565b6020908102919091010152806112fc816155ca565b915050865181106112055782515f0361132057839950505050505050505050611386565b505f5b828181518110611335576113356155b6565b602002602001015184878361134a91906153d6565b8151811061135a5761135a6155b6565b60209081029190910101528061136f816155ca565b915050825181106113235750919750505050505050505b92915050565b6060611399600154613a77565b905090565b60608060605f6113ac612793565b604051631f29e98760e21b8152600481018790529091505f906001600160a01b03831690637ca7a61c90602401602060405180830381865afa1580156113f4573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611418919061544d565b9050806001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa158015611455573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261147c919081019061548a565b60408051600a80825261016082019092529195505f91906020820161014080368337019050509050826001600160a01b0316815f815181106114c0576114c06155b6565b602002602001018181525050816001600160a01b0316816001815181106114e9576114e96155b6565b60200260200101818152505060028160028151811061150a5761150a6155b6565b60200260200101818152505065ffffffffffff60d06001600160d01b031960025416901c1681600381518110611542576115426155b6565b60200260200101818152505065ffffffffffff60a065ffffffffffff60a01b60025416901c168160048151811061157b5761157b6155b6565b602002602001018181525050600160035f306001600160a01b03166001600160a01b031681526020019081526020015f2054901c816005815181106115c2576115c26155b6565b602002602001018181525050600160035f846001600160a01b03166001600160a01b031681526020019081526020015f2054901c81600681518110611609576116096155b6565b602002602001018181525050600160fd1b5f1b600154175f1c81600781518110611635576116356155b6565b602002602001018181525050816001600160a01b0316318160088151811061165f5761165f6155b6565b602002602001018181525050478160098151811061167f5761167f6155b6565b602090810291909101015260405163functionSignature0580cc6960e01b8152309063functionSignature0580cc69906116af908a9087906004016155e2565b5f60405180830381865afa1580156116c9573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526116f09190810190615530565b90979496509450505050565b600160055f82825461170e91906153d6565b9091555050600554825f8061172283613c15565b909250905061175f6001600160a01b03831633148015611740575060015b604051806040016040528060018152602001601960fa1b8152506137d6565b335f90815260036020526040808220546001600160a01b038c16835291205460011c6117d6881580159061179757508a600184901c10155b80156117ac5750816117a98c826153d6565b10155b80156117b757505f8a115b604051806040016040528060018152602001603560f91b8152506137d6565b335f908152600360205260408120805460018d901b92906117f8908490615404565b90915550506001600160a01b038b165f908152600360205260408120805460018d901b92906118289084906153d6565b90915550506040518a81526001600160a01b038c169033905f516020615f9a5f395f51905f529060200160405180910390a35f61186489613c15565b9150506118708961399f565b604051600162d64b2b60e01b0319815260048101839052602481018c90526001600160a01b038a81166044830152919091169063ff29b4d5906064015f604051808303815f87803b1580156118c3575f5ffd5b505af11580156118d5573d5f5f3e3d5ffd5b505050505f6103e88c8c6103e86118ec9190615417565b6118f6919061542e565b611900919061542e565b6002549091506001600160a01b031660d061191c600a8461542e565b6119269084615404565b611935911b60a084901b6153d6565b61193f91906153d6565b60025550506005548614945061196c93505050505760405162461bcd60e51b8152600401610796906153e9565b505050505050565b600160055f82825461198691906153d6565b909155505060055481611aab6001600160a01b03821615801590611a8c5750816001600160a01b031663functionSignature8da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119e1573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a05919061544d565b6001600160a01b03165f5f9054906101000a90046001600160a01b03166001600160a01b031663functionSignature8da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a5d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a81919061544d565b6001600160a01b0316145b604051806040016040528060018152602001601160fa1b8152506137d6565b83611ad7611ab882613d3b565b604051806040016040528060018152602001605160f81b8152506137d6565b5f611ae0612793565b6001600160a01b0316637ca7a61c876040518263ffffffff1660e01b8152600401611b0d91815260200190565b602060405180830381865afa158015611b28573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b4c919061544d565b60405162900f0160e41b81529091506001600160a01b03821690630900f01090611b7a908890600401614de8565b5f604051808303815f87803b158015611b91575f5ffd5b505af1158015611ba3573d5f5f3e3d5ffd5b505050507feventSignature388eec974255b3b2d6e0eadca48a52c7a784df03983a9330992ad93604364a4e8186604051611bd89291906155f9565b60405180910390a1505050600554811461079f5760405162461bcd60e51b8152600401610796906153e9565b6060611c3884518385611c1791906153d6565b1115604051806040016040528060018152602001607360f81b8152506137d6565b816001600160401b03811115611c5057611c50614f83565b6040519080825280601f01601f191660200182016040528015611c7a576020820181803683370190505b50905060208082019085850101611c92828286614049565b50509392505050565b600160055f828254611cad91906153d6565b909155505060055481611d086001600160a01b03821615801590611a8c5750816001600160a01b031663functionSignature8da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119e1573d5f5f3e3d5ffd5b83611d15611ab882613d3b565b6040805180820190915260018152607560f81b6020820152611d43906001600160a01b0386161515906137d6565b5f611d4e86866140c5565b915050611de8856001600160a01b0316826001600160a01b031663a619486e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d9a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dbe919061544d565b6001600160a01b03161415604051806040016040528060018152602001605560f81b8152506137d6565b60405162900f0160e41b81526001600160a01b03821690630900f01090611e13908890600401614de8565b5f604051808303815f87803b158015611e2a575f5ffd5b505af1158015611e3c573d5f5f3e3d5ffd5b505050507feventSignaturec084247a97e67befd8ae74784369e08284d086017aa02d7c905f10483518a30d8186604051611bd89291906155f9565b600160055f828254611e8391906153d6565b9091555050600554600254611f2e90158015611f0f5750336001600160a01b0316336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ee0573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f04919061544d565b6001600160a01b0316145b604051806040016040528060018152602001602360f91b8152506137d6565b336001600160a01b031960d0611f4b600a655af3107a400061542e565b611f5b90655af3107a4000615404565b611f6e911b64016bcc41e960ae1b6153d6565b16611f7991906153d6565b600290815583908390611f8c9082615404565b818110611f9b57611f9b6155b6565b602002919091013560019081555f915084908490611fb99082615404565b818110611fc857611fc86155b6565b9050602002013590505f816001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa15801561200d573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612034919081019061548a565b90505f8080805b84818151811061204d5761204d6155b6565b602002602001015193506001600160601b03609f6001600160a01b03198b8b8581811061207c5761207c6155b6565b9050602002013516901c16925061210e835f141580156120b157506001600160a01b0385165f90815260036020526040902054155b80156120ef5750846001600160a01b03166001600160a01b038b8b858181106120dc576120dc6155b6565b90506020020135166001600160a01b0316145b604051806040016040528060018152602001601360fa1b8152506137d6565b61211883836153d6565b6001600160a01b0385165f818152600360205260408082208790555192945090915f516020615f9a5f395f51905f529061215990600188901c815260200190565b60405180910390a38061216b816155ca565b9150508451811061203b57612184630bebc20083615404565b9150612194826301312d00615404565b305f81815260036020526040812092909255905f516020615f9a5f395f51905f526121c6600186901c62989680615404565b60405190815260200160405180910390a36001600160a01b0386165f8181526003602090815260408083206301312d009055516298968081525f516020615f9a5f395f51905f52910160405180910390a3505050505050600554811461079f5760405162461bcd60e51b8152600401610796906153e9565b600160055f82825461225091906153d6565b9091555050600554845f612262612793565b6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561229d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122c1919061544d565b6001600160a01b0316633b3b57de6123676122da612793565b6001600160a01b0316632d5514326040518163ffffffff1660e01b81526004015f60405180830381865afa158015612314573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261233b9190810190615649565b60405160200161234b91906156ac565b604051602081830303815290604052612362612793565b6141fa565b6040518263ffffffff1660e01b815260040161238591815260200190565b602060405180830381865afa1580156123a0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123c4919061544d565b90505f6123d08361399f565b9050612544816001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa158015612411573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612435919061544d565b6001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa158015612470573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612494919061544d565b6001600160a01b0316336001600160a01b031614806124bb5750336001600160a01b038416145b801561252557505f826001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa1580156124ff573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125239190615519565b115b604051806040016040528060018152602001602b60f91b8152506137d6565b612588881580159061255557508715155b801561256957506001600160a01b03871615155b604051806040016040528060018152602001603b60f91b8152506137d6565b5f5f87875f5f9054906101000a90046001600160a01b03166001600160a01b031663functionSignature92399c046040518163ffffffff1660e01b8152600401602060405180830381865afa1580156125db573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125ff919061544d565b60405161260b90614d06565b612617939291906156cc565b6040518091039082f0905080158015612632573d5f5f3e3d5ffd5b50905061263e8961399f565b6001600160a01b03166302c6c86489836040518363ffffffff1660e01b815260040161266b9291906155e2565b5f604051808303815f87803b158015612682575f5ffd5b505af1158015612694573d5f5f3e3d5ffd5b505050507feventSignature9845bb4750fb95891db3b02ccd4220ad685ef1fa843d99032b0dba8a62ee5f3681886040516126c99291906155f9565b60405180910390a15050505060055481146126f65760405162461bcd60e51b8152600401610796906153e9565b5050505050565b600160055f82825461270f91906153d6565b909155505060055483612724611ab882613d3b565b6127666001600160a01b0385161580159061274757506001600160a01b03841615155b604051806040016040528060018152602001604760f81b8152506137d6565b6127718585856143f8565b506005548114610a405760405162461bcd60e51b8152600401610796906153e9565b6002546001600160a01b031690565b5f6127e46001600160a01b0384161580159061068c57506001600160a01b0383161515604051806040016040528060018152602001601560fa1b8152506137d6565b506001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b600160055f82825461282191906153d6565b9091555050600554835f8061283583613c15565b90925090506128716001600160a01b0383163314801561174057506001604051806040016040528060018152602001601960fa1b8152506137d6565b5f61287b8861399f565b90506128ca6001600160a01b0387161580159061289757508715155b80156128ab57506001600160a01b03821615155b604051806040016040528060018152602001603760f91b8152506137d6565b60405162b1b21960e21b81526001600160a01b038216906302c6c864906128f7908a908a906004016155e2565b5f604051808303815f87803b15801561290e575f5ffd5b505af1158015612920573d5f5f3e3d5ffd5b50505050505050506005548114610a405760405162461bcd60e51b8152600401610796906153e9565b600160055f82825461295b91906153d6565b909155505060055483612970611ab882613d3b565b6127666001600160a01b03851615801590610ada57506001600160a01b0384161515604051806040016040528060018152602001607960f81b8152506137d6565b5f5f60608060605f6129c1612793565b604051631f29e98760e21b8152600481018990529091505f906001600160a01b03831690637ca7a61c90602401602060405180830381865afa158015612a09573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a2d919061544d565b90505f826001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a6c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a90919061544d565b604051631101d5ab60e11b8152600481018b9052602060248201526001600160a01b039190911690632203ab56906044015f60405180830381865afa158015612adb573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612b029190810190615725565b9150505f836001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612b42573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b66919061544d565b604051631101d5ab60e11b8152600481018c9052608060248201526001600160a01b039190911690632203ab56906044015f60405180830381865afa158015612bb1573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612bd89190810190615725565b915050836001600160a01b0316633f15457f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c17573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c3b919061544d565b6001600160a01b03166302571be38b6040518263ffffffff1660e01b8152600401612c6891815260200190565b602060405180830381865afa158015612c83573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ca7919061544d565b838383866001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa158015612ce5573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612d0c919081019061548a565b939e929d50909b50995090975095505050505050565b6060808080806001600160a01b0387161580612daf5750866001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015612d75573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612d99919061544d565b6001600160a01b0316876001600160a01b031614155b15612e09575050604080515f808252606080830184526005602080850182815264677766632160d81b86880181905287518681529283019586526080830188529682019283529281019590955292965094509192506137cb565b5f5f5f5f5f8b6001600160a01b0316631e0c8b8d8f8f5f6040518463ffffffff1660e01b8152600401612e3e93929190615769565b5f604051808303815f875af1158015612e59573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612e8091908101906157a0565b60408051600f8082526102008201909252959a50939850919650945092505f9190602082016101e0803683370190505090508581600a81518110612ec657612ec66155b6565b602002602001018181525050846001600160a01b031681600b81518110612eef57612eef6155b6565b602002602001018181525050836001600160a01b031681600c81518110612f1857612f186155b6565b602002602001018181525050826001600160a01b031681600d81518110612f4157612f416155b6565b60209081029190910101526001600160a01b0385161580612f6957506001600160a01b038416155b80612f7c57506001600160a01b03851633145b15613032574681600e81518110612f9557612f956155b6565b6020026020010181815250505f8d6001600160a01b0316632d5514326040518163ffffffff1660e01b81526004015f60405180830381865afa158015612fdd573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526130049190810190615649565b604080515f80825260208201908152818301909252939d50939b5091995091975095506137cb945050505050565b6131078d6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613071573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613095919061544d565b6001600160a01b0316633b3b57de8e6040518263ffffffff1660e01b81526004016130c291815260200190565b602060405180830381865afa1580156130dd573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613101919061544d565b8e6145cd565b81600e8151811061311a5761311a6155b6565b602090810291909101015260405163functionSignature0580cc6960e01b8152309063functionSignature0580cc699061314a908f9087906004016155e2565b5f60405180830381865afa158015613164573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261318b9190810190615530565b97505f8d6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131ca573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131ee919061544d565b6001600160a01b0316633b3b57de8e6040518263ffffffff1660e01b815260040161321b91815260200190565b602060405180830381865afa158015613236573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061325a919061544d565b90506001600160a01b0381166132ac5750604080515f808252602082019081526080820183526004928201928352636777706360e01b6060830152929c50929a50919850965094506137cb9350505050565b806001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156132e7573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261330e919081019061548a565b9950806001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa15801561334c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613370919061544d565b6001600160a01b0316825f8151811061338b5761338b6155b6565b602002602001018181525050806001600160a01b0316826001815181106133b4576133b46155b6565b6020026020010181815250506002826002815181106133d5576133d56155b6565b602002602001018181525050846001600160a01b031663functionSignature4b7503346040518163ffffffff1660e01b8152600401602060405180830381865afa15801561341d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906134419190615519565b82600381518110613454576134546155b6565b602002602001018181525050846001600160a01b031663functionSignature8620410b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561349c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906134c09190615519565b826004815181106134d3576134d36155b6565b602090810291909101015260405163functionSignature70a0823160e01b81526001600160a01b0386169063functionSignature70a082319061350a903090600401614de8565b602060405180830381865afa158015613525573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135499190615519565b8260058151811061355c5761355c6155b6565b602090810291909101015260405163functionSignature70a0823160e01b81526001600160a01b0386169063functionSignature70a0823190613593908490600401614de8565b602060405180830381865afa1580156135ae573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135d29190615519565b826006815181106135e5576135e56155b6565b60200260200101818152505061365d856001600160a01b031663functionSignature06fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa15801561362f573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526136569190810190615649565b6020015190565b5f1c82600781518110613672576136726155b6565b602002602001018181525050806001600160a01b0316318260088151811061369c5761369c6155b6565b60200260200101818152505047826009815181106136bc576136bc6155b6565b602002602001018181525050505f5f8e6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613707573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061372b919061544d565b6001600160a01b0316632203ab568f60806040518363ffffffff1660e01b8152600401613762929190918252602082015260400190565b5f60405180830381865afa15801561377c573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526137a39190810190615725565b91509150816080146137bd57816137b9816155ca565b9250505b919b50919950955050505050505b945094509450945094565b808261079f5760405162461bcd60e51b81526004016107969190614ea4565b5f613801610a7d61386b565b6001600160a01b0316632b0891e9336040518263ffffffff1660e01b815260040161382c9190614de8565b602060405180830381865afa158015613847573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611399919061581d565b5f613874612793565b6001600160a01b0316635001f3b56040518163ffffffff1660e01b8152600401602060405180830381865afa1580156138af573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906138d3919061544d565b6001600160a01b031663ddf7fcb06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561390e573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906139329190615519565b60015461394490600160fd1b17613a77565b604051602001613954919061583c565b60405160208183030381529060405280519060200120604051602001613984929190918252602082015260400190565b60405160208183030381529060405280519060200120905090565b5f6139c8825f5f1b1415604051806040016040528060018152602001602d60f91b8152506137d6565b5f6139d1612793565b6001600160a01b0316637ca7a61c846040518263ffffffff1660e01b81526004016139fe91815260200190565b602060405180830381865afa158015613a19573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613a3d919061544d565b90506113865f6001600160a01b0316826001600160a01b03161415604051806040016040528060018152602001600b60fb1b8152506137d6565b6040805160208082528183019092526060915f91906020820181803683370190505090505f805b848260208110613ab057613ab06155b6565b1a60f81b6001600160f81b03191615613b0657848260208110613ad557613ad56155b6565b1a60f81b838381518110613aeb57613aeb6155b6565b60200101906001600160f81b03191690815f1a905350613b09565b50805b81613b13816155ca565b925050602082108015613b24575080155b613a9e575f816001600160401b03811115613b4157613b41614f83565b6040519080825280601f01601f191660200182016040528015613b6b576020820181803683370190505b5090505f92505b838381518110613b8457613b846155b6565b01602001516001600160f81b03191615613bde57838381518110613baa57613baa6155b6565b602001015160f81c60f81b818481518110613bc757613bc76155b6565b60200101906001600160f81b03191690815f1a9053505b81613be881615847565b9250508280613bf6906155ca565b935050602083108015613c0857505f82115b613b725795945050505050565b5f80600f60fc1b81613c268561399f565b90505f5f826001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa158015613c66573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613c8a9190615519565b90505b80613c9781615847565b604051631aae8f7360e11b8152600481018290529092506001600160a01b038516915063355d1ee690602401602060405180830381865afa158015613cde573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613d029190615519565b91505f81118015613d1257505f82115b8015613d2057508384831614155b613c8d576001600160a01b0391909116969095509350505050565b5f8115801590613ebc57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633f15457f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613da2573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613dc6919061544d565b6001600160a01b031663f79fe5387f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663bffbe61c336040518263ffffffff1660e01b8152600401613e209190614de8565b602060405180830381865afa158015613e3b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613e5f9190615519565b6040518263ffffffff1660e01b8152600401613e7d91815260200190565b602060405180830381865afa158015613e98573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613ebc919061581d565b8015613f3f5750613ecb612793565b6001600160a01b0316336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015613f10573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f34919061544d565b6001600160a01b0316145b8015613fbd5750813363355d1ee6613f55612793565b6001600160a01b03166040518263ffffffff1660e01b8152600401613f7c91815260200190565b602060405180830381865afa158015613f97573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613fbb9190615519565b145b8015611386575033613fcd612793565b6001600160a01b031663deb931a2846040518263ffffffff1660e01b8152600401613ffa91815260200190565b602060405180830381865afa158015614015573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614039919061544d565b6001600160a01b03161492915050565b6020811061408157815183526140606020846153d6565b925061406d6020836153d6565b915061407a602082615404565b9050614049565b805f0361408d57505050565b5f600161409b836020615404565b6140a79061010061593f565b6140b19190615404565b925184518416931916929092179092525050565b5f5f5f6140d0612793565b604051631f29e98760e21b8152600481018790529091505f906001600160a01b03831690637ca7a61c90602401602060405180830381865afa158015614118573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061413c919061544d565b604051631b5576df60e11b8152600481018890529091505f906001600160a01b038416906336aaedbe90602401602060405180830381865afa158015614184573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906141a8919061544d565b90506141ec6001600160a01b038716158015906141cd57506001600160a01b03821630145b604051806040016040528060018152602001602760f91b8152506137d6565b9093509150505b9250929050565b5f5f826001600160a01b0316635001f3b56040518163ffffffff1660e01b8152600401602060405180830381865afa158015614238573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061425c919061544d565b6001600160a01b031663ddf7fcb06040518163ffffffff1660e01b8152600401602060405180830381865afa158015614297573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906142bb9190615519565b614353856142c8876149b2565b5f815181106142d9576142d96155b6565b602002602001015160016142ed919061594a565b60ff1660016142fb896149b2565b5f8151811061430c5761430c6155b6565b602002602001015161431d8a6149b2565b60018151811061432f5761432f6155b6565b60200260200101516143419190615963565b61434b9190615963565b60ff16611c04565b8051602091820120604051614372939201918252602082015260400190565b604051602081830303815290604052805190602001209050806143ba855f614399886149b2565b5f815181106143aa576143aa6155b6565b602002602001015160ff16611c04565b80516020918201206040516143d9939201918252602082015260400190565b6040516020818303038152906040528051906020012091505092915050565b5f336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015614435573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614459919061544d565b6001600160a01b038085165f908152600360205260408082205492861682529020549192509061452d821580159061449a57508161449784826153d6565b10155b801561450e575060405163ce2e91cf60e01b81526001600160a01b0385169063ce2e91cf906144cf908a908a906004016155e2565b602060405180830381865afa1580156144ea573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061450e919061581d565b604051806040016040528060018152602001602160f91b8152506137d6565b6001600160a01b0385165f9081526003602052604081208054849290614554908490615404565b90915550506001600160a01b0384165f90815260036020526040812080548492906145809084906153d6565b92505081905550836001600160a01b0316856001600160a01b03165f516020615f9a5f395f51905f52600185901c6040516145bd91815260200190565b60405180910390a3505050505050565b5f6146075f6001600160a01b0316846001600160a01b031614156040518060400160405280600281526020016126a960f11b8152506137d6565b5f836001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa158015614643573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261466a919081019061548a565b90505f6060816001600160201b600160401b600160601b845b88518110156149a2578a6001600160a01b03166356f9ca5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156146c8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906146ec919061544d565b6001600160a01b031663bffbe61c8a838151811061470c5761470c6155b6565b60200260200101516040518263ffffffff1660e01b81526004016147309190614de8565b602060405180830381865afa15801561474b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061476f9190615519565b97508a6001600160a01b03166356f9ca5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156147ad573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906147d1919061544d565b6001600160a01b031663828eab0e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561480c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614830919061544d565b6001600160a01b031663691f3431896040518263ffffffff1660e01b815260040161485d91815260200190565b5f60405180830381865afa158015614877573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261489e9190810190615649565b9650601f81111580156148b057508715155b156148c2576148bf82876153d6565b95505b5f6148cc88614b22565b1180156148d95750602081105b15614966576148e885876153d6565b95506149138b886040518060400160405280600681526020016530bb30ba30b960d11b815250614c23565b156149255761492284876153d6565b95505b6149548b886040518060400160405280600c81526020016b1b5957dcdd185d195b595b9d60a21b815250614c23565b156149665761496383876153d6565b95505b614971856002615417565b945061497e846002615417565b935061498b836002615417565b9250614998826002615417565b9150600101614683565b50939a9950505050505050505050565b60408051600280825260608083018452925f929190602083019080368337505084519192505f9182915081905b80821015614b17575f8783815181106149fa576149fa6155b6565b01602001516001600160f81b0319169050601760f91b819003614a4a5782868581518110614a2a57614a2a6155b6565b60ff9092166020928302919091019091015283614a46816155ca565b9450505b600160ff1b6001600160f81b031982161015614a7257614a6b6001846153d6565b9250614b04565b600760fd1b6001600160f81b031982161015614a9357614a6b6002846153d6565b600f60fc1b6001600160f81b031982161015614ab457614a6b6003846153d6565b601f60fb1b6001600160f81b031982161015614ad557614a6b6004846153d6565b603f60fa1b6001600160f81b031982161015614af657614a6b6005846153d6565b614b016006846153d6565b92505b5083614b0f816155ca565b9450506149df565b509295945050505050565b80515f90819081905b80821015614c1a575f858381518110614b4657614b466155b6565b01602001516001600160f81b0319169050600160ff1b811015614b7557614b6e6001846153d6565b9250614c07565b600760fd1b6001600160f81b031982161015614b9657614b6e6002846153d6565b600f60fc1b6001600160f81b031982161015614bb757614b6e6003846153d6565b601f60fb1b6001600160f81b031982161015614bd857614b6e6004846153d6565b603f60fa1b6001600160f81b031982161015614bf957614b6e6005846153d6565b614c046006846153d6565b92505b5082614c12816155ca565b935050614b2b565b50909392505050565b5f5f846001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614c61573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614c85919061544d565b6001600160a01b03166359d1d43c614c9d86886141fa565b856040518363ffffffff1660e01b8152600401614cbb92919061597c565b5f60405180830381865afa158015614cd5573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052614cfc9190810190615649565b5111949350505050565b6106058061599583390190565b6001600160a01b0381168114610c0a575f5ffd5b5f5f60408385031215614d38575f5ffd5b8235614d4381614d13565b946020939093013593505050565b5f5f60408385031215614d62575f5ffd5b50508035926020909101359150565b5f5f5f60608486031215614d83575f5ffd5b8335614d8e81614d13565b92506020840135614d9e81614d13565b929592945050506040919091013590565b5f60208284031215614dbf575f5ffd5b5035919050565b5f60208284031215614dd6575f5ffd5b8135614de181614d13565b9392505050565b6001600160a01b0391909116815260200190565b5f5f60408385031215614e0d575f5ffd5b823591506020830135614e1f81614d13565b809150509250929050565b5f8151808452602084019350602083015f5b82811015614e5a578151865260209586019590910190600101614e3c565b5093949350505050565b602081525f614de16020830184614e2a565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f614de16020830184614e76565b5f8151808452602084019350602083015f5b82811015614e5a5781516001600160a01b0316865260209586019590910190600101614ec8565b606081525f614f016060830186614e2a565b8281036020840152614f138186614eb6565b90508281036040840152614f278185614e2a565b9695505050505050565b5f5f5f5f5f60a08688031215614f45575f5ffd5b8535614f5081614d13565b94506020860135935060408601359250606086013591506080860135614f7581614d13565b809150509295509295909350565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b0381118282101715614fbf57614fbf614f83565b604052919050565b5f6001600160401b03821115614fdf57614fdf614f83565b50601f01601f191660200190565b5f614fff614ffa84614fc7565b614f97565b9050828152838383011115615012575f5ffd5b828260208301375f602084830101529392505050565b5f5f5f6060848603121561503a575f5ffd5b83356001600160401b0381111561504f575f5ffd5b8401601f8101861361505f575f5ffd5b61506e86823560208401614fed565b9660208601359650604090950135949350505050565b5f5f60208385031215615095575f5ffd5b82356001600160401b038111156150aa575f5ffd5b8301601f810185136150ba575f5ffd5b80356001600160401b038111156150cf575f5ffd5b8560208260051b84010111156150e3575f5ffd5b6020919091019590945092505050565b5f5f5f5f60808587031215615106575f5ffd5b8435935060208501359250604085013561511f81614d13565b915060608501356001600160401b03811115615139575f5ffd5b8501601f81018713615149575f5ffd5b61515887823560208401614fed565b91505092959194509250565b5f5f5f60608486031215615176575f5ffd5b83359250602084013561518881614d13565b9150604084013561519881614d13565b809150509250925092565b5f5f604083850312156151b4575f5ffd5b82356151bf81614d13565b91506020830135614e1f81614d13565b5f5f5f606084860312156151e1575f5ffd5b8335925060208401359150604084013561519881614d13565b6001600160a01b0386811682528516602082015260a0604082018190525f9061522590830186614e76565b82810360608401526152378186614e76565b9050828103608084015261524b8185614eb6565b98975050505050505050565b5f5f83601f840112615267575f5ffd5b5081356001600160401b0381111561527d575f5ffd5b6020830191508360208285010111156141f3575f5ffd5b5f5f5f5f5f5f60a087890312156152a9575f5ffd5b86356152b481614d13565b955060208701356152c481614d13565b9450604087013593506060870135925060808701356001600160401b038111156152ec575f5ffd5b6152f889828a01615257565b979a9699509497509295939492505050565b5f5f5f5f6060858703121561531d575f5ffd5b84356001600160401b03811115615332575f5ffd5b61533e87828801615257565b909550935050602085013561535281614d13565b9396929550929360400135925050565b60a081525f61537460a0830188614e2a565b82810360208401526153868188614e76565b9050828103604084015261539a8187614eb6565b905082810360608401526153ae8186614e2a565b9050828103608084015261524b8185614e76565b634e487b7160e01b5f52601160045260245ffd5b80820180821115611386576113866153c2565b6020808252600190820152603960f91b604082015260600190565b81810381811115611386576113866153c2565b8082028115828204841417611386576113866153c2565b5f8261544857634e487b7160e01b5f52601260045260245ffd5b500490565b5f6020828403121561545d575f5ffd5b8151614de181614d13565b5f6001600160401b0382111561548057615480614f83565b5060051b60200190565b5f6020828403121561549a575f5ffd5b81516001600160401b038111156154af575f5ffd5b8201601f810184136154bf575f5ffd5b80516154cd614ffa82615468565b8082825260208201915060208360051b8501019250868311156154ee575f5ffd5b6020840193505b82841015614f2757835161550881614d13565b8252602093840193909101906154f5565b5f60208284031215615529575f5ffd5b5051919050565b5f60208284031215615540575f5ffd5b81516001600160401b03811115615555575f5ffd5b8201601f81018413615565575f5ffd5b8051615573614ffa82615468565b8082825260208201915060208360051b850101925086831115615594575f5ffd5b6020840193505b82841015614f2757835182526020938401939091019061559b565b634e487b7160e01b5f52603260045260245ffd5b5f600182016155db576155db6153c2565b5060010190565b9182526001600160a01b0316602082015260400190565b6001600160a01b0392831681529116602082015260400190565b5f615620614ffa84614fc7565b9050828152838383011115615633575f5ffd5b8282602083015e5f602084830101529392505050565b5f60208284031215615659575f5ffd5b81516001600160401b0381111561566e575f5ffd5b8201601f8101841361567e575f5ffd5b61568d84825160208401615613565b949350505050565b5f81518060208401855e5f93019283525090919050565b6b1c1c184b9d5b99dc985d995b60a21b81525f614de1600c830184615695565b6001600160a01b03841681526060602082018190525f906156ef90830185614e76565b905060018060a01b0383166040830152949350505050565b5f82601f830112615716575f5ffd5b614de183835160208501615613565b5f5f60408385031215615736575f5ffd5b825160208401519092506001600160401b03811115615753575f5ffd5b61575f85828601615707565b9150509250929050565b60408152826040820152828460608301375f606084830101525f6060601f19601f8601168301019050826020830152949350505050565b5f5f5f5f5f60a086880312156157b4575f5ffd5b855160208701519095506157c781614d13565b60408701519094506157d881614d13565b60608701519093506157e981614d13565b60808701519092506001600160401b03811115615804575f5ffd5b61581088828901615707565b9150509295509295909350565b5f6020828403121561582d575f5ffd5b81518015158114614de1575f5ffd5b5f614de18284615695565b5f81615855576158556153c2565b505f190190565b6001815b60018411156158975780850481111561587b5761587b6153c2565b600184161561588957908102905b60019390931c928002615860565b935093915050565b5f826158ad57506001611386565b816158b957505f611386565b81600181146158cf57600281146158d9576158f5565b6001915050611386565b60ff8411156158ea576158ea6153c2565b50506001821b611386565b5060208310610133831016604e8410600b8410161715615918575081810a611386565b6159245f19848461585c565b805f1904821115615937576159376153c2565b029392505050565b5f614de1838361589f565b60ff8181168382160190811115611386576113866153c2565b60ff8281168282160390811115611386576113866153c2565b828152604060208201525f61568d6040830184614e7656fe60c060405260015f5560405161060538038061060583398101604081905261002691610202565b6001600160a01b0383161580159061004657506001600160a01b03811615155b610052576100526102d5565b6001600160a01b0383166080526040805163530ca43760e11b81529051339163a619486e9160048083019260209291908290030181865afa158015610099573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100bd91906102e9565b6001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100f8573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061011c91906102e9565b6001600160a01b031660a05260405130907f1ba71f9564fde2683a8a8cdc86fb4d2710c19374a52c8719412dee7270841d84905f90a260405163c47f002760e01b81526001600160a01b0382169063c47f00279061017e90859060040161030b565b6020604051808303815f875af115801561019a573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101be9190610340565b50505050610357565b6001600160a01b03811681146101db575f5ffd5b50565b634e487b7160e01b5f52604160045260245ffd5b80516101fd816101c7565b919050565b5f5f5f60608486031215610214575f5ffd5b835161021f816101c7565b60208501519093506001600160401b0381111561023a575f5ffd5b8401601f8101861361024a575f5ffd5b80516001600160401b03811115610263576102636101de565b604051601f8201601f19908116603f011681016001600160401b0381118282101715610291576102916101de565b6040528181528282016020018810156102a8575f5ffd5b8160208401602083015e5f602083830101528094505050506102cc604085016101f2565b90509250925092565b634e487b7160e01b5f52600160045260245ffd5b5f602082840312156102f9575f5ffd5b8151610304816101c7565b9392505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f60208284031215610350575f5ffd5b5051919050565b60805160a05161028861037d5f395f60bb01525f8181604e01526101bd01526102885ff3fe608060405260043610610020575f3560e01c8063b9a0cbe8146101ac575f5ffd5b366101a85760015f5f828254610036919061020f565b90915550505f543415610172573a6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166108fc61007e8362099e18610228565b610088903461023f565b6040518115909202915f818181858888f193505050501580156100ad573d5f5f3e3d5ffd5b506040516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016904780156108fc02915f818181858888f19350505050158015610100573d5f5f3e3d5ffd5b5047156101385760405162461bcd60e51b81526020600482015260016024820152600760fc1b60448201526064015b60405180910390fd5b604080513381523460208201527f927ab32c68a90a4cf460f95be1736eb7d1e77681f3320c240f853ca95ee2827f910160405180910390a1505b5f5481146101a65760405162461bcd60e51b81526020600482015260016024820152603960f91b604482015260640161012f565b005b5f5ffd5b3480156101b7575f5ffd5b506101df7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b634e487b7160e01b5f52601160045260245ffd5b80820180821115610222576102226101fb565b92915050565b8082028115828204841417610222576102226101fb565b81810381811115610222576102226101fb56fecborAuxdataa264697066735822122064928b05b4d925f87cb868061e49b934ac9e72e96d9b5ba3c65cc9d4a4e442e164736f6c634300081e0033eventSignatureddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efcborAuxdataa2646970667358221220a9f026dbb50ed1645deb96996dcaa11555de19272f0600064c7d17ed8f589f7f64736f6c634300081e0033constructorArguments546f6b656e4d6173746572436f6e747261637400000000000000000000000000000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d8263300000000000000000000000026ad7d224352464387375f3debaa88233eec4a9a

CBOR Auxdata

These values are what Sourcify extracted from the recompiled bytecode. If these values are different in the on-chain bytecode, they will show up in Transformations section.

CBOR Auxdata id: 1

View on IPFS Logo
Solidity metadata.json IPFS hash: QmYYbMCi8HwdgtebKxNU8HpAkqyyKAETBRvT8bbsanMnvs
RawDecoded
Length: 53 bytes
0xa264697066735822122097a40a12497590984cd084cb9ee6ef5565d18f8c78b9a4f33034e71896c4c19864736f6c634300081e0033

CBOR Auxdata id: 2

View on IPFS Logo
Solidity metadata.json IPFS hash: QmUuKot7caWpbChMtEfr9QdbLTUZy2ebsCZKPbzNupoX5j
RawDecoded
Length: 53 bytes
0xa26469706673582212206184eae0075dbaef10c61ba621914427b4b880bcda2ffee0b0590b659f2798aa64736f6c634300081e0033

Transformations

Constructor Arguments

RawDecoded
Length: 96 bytes
0x546f6b656e4d6173746572436f6e747261637400000000000000000000000000000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d8263300000000000000000000000026ad7d224352464387375f3debaa88233eec4a9a

CBOR Auxdata Transformations

Byte OffsetsLength (bytes)Values
2551154
Original (recompiled):0xa26469706673582212206184eae0075dbaef10c61ba621914427b4b880bcda2ffee0b0590b659f2798aa64736f6c634300081e0033
Transformed (onchain):0xa264697066735822122064928b05b4d925f87cb868061e49b934ac9e72e96d9b5ba3c65cc9d4a4e442e164736f6c634300081e0033
2559654
Original (recompiled):0xa264697066735822122097a40a12497590984cd084cb9ee6ef5565d18f8c78b9a4f33034e71896c4c19864736f6c634300081e0033
Transformed (onchain):0xa2646970667358221220a9f026dbb50ed1645deb96996dcaa11555de19272f0600064c7d17ed8f589f7f64736f6c634300081e0033

Runtime Bytecode

0x60806040526004361061018c575f3560e01c8063functionSignature4d16255d116100db578063functionSignature4d16255d146103df578063functionSignature54fd4d50146103f2578063functionSignature5a3b7e4214610408578063functionSignature5de5cbe414610436578063functionSignature6f48eb9014610449578063functionSignature70a0823114610468578063functionSignature8620410b1461049f578063functionSignature8963c0f8146104bf578063functionSignature8da5cb5b146104de578063functionSignature92399c04146104f2578063functionSignature95d89b4114610525578063functionSignature9b10778314610553578063functionSignatureb82b5a5814610572578063functionSignaturebdf0c7f614610591578063functionSignaturee1168ff9146105b0578063functionSignaturef23a6e61146105e0578063functionSignaturef730395514610625575f5ffd5b80614a01146101cf57806184f3146101f057806187111461020f578061b1841461022e578061b3ea14610236578061c77114610255578061e7f114610274578063functionSignature04e80e9014610293578063functionSignature0580cc69146102c1578063functionSignature06fdde03146102ed578063functionSignature18160ddd1461030e578063functionSignature2dda78e31461032e578063functionSignature2eddf9a21461035c578063functionSignature313ce5671461037b578063functionSignature323180cd14610396578063functionSignature4b750334146103a9578063functionSignature4cd1ad32146103c0575f5ffd5b366101cb57604080513381523460208201527feventSignaturee1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c910160405180910390a1005b5f5ffd5b3480156101da575f5ffd5b506101ee6101e9366004614d27565b610649565b005b3480156101fb575f5ffd5b506101ee61020a366004614d51565b6107a4565b34801561021a575f5ffd5b506101ee610229366004614d71565b61084d565b6101ee610a46565b348015610241575f5ffd5b506101ee610250366004614daf565b610c0d565b348015610260575f5ffd5b506101ee61026f366004614d27565b610d98565b34801561027f575f5ffd5b506101ee61028e366004614dc6565b610f04565b34801561029e575f5ffd5b505f546001600160a01b03165b6040516102b89190614de8565b60405180910390f35b3480156102cc575f5ffd5b506102e06102db366004614dfc565b610f9c565b6040516102b89190614e64565b3480156102f8575f5ffd5b5061030161138c565b6040516102b89190614ea4565b348015610319575f5ffd5b506307270e005b6040519081526020016102b8565b348015610339575f5ffd5b5061034d610348366004614daf565b61139e565b6040516102b893929190614eef565b348015610367575f5ffd5b506101ee610376366004614f31565b6116fc565b348015610386575f5ffd5b50604051600281526020016102b8565b6101ee6103a4366004614dfc565b611974565b3480156103b4575f5ffd5b5060025460d01c610320565b3480156103cb575f5ffd5b506103016103da366004615028565b611c04565b6101ee6103ed366004614dfc565b611c9b565b3480156103fd575f5ffd5b506301315484610320565b348015610413575f5ffd5b5060408051808201909152600681526504552432d32360d41b6020820152610301565b6101ee610444366004615084565b611e71565b348015610454575f5ffd5b506101ee6104633660046150f3565b61223e565b348015610473575f5ffd5b50610320610482366004614dc6565b6001600160a01b03165f9081526003602052604090205460011c90565b3480156104aa575f5ffd5b5061032060025460a01c65ffffffffffff1690565b3480156104ca575f5ffd5b506101ee6104d9366004615164565b6126fd565b3480156104e9575f5ffd5b506102ab612793565b3480156104fd575f5ffd5b506102ab7fimmutable000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d8263381565b348015610530575f5ffd5b5060408051808201909152600681526573686172657360d01b6020820152610301565b34801561055e575f5ffd5b5061032061056d3660046151a3565b6127a2565b34801561057d575f5ffd5b506101ee61058c3660046151cf565b61280f565b34801561059c575f5ffd5b506101ee6105ab366004615164565b612949565b3480156105bb575f5ffd5b506105cf6105ca366004614daf565b6129b1565b6040516102b89594939291906151fa565b3480156105eb575f5ffd5b5061060c6105fa366004615294565b63functionSignaturef23a6e6160e01b9695505050505050565b6040516001600160e01b031990911681526020016102b8565b61063861063336600461530a565b612d22565b6040516102b8959493929190615362565b600160055f82825461065b91906153d6565b9091555050600554826106ab6001600160a01b0382161580159061068c5750335f9081526003602052604090205415155b604051806040016040528060018152602001601560fa1b8152506137d6565b5f60035f336001600160a01b03166001600160a01b031681526020019081526020015f205490506106fc84600183901c1015604051806040016040528060018152602001603360f91b8152506137d6565b335f9081526004602090815260408083206001600160a01b03891684529091528120805486929061072e9084906153d6565b90915550506040518481526001600160a01b0386169033907feventSignature8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259060200160405180910390a35050600554811461079f5760405162461bcd60e51b8152600401610796906153e9565b60405180910390fd5b505050565b600160055f8282546107b691906153d6565b90915550506005546107fc6107c9612793565b6001600160a01b0316336001600160a01b031614604051806040016040528060018152602001602960f91b8152506137d6565b610804612793565b6001600160a01b031661081f60d085901b60a085901b6153d6565b61082991906153d6565b600255600554811461079f5760405162461bcd60e51b8152600401610796906153e9565b600160055f82825461085f91906153d6565b90915550506005546108726107c9612793565b6108b36001600160a01b0385161580159061068c57506001600160a01b0384161515604051806040016040528060018152602001601560fa1b8152506137d6565b6001600160a01b038084165f9081526003602090815260408083205493881683526004825280832033845290915290205460019190911c9061094b90841180159061091857506001600160a01b0386165f9081526003602052604090205460011c8411155b801561068c57508161092a85826153d6565b1015604051806040016040528060018152602001601560fa1b8152506137d6565b6001600160a01b0385165f9081526004602090815260408083203384529091528120805485929061097d908490615404565b90915550506001600160a01b0385165f9081526003602052604081208054600186901b92906109ad908490615404565b90915550506001600160a01b0384165f9081526003602052604081208054600186901b92906109dd9084906153d6565b92505081905550836001600160a01b0316856001600160a01b03165f516020615f9a5f395f51905f5285604051610a1691815260200190565b60405180910390a3506005548114610a405760405162461bcd60e51b8152600401610796906153e9565b50505050565b600160055f828254610a5891906153d6565b9091555050600554610aac610a6b6137f5565b80610a8d575033610a82610a7d61386b565b61399f565b6001600160a01b0316145b604051806040016040528060018152602001604f60f81b8152506137d6565b335f9081526003602052604090205460025460a01c65ffffffffffff16610af93415801590610ada57505f82115b604051806040016040528060018152602001607960f81b8152506137d6565b5f6103e882610b083483615417565b610b12919061542e565b610b1c919061542e565b305f90815260036020526040902054909150610b749060011c8211801590610b555750600184811c90610b529084901b826153d6565b10155b604051806040016040528060018152602001607160f81b8152506137d6565b305f9081526003602052604081208054600184901b9290610b96908490615404565b9091555050335f9081526003602052604081208054600184901b9290610bbd9084906153d6565b9091555050604051818152339030905f516020615f9a5f395f51905f529060200160405180910390a35050506005548114610c0a5760405162461bcd60e51b8152600401610796906153e9565b50565b600160055f828254610c1f91906153d6565b9091555050600554610c32610a6b6137f5565b335f9081526003602052604090205460025460d01c610c878415801590610c5857505f82115b8015610c68575084600184901c10155b604051806040016040528060018152602001606560f81b8152506137d6565b305f9081526003602052604090205460011c9150610cca82610ca986826153d6565b1015604051806040016040528060018152602001605160f81b8152506137d6565b335f9081526003602052604081208054600187901b9290610cec908490615404565b9091555050305f9081526003602052604081208054600187901b9290610d139084906153d6565b909155503390506108fc610d278387615417565b6040518115909202915f818181858888f19350505050158015610d4c573d5f5f3e3d5ffd5b50604051848152309033905f516020615f9a5f395f51905f529060200160405180910390a350506005548114610d945760405162461bcd60e51b8152600401610796906153e9565b5050565b600160055f828254610daa91906153d6565b909155505060055482610df96001600160a01b0382161580159061068c5750335f908152600360205260409020541515604051806040016040528060018152602001601560fa1b8152506137d6565b6001600160a01b0384165f9081526003602052604080822054338352912054600191821c91610e5c9082901c8611801590610e3d575082610e3a87826153d6565b10155b604051806040016040528060018152602001601d60fa1b8152506137d6565b335f9081526003602052604081208054600188901b9290610e7e908490615404565b90915550506001600160a01b0386165f9081526003602052604081208054600188901b9290610eae9084906153d6565b90915550506040518581526001600160a01b0387169033905f516020615f9a5f395f51905f529060200160405180910390a3505050600554811461079f5760405162461bcd60e51b8152600401610796906153e9565b600160055f828254610f1691906153d6565b9091555050600554610f296107c9612793565b6040805180820190915260018152605960f81b6020820152610f57906001600160a01b0384161515906137d6565b816001600160a01b03166001600160a01b031960025416610f7891906153d6565b6002556005548114610d945760405162461bcd60e51b8152600401610796906153e9565b604051631f29e98760e21b8152600481018390526060905f906001600160a01b03841690637ca7a61c90602401602060405180830381865afa158015610fe4573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611008919061544d565b604051631b5576df60e11b8152600481018690529091505f906001600160a01b038516906336aaedbe90602401602060405180830381865afa158015611050573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611074919061544d565b90505f826001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156110b2573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526110d9919081019061548a565b90505f815160026110ea9190615417565b90505f846001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa158015611129573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061114d9190615519565b90505f61115a82846153d6565b6001600160401b0381111561117157611171614f83565b60405190808252806020026020018201604052801561119a578160200160208202803683370190505b5090505f866001600160a01b03166327506f536040518163ffffffff1660e01b81526004015f60405180830381865afa1580156111d9573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526112009190810190615530565b90505f805b868181518110611217576112176155b6565b60200260200101519150816001600160a01b0316318482600261123a9190615417565b8151811061124a5761124a6155b6565b602090810291909101015260405163functionSignature70a0823160e01b81526001600160a01b0389169063functionSignature70a0823190611281908590600401614de8565b602060405180830381865afa15801561129c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112c09190615519565b846112cc836002615417565b6112d79060016153d6565b815181106112e7576112e76155b6565b6020908102919091010152806112fc816155ca565b915050865181106112055782515f0361132057839950505050505050505050611386565b505f5b828181518110611335576113356155b6565b602002602001015184878361134a91906153d6565b8151811061135a5761135a6155b6565b60209081029190910101528061136f816155ca565b915050825181106113235750919750505050505050505b92915050565b6060611399600154613a77565b905090565b60608060605f6113ac612793565b604051631f29e98760e21b8152600481018790529091505f906001600160a01b03831690637ca7a61c90602401602060405180830381865afa1580156113f4573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611418919061544d565b9050806001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa158015611455573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261147c919081019061548a565b60408051600a80825261016082019092529195505f91906020820161014080368337019050509050826001600160a01b0316815f815181106114c0576114c06155b6565b602002602001018181525050816001600160a01b0316816001815181106114e9576114e96155b6565b60200260200101818152505060028160028151811061150a5761150a6155b6565b60200260200101818152505065ffffffffffff60d06001600160d01b031960025416901c1681600381518110611542576115426155b6565b60200260200101818152505065ffffffffffff60a065ffffffffffff60a01b60025416901c168160048151811061157b5761157b6155b6565b602002602001018181525050600160035f306001600160a01b03166001600160a01b031681526020019081526020015f2054901c816005815181106115c2576115c26155b6565b602002602001018181525050600160035f846001600160a01b03166001600160a01b031681526020019081526020015f2054901c81600681518110611609576116096155b6565b602002602001018181525050600160fd1b5f1b600154175f1c81600781518110611635576116356155b6565b602002602001018181525050816001600160a01b0316318160088151811061165f5761165f6155b6565b602002602001018181525050478160098151811061167f5761167f6155b6565b602090810291909101015260405163functionSignature0580cc6960e01b8152309063functionSignature0580cc69906116af908a9087906004016155e2565b5f60405180830381865afa1580156116c9573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526116f09190810190615530565b90979496509450505050565b600160055f82825461170e91906153d6565b9091555050600554825f8061172283613c15565b909250905061175f6001600160a01b03831633148015611740575060015b604051806040016040528060018152602001601960fa1b8152506137d6565b335f90815260036020526040808220546001600160a01b038c16835291205460011c6117d6881580159061179757508a600184901c10155b80156117ac5750816117a98c826153d6565b10155b80156117b757505f8a115b604051806040016040528060018152602001603560f91b8152506137d6565b335f908152600360205260408120805460018d901b92906117f8908490615404565b90915550506001600160a01b038b165f908152600360205260408120805460018d901b92906118289084906153d6565b90915550506040518a81526001600160a01b038c169033905f516020615f9a5f395f51905f529060200160405180910390a35f61186489613c15565b9150506118708961399f565b604051600162d64b2b60e01b0319815260048101839052602481018c90526001600160a01b038a81166044830152919091169063ff29b4d5906064015f604051808303815f87803b1580156118c3575f5ffd5b505af11580156118d5573d5f5f3e3d5ffd5b505050505f6103e88c8c6103e86118ec9190615417565b6118f6919061542e565b611900919061542e565b6002549091506001600160a01b031660d061191c600a8461542e565b6119269084615404565b611935911b60a084901b6153d6565b61193f91906153d6565b60025550506005548614945061196c93505050505760405162461bcd60e51b8152600401610796906153e9565b505050505050565b600160055f82825461198691906153d6565b909155505060055481611aab6001600160a01b03821615801590611a8c5750816001600160a01b031663functionSignature8da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119e1573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a05919061544d565b6001600160a01b03165f5f9054906101000a90046001600160a01b03166001600160a01b031663functionSignature8da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a5d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a81919061544d565b6001600160a01b0316145b604051806040016040528060018152602001601160fa1b8152506137d6565b83611ad7611ab882613d3b565b604051806040016040528060018152602001605160f81b8152506137d6565b5f611ae0612793565b6001600160a01b0316637ca7a61c876040518263ffffffff1660e01b8152600401611b0d91815260200190565b602060405180830381865afa158015611b28573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b4c919061544d565b60405162900f0160e41b81529091506001600160a01b03821690630900f01090611b7a908890600401614de8565b5f604051808303815f87803b158015611b91575f5ffd5b505af1158015611ba3573d5f5f3e3d5ffd5b505050507feventSignature388eec974255b3b2d6e0eadca48a52c7a784df03983a9330992ad93604364a4e8186604051611bd89291906155f9565b60405180910390a1505050600554811461079f5760405162461bcd60e51b8152600401610796906153e9565b6060611c3884518385611c1791906153d6565b1115604051806040016040528060018152602001607360f81b8152506137d6565b816001600160401b03811115611c5057611c50614f83565b6040519080825280601f01601f191660200182016040528015611c7a576020820181803683370190505b50905060208082019085850101611c92828286614049565b50509392505050565b600160055f828254611cad91906153d6565b909155505060055481611d086001600160a01b03821615801590611a8c5750816001600160a01b031663functionSignature8da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119e1573d5f5f3e3d5ffd5b83611d15611ab882613d3b565b6040805180820190915260018152607560f81b6020820152611d43906001600160a01b0386161515906137d6565b5f611d4e86866140c5565b915050611de8856001600160a01b0316826001600160a01b031663a619486e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d9a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dbe919061544d565b6001600160a01b03161415604051806040016040528060018152602001605560f81b8152506137d6565b60405162900f0160e41b81526001600160a01b03821690630900f01090611e13908890600401614de8565b5f604051808303815f87803b158015611e2a575f5ffd5b505af1158015611e3c573d5f5f3e3d5ffd5b505050507feventSignaturec084247a97e67befd8ae74784369e08284d086017aa02d7c905f10483518a30d8186604051611bd89291906155f9565b600160055f828254611e8391906153d6565b9091555050600554600254611f2e90158015611f0f5750336001600160a01b0316336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ee0573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f04919061544d565b6001600160a01b0316145b604051806040016040528060018152602001602360f91b8152506137d6565b336001600160a01b031960d0611f4b600a655af3107a400061542e565b611f5b90655af3107a4000615404565b611f6e911b64016bcc41e960ae1b6153d6565b16611f7991906153d6565b600290815583908390611f8c9082615404565b818110611f9b57611f9b6155b6565b602002919091013560019081555f915084908490611fb99082615404565b818110611fc857611fc86155b6565b9050602002013590505f816001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa15801561200d573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612034919081019061548a565b90505f8080805b84818151811061204d5761204d6155b6565b602002602001015193506001600160601b03609f6001600160a01b03198b8b8581811061207c5761207c6155b6565b9050602002013516901c16925061210e835f141580156120b157506001600160a01b0385165f90815260036020526040902054155b80156120ef5750846001600160a01b03166001600160a01b038b8b858181106120dc576120dc6155b6565b90506020020135166001600160a01b0316145b604051806040016040528060018152602001601360fa1b8152506137d6565b61211883836153d6565b6001600160a01b0385165f818152600360205260408082208790555192945090915f516020615f9a5f395f51905f529061215990600188901c815260200190565b60405180910390a38061216b816155ca565b9150508451811061203b57612184630bebc20083615404565b9150612194826301312d00615404565b305f81815260036020526040812092909255905f516020615f9a5f395f51905f526121c6600186901c62989680615404565b60405190815260200160405180910390a36001600160a01b0386165f8181526003602090815260408083206301312d009055516298968081525f516020615f9a5f395f51905f52910160405180910390a3505050505050600554811461079f5760405162461bcd60e51b8152600401610796906153e9565b600160055f82825461225091906153d6565b9091555050600554845f612262612793565b6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561229d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122c1919061544d565b6001600160a01b0316633b3b57de6123676122da612793565b6001600160a01b0316632d5514326040518163ffffffff1660e01b81526004015f60405180830381865afa158015612314573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261233b9190810190615649565b60405160200161234b91906156ac565b604051602081830303815290604052612362612793565b6141fa565b6040518263ffffffff1660e01b815260040161238591815260200190565b602060405180830381865afa1580156123a0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123c4919061544d565b90505f6123d08361399f565b9050612544816001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa158015612411573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612435919061544d565b6001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa158015612470573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612494919061544d565b6001600160a01b0316336001600160a01b031614806124bb5750336001600160a01b038416145b801561252557505f826001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa1580156124ff573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125239190615519565b115b604051806040016040528060018152602001602b60f91b8152506137d6565b612588881580159061255557508715155b801561256957506001600160a01b03871615155b604051806040016040528060018152602001603b60f91b8152506137d6565b5f5f87875f5f9054906101000a90046001600160a01b03166001600160a01b031663functionSignature92399c046040518163ffffffff1660e01b8152600401602060405180830381865afa1580156125db573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125ff919061544d565b60405161260b90614d06565b612617939291906156cc565b6040518091039082f0905080158015612632573d5f5f3e3d5ffd5b50905061263e8961399f565b6001600160a01b03166302c6c86489836040518363ffffffff1660e01b815260040161266b9291906155e2565b5f604051808303815f87803b158015612682575f5ffd5b505af1158015612694573d5f5f3e3d5ffd5b505050507feventSignature9845bb4750fb95891db3b02ccd4220ad685ef1fa843d99032b0dba8a62ee5f3681886040516126c99291906155f9565b60405180910390a15050505060055481146126f65760405162461bcd60e51b8152600401610796906153e9565b5050505050565b600160055f82825461270f91906153d6565b909155505060055483612724611ab882613d3b565b6127666001600160a01b0385161580159061274757506001600160a01b03841615155b604051806040016040528060018152602001604760f81b8152506137d6565b6127718585856143f8565b506005548114610a405760405162461bcd60e51b8152600401610796906153e9565b6002546001600160a01b031690565b5f6127e46001600160a01b0384161580159061068c57506001600160a01b0383161515604051806040016040528060018152602001601560fa1b8152506137d6565b506001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b600160055f82825461282191906153d6565b9091555050600554835f8061283583613c15565b90925090506128716001600160a01b0383163314801561174057506001604051806040016040528060018152602001601960fa1b8152506137d6565b5f61287b8861399f565b90506128ca6001600160a01b0387161580159061289757508715155b80156128ab57506001600160a01b03821615155b604051806040016040528060018152602001603760f91b8152506137d6565b60405162b1b21960e21b81526001600160a01b038216906302c6c864906128f7908a908a906004016155e2565b5f604051808303815f87803b15801561290e575f5ffd5b505af1158015612920573d5f5f3e3d5ffd5b50505050505050506005548114610a405760405162461bcd60e51b8152600401610796906153e9565b600160055f82825461295b91906153d6565b909155505060055483612970611ab882613d3b565b6127666001600160a01b03851615801590610ada57506001600160a01b0384161515604051806040016040528060018152602001607960f81b8152506137d6565b5f5f60608060605f6129c1612793565b604051631f29e98760e21b8152600481018990529091505f906001600160a01b03831690637ca7a61c90602401602060405180830381865afa158015612a09573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a2d919061544d565b90505f826001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a6c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a90919061544d565b604051631101d5ab60e11b8152600481018b9052602060248201526001600160a01b039190911690632203ab56906044015f60405180830381865afa158015612adb573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612b029190810190615725565b9150505f836001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612b42573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b66919061544d565b604051631101d5ab60e11b8152600481018c9052608060248201526001600160a01b039190911690632203ab56906044015f60405180830381865afa158015612bb1573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612bd89190810190615725565b915050836001600160a01b0316633f15457f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c17573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c3b919061544d565b6001600160a01b03166302571be38b6040518263ffffffff1660e01b8152600401612c6891815260200190565b602060405180830381865afa158015612c83573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ca7919061544d565b838383866001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa158015612ce5573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612d0c919081019061548a565b939e929d50909b50995090975095505050505050565b6060808080806001600160a01b0387161580612daf5750866001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015612d75573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612d99919061544d565b6001600160a01b0316876001600160a01b031614155b15612e09575050604080515f808252606080830184526005602080850182815264677766632160d81b86880181905287518681529283019586526080830188529682019283529281019590955292965094509192506137cb565b5f5f5f5f5f8b6001600160a01b0316631e0c8b8d8f8f5f6040518463ffffffff1660e01b8152600401612e3e93929190615769565b5f604051808303815f875af1158015612e59573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612e8091908101906157a0565b60408051600f8082526102008201909252959a50939850919650945092505f9190602082016101e0803683370190505090508581600a81518110612ec657612ec66155b6565b602002602001018181525050846001600160a01b031681600b81518110612eef57612eef6155b6565b602002602001018181525050836001600160a01b031681600c81518110612f1857612f186155b6565b602002602001018181525050826001600160a01b031681600d81518110612f4157612f416155b6565b60209081029190910101526001600160a01b0385161580612f6957506001600160a01b038416155b80612f7c57506001600160a01b03851633145b15613032574681600e81518110612f9557612f956155b6565b6020026020010181815250505f8d6001600160a01b0316632d5514326040518163ffffffff1660e01b81526004015f60405180830381865afa158015612fdd573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526130049190810190615649565b604080515f80825260208201908152818301909252939d50939b5091995091975095506137cb945050505050565b6131078d6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613071573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613095919061544d565b6001600160a01b0316633b3b57de8e6040518263ffffffff1660e01b81526004016130c291815260200190565b602060405180830381865afa1580156130dd573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613101919061544d565b8e6145cd565b81600e8151811061311a5761311a6155b6565b602090810291909101015260405163functionSignature0580cc6960e01b8152309063functionSignature0580cc699061314a908f9087906004016155e2565b5f60405180830381865afa158015613164573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261318b9190810190615530565b97505f8d6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131ca573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131ee919061544d565b6001600160a01b0316633b3b57de8e6040518263ffffffff1660e01b815260040161321b91815260200190565b602060405180830381865afa158015613236573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061325a919061544d565b90506001600160a01b0381166132ac5750604080515f808252602082019081526080820183526004928201928352636777706360e01b6060830152929c50929a50919850965094506137cb9350505050565b806001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156132e7573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261330e919081019061548a565b9950806001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa15801561334c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613370919061544d565b6001600160a01b0316825f8151811061338b5761338b6155b6565b602002602001018181525050806001600160a01b0316826001815181106133b4576133b46155b6565b6020026020010181815250506002826002815181106133d5576133d56155b6565b602002602001018181525050846001600160a01b031663functionSignature4b7503346040518163ffffffff1660e01b8152600401602060405180830381865afa15801561341d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906134419190615519565b82600381518110613454576134546155b6565b602002602001018181525050846001600160a01b031663functionSignature8620410b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561349c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906134c09190615519565b826004815181106134d3576134d36155b6565b602090810291909101015260405163functionSignature70a0823160e01b81526001600160a01b0386169063functionSignature70a082319061350a903090600401614de8565b602060405180830381865afa158015613525573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135499190615519565b8260058151811061355c5761355c6155b6565b602090810291909101015260405163functionSignature70a0823160e01b81526001600160a01b0386169063functionSignature70a0823190613593908490600401614de8565b602060405180830381865afa1580156135ae573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135d29190615519565b826006815181106135e5576135e56155b6565b60200260200101818152505061365d856001600160a01b031663functionSignature06fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa15801561362f573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526136569190810190615649565b6020015190565b5f1c82600781518110613672576136726155b6565b602002602001018181525050806001600160a01b0316318260088151811061369c5761369c6155b6565b60200260200101818152505047826009815181106136bc576136bc6155b6565b602002602001018181525050505f5f8e6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613707573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061372b919061544d565b6001600160a01b0316632203ab568f60806040518363ffffffff1660e01b8152600401613762929190918252602082015260400190565b5f60405180830381865afa15801561377c573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526137a39190810190615725565b91509150816080146137bd57816137b9816155ca565b9250505b919b50919950955050505050505b945094509450945094565b808261079f5760405162461bcd60e51b81526004016107969190614ea4565b5f613801610a7d61386b565b6001600160a01b0316632b0891e9336040518263ffffffff1660e01b815260040161382c9190614de8565b602060405180830381865afa158015613847573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611399919061581d565b5f613874612793565b6001600160a01b0316635001f3b56040518163ffffffff1660e01b8152600401602060405180830381865afa1580156138af573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906138d3919061544d565b6001600160a01b031663ddf7fcb06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561390e573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906139329190615519565b60015461394490600160fd1b17613a77565b604051602001613954919061583c565b60405160208183030381529060405280519060200120604051602001613984929190918252602082015260400190565b60405160208183030381529060405280519060200120905090565b5f6139c8825f5f1b1415604051806040016040528060018152602001602d60f91b8152506137d6565b5f6139d1612793565b6001600160a01b0316637ca7a61c846040518263ffffffff1660e01b81526004016139fe91815260200190565b602060405180830381865afa158015613a19573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613a3d919061544d565b90506113865f6001600160a01b0316826001600160a01b03161415604051806040016040528060018152602001600b60fb1b8152506137d6565b6040805160208082528183019092526060915f91906020820181803683370190505090505f805b848260208110613ab057613ab06155b6565b1a60f81b6001600160f81b03191615613b0657848260208110613ad557613ad56155b6565b1a60f81b838381518110613aeb57613aeb6155b6565b60200101906001600160f81b03191690815f1a905350613b09565b50805b81613b13816155ca565b925050602082108015613b24575080155b613a9e575f816001600160401b03811115613b4157613b41614f83565b6040519080825280601f01601f191660200182016040528015613b6b576020820181803683370190505b5090505f92505b838381518110613b8457613b846155b6565b01602001516001600160f81b03191615613bde57838381518110613baa57613baa6155b6565b602001015160f81c60f81b818481518110613bc757613bc76155b6565b60200101906001600160f81b03191690815f1a9053505b81613be881615847565b9250508280613bf6906155ca565b935050602083108015613c0857505f82115b613b725795945050505050565b5f80600f60fc1b81613c268561399f565b90505f5f826001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa158015613c66573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613c8a9190615519565b90505b80613c9781615847565b604051631aae8f7360e11b8152600481018290529092506001600160a01b038516915063355d1ee690602401602060405180830381865afa158015613cde573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613d029190615519565b91505f81118015613d1257505f82115b8015613d2057508384831614155b613c8d576001600160a01b0391909116969095509350505050565b5f8115801590613ebc57507fimmutable000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d826336001600160a01b0316633f15457f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613da2573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613dc6919061544d565b6001600160a01b031663f79fe5387fimmutable000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d826336001600160a01b031663bffbe61c336040518263ffffffff1660e01b8152600401613e209190614de8565b602060405180830381865afa158015613e3b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613e5f9190615519565b6040518263ffffffff1660e01b8152600401613e7d91815260200190565b602060405180830381865afa158015613e98573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613ebc919061581d565b8015613f3f5750613ecb612793565b6001600160a01b0316336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015613f10573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f34919061544d565b6001600160a01b0316145b8015613fbd5750813363355d1ee6613f55612793565b6001600160a01b03166040518263ffffffff1660e01b8152600401613f7c91815260200190565b602060405180830381865afa158015613f97573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613fbb9190615519565b145b8015611386575033613fcd612793565b6001600160a01b031663deb931a2846040518263ffffffff1660e01b8152600401613ffa91815260200190565b602060405180830381865afa158015614015573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614039919061544d565b6001600160a01b03161492915050565b6020811061408157815183526140606020846153d6565b925061406d6020836153d6565b915061407a602082615404565b9050614049565b805f0361408d57505050565b5f600161409b836020615404565b6140a79061010061593f565b6140b19190615404565b925184518416931916929092179092525050565b5f5f5f6140d0612793565b604051631f29e98760e21b8152600481018790529091505f906001600160a01b03831690637ca7a61c90602401602060405180830381865afa158015614118573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061413c919061544d565b604051631b5576df60e11b8152600481018890529091505f906001600160a01b038416906336aaedbe90602401602060405180830381865afa158015614184573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906141a8919061544d565b90506141ec6001600160a01b038716158015906141cd57506001600160a01b03821630145b604051806040016040528060018152602001602760f91b8152506137d6565b9093509150505b9250929050565b5f5f826001600160a01b0316635001f3b56040518163ffffffff1660e01b8152600401602060405180830381865afa158015614238573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061425c919061544d565b6001600160a01b031663ddf7fcb06040518163ffffffff1660e01b8152600401602060405180830381865afa158015614297573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906142bb9190615519565b614353856142c8876149b2565b5f815181106142d9576142d96155b6565b602002602001015160016142ed919061594a565b60ff1660016142fb896149b2565b5f8151811061430c5761430c6155b6565b602002602001015161431d8a6149b2565b60018151811061432f5761432f6155b6565b60200260200101516143419190615963565b61434b9190615963565b60ff16611c04565b8051602091820120604051614372939201918252602082015260400190565b604051602081830303815290604052805190602001209050806143ba855f614399886149b2565b5f815181106143aa576143aa6155b6565b602002602001015160ff16611c04565b80516020918201206040516143d9939201918252602082015260400190565b6040516020818303038152906040528051906020012091505092915050565b5f336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015614435573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614459919061544d565b6001600160a01b038085165f908152600360205260408082205492861682529020549192509061452d821580159061449a57508161449784826153d6565b10155b801561450e575060405163ce2e91cf60e01b81526001600160a01b0385169063ce2e91cf906144cf908a908a906004016155e2565b602060405180830381865afa1580156144ea573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061450e919061581d565b604051806040016040528060018152602001602160f91b8152506137d6565b6001600160a01b0385165f9081526003602052604081208054849290614554908490615404565b90915550506001600160a01b0384165f90815260036020526040812080548492906145809084906153d6565b92505081905550836001600160a01b0316856001600160a01b03165f516020615f9a5f395f51905f52600185901c6040516145bd91815260200190565b60405180910390a3505050505050565b5f6146075f6001600160a01b0316846001600160a01b031614156040518060400160405280600281526020016126a960f11b8152506137d6565b5f836001600160a01b031663a0e67e2b6040518163ffffffff1660e01b81526004015f60405180830381865afa158015614643573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261466a919081019061548a565b90505f6060816001600160201b600160401b600160601b845b88518110156149a2578a6001600160a01b03166356f9ca5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156146c8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906146ec919061544d565b6001600160a01b031663bffbe61c8a838151811061470c5761470c6155b6565b60200260200101516040518263ffffffff1660e01b81526004016147309190614de8565b602060405180830381865afa15801561474b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061476f9190615519565b97508a6001600160a01b03166356f9ca5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156147ad573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906147d1919061544d565b6001600160a01b031663828eab0e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561480c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614830919061544d565b6001600160a01b031663691f3431896040518263ffffffff1660e01b815260040161485d91815260200190565b5f60405180830381865afa158015614877573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261489e9190810190615649565b9650601f81111580156148b057508715155b156148c2576148bf82876153d6565b95505b5f6148cc88614b22565b1180156148d95750602081105b15614966576148e885876153d6565b95506149138b886040518060400160405280600681526020016530bb30ba30b960d11b815250614c23565b156149255761492284876153d6565b95505b6149548b886040518060400160405280600c81526020016b1b5957dcdd185d195b595b9d60a21b815250614c23565b156149665761496383876153d6565b95505b614971856002615417565b945061497e846002615417565b935061498b836002615417565b9250614998826002615417565b9150600101614683565b50939a9950505050505050505050565b60408051600280825260608083018452925f929190602083019080368337505084519192505f9182915081905b80821015614b17575f8783815181106149fa576149fa6155b6565b01602001516001600160f81b0319169050601760f91b819003614a4a5782868581518110614a2a57614a2a6155b6565b60ff9092166020928302919091019091015283614a46816155ca565b9450505b600160ff1b6001600160f81b031982161015614a7257614a6b6001846153d6565b9250614b04565b600760fd1b6001600160f81b031982161015614a9357614a6b6002846153d6565b600f60fc1b6001600160f81b031982161015614ab457614a6b6003846153d6565b601f60fb1b6001600160f81b031982161015614ad557614a6b6004846153d6565b603f60fa1b6001600160f81b031982161015614af657614a6b6005846153d6565b614b016006846153d6565b92505b5083614b0f816155ca565b9450506149df565b509295945050505050565b80515f90819081905b80821015614c1a575f858381518110614b4657614b466155b6565b01602001516001600160f81b0319169050600160ff1b811015614b7557614b6e6001846153d6565b9250614c07565b600760fd1b6001600160f81b031982161015614b9657614b6e6002846153d6565b600f60fc1b6001600160f81b031982161015614bb757614b6e6003846153d6565b601f60fb1b6001600160f81b031982161015614bd857614b6e6004846153d6565b603f60fa1b6001600160f81b031982161015614bf957614b6e6005846153d6565b614c046006846153d6565b92505b5082614c12816155ca565b935050614b2b565b50909392505050565b5f5f846001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614c61573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614c85919061544d565b6001600160a01b03166359d1d43c614c9d86886141fa565b856040518363ffffffff1660e01b8152600401614cbb92919061597c565b5f60405180830381865afa158015614cd5573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052614cfc9190810190615649565b5111949350505050565b6106058061599583390190565b6001600160a01b0381168114610c0a575f5ffd5b5f5f60408385031215614d38575f5ffd5b8235614d4381614d13565b946020939093013593505050565b5f5f60408385031215614d62575f5ffd5b50508035926020909101359150565b5f5f5f60608486031215614d83575f5ffd5b8335614d8e81614d13565b92506020840135614d9e81614d13565b929592945050506040919091013590565b5f60208284031215614dbf575f5ffd5b5035919050565b5f60208284031215614dd6575f5ffd5b8135614de181614d13565b9392505050565b6001600160a01b0391909116815260200190565b5f5f60408385031215614e0d575f5ffd5b823591506020830135614e1f81614d13565b809150509250929050565b5f8151808452602084019350602083015f5b82811015614e5a578151865260209586019590910190600101614e3c565b5093949350505050565b602081525f614de16020830184614e2a565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f614de16020830184614e76565b5f8151808452602084019350602083015f5b82811015614e5a5781516001600160a01b0316865260209586019590910190600101614ec8565b606081525f614f016060830186614e2a565b8281036020840152614f138186614eb6565b90508281036040840152614f278185614e2a565b9695505050505050565b5f5f5f5f5f60a08688031215614f45575f5ffd5b8535614f5081614d13565b94506020860135935060408601359250606086013591506080860135614f7581614d13565b809150509295509295909350565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b0381118282101715614fbf57614fbf614f83565b604052919050565b5f6001600160401b03821115614fdf57614fdf614f83565b50601f01601f191660200190565b5f614fff614ffa84614fc7565b614f97565b9050828152838383011115615012575f5ffd5b828260208301375f602084830101529392505050565b5f5f5f6060848603121561503a575f5ffd5b83356001600160401b0381111561504f575f5ffd5b8401601f8101861361505f575f5ffd5b61506e86823560208401614fed565b9660208601359650604090950135949350505050565b5f5f60208385031215615095575f5ffd5b82356001600160401b038111156150aa575f5ffd5b8301601f810185136150ba575f5ffd5b80356001600160401b038111156150cf575f5ffd5b8560208260051b84010111156150e3575f5ffd5b6020919091019590945092505050565b5f5f5f5f60808587031215615106575f5ffd5b8435935060208501359250604085013561511f81614d13565b915060608501356001600160401b03811115615139575f5ffd5b8501601f81018713615149575f5ffd5b61515887823560208401614fed565b91505092959194509250565b5f5f5f60608486031215615176575f5ffd5b83359250602084013561518881614d13565b9150604084013561519881614d13565b809150509250925092565b5f5f604083850312156151b4575f5ffd5b82356151bf81614d13565b91506020830135614e1f81614d13565b5f5f5f606084860312156151e1575f5ffd5b8335925060208401359150604084013561519881614d13565b6001600160a01b0386811682528516602082015260a0604082018190525f9061522590830186614e76565b82810360608401526152378186614e76565b9050828103608084015261524b8185614eb6565b98975050505050505050565b5f5f83601f840112615267575f5ffd5b5081356001600160401b0381111561527d575f5ffd5b6020830191508360208285010111156141f3575f5ffd5b5f5f5f5f5f5f60a087890312156152a9575f5ffd5b86356152b481614d13565b955060208701356152c481614d13565b9450604087013593506060870135925060808701356001600160401b038111156152ec575f5ffd5b6152f889828a01615257565b979a9699509497509295939492505050565b5f5f5f5f6060858703121561531d575f5ffd5b84356001600160401b03811115615332575f5ffd5b61533e87828801615257565b909550935050602085013561535281614d13565b9396929550929360400135925050565b60a081525f61537460a0830188614e2a565b82810360208401526153868188614e76565b9050828103604084015261539a8187614eb6565b905082810360608401526153ae8186614e2a565b9050828103608084015261524b8185614e76565b634e487b7160e01b5f52601160045260245ffd5b80820180821115611386576113866153c2565b6020808252600190820152603960f91b604082015260600190565b81810381811115611386576113866153c2565b8082028115828204841417611386576113866153c2565b5f8261544857634e487b7160e01b5f52601260045260245ffd5b500490565b5f6020828403121561545d575f5ffd5b8151614de181614d13565b5f6001600160401b0382111561548057615480614f83565b5060051b60200190565b5f6020828403121561549a575f5ffd5b81516001600160401b038111156154af575f5ffd5b8201601f810184136154bf575f5ffd5b80516154cd614ffa82615468565b8082825260208201915060208360051b8501019250868311156154ee575f5ffd5b6020840193505b82841015614f2757835161550881614d13565b8252602093840193909101906154f5565b5f60208284031215615529575f5ffd5b5051919050565b5f60208284031215615540575f5ffd5b81516001600160401b03811115615555575f5ffd5b8201601f81018413615565575f5ffd5b8051615573614ffa82615468565b8082825260208201915060208360051b850101925086831115615594575f5ffd5b6020840193505b82841015614f2757835182526020938401939091019061559b565b634e487b7160e01b5f52603260045260245ffd5b5f600182016155db576155db6153c2565b5060010190565b9182526001600160a01b0316602082015260400190565b6001600160a01b0392831681529116602082015260400190565b5f615620614ffa84614fc7565b9050828152838383011115615633575f5ffd5b8282602083015e5f602084830101529392505050565b5f60208284031215615659575f5ffd5b81516001600160401b0381111561566e575f5ffd5b8201601f8101841361567e575f5ffd5b61568d84825160208401615613565b949350505050565b5f81518060208401855e5f93019283525090919050565b6b1c1c184b9d5b99dc985d995b60a21b81525f614de1600c830184615695565b6001600160a01b03841681526060602082018190525f906156ef90830185614e76565b905060018060a01b0383166040830152949350505050565b5f82601f830112615716575f5ffd5b614de183835160208501615613565b5f5f60408385031215615736575f5ffd5b825160208401519092506001600160401b03811115615753575f5ffd5b61575f85828601615707565b9150509250929050565b60408152826040820152828460608301375f606084830101525f6060601f19601f8601168301019050826020830152949350505050565b5f5f5f5f5f60a086880312156157b4575f5ffd5b855160208701519095506157c781614d13565b60408701519094506157d881614d13565b60608701519093506157e981614d13565b60808701519092506001600160401b03811115615804575f5ffd5b61581088828901615707565b9150509295509295909350565b5f6020828403121561582d575f5ffd5b81518015158114614de1575f5ffd5b5f614de18284615695565b5f81615855576158556153c2565b505f190190565b6001815b60018411156158975780850481111561587b5761587b6153c2565b600184161561588957908102905b60019390931c928002615860565b935093915050565b5f826158ad57506001611386565b816158b957505f611386565b81600181146158cf57600281146158d9576158f5565b6001915050611386565b60ff8411156158ea576158ea6153c2565b50506001821b611386565b5060208310610133831016604e8410600b8410161715615918575081810a611386565b6159245f19848461585c565b805f1904821115615937576159376153c2565b029392505050565b5f614de1838361589f565b60ff8181168382160190811115611386576113866153c2565b60ff8281168282160390811115611386576113866153c2565b828152604060208201525f61568d6040830184614e7656fe60c060405260015f5560405161060538038061060583398101604081905261002691610202565b6001600160a01b0383161580159061004657506001600160a01b03811615155b610052576100526102d5565b6001600160a01b0383166080526040805163530ca43760e11b81529051339163a619486e9160048083019260209291908290030181865afa158015610099573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100bd91906102e9565b6001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100f8573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061011c91906102e9565b6001600160a01b031660a05260405130907f1ba71f9564fde2683a8a8cdc86fb4d2710c19374a52c8719412dee7270841d84905f90a260405163c47f002760e01b81526001600160a01b0382169063c47f00279061017e90859060040161030b565b6020604051808303815f875af115801561019a573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101be9190610340565b50505050610357565b6001600160a01b03811681146101db575f5ffd5b50565b634e487b7160e01b5f52604160045260245ffd5b80516101fd816101c7565b919050565b5f5f5f60608486031215610214575f5ffd5b835161021f816101c7565b60208501519093506001600160401b0381111561023a575f5ffd5b8401601f8101861361024a575f5ffd5b80516001600160401b03811115610263576102636101de565b604051601f8201601f19908116603f011681016001600160401b0381118282101715610291576102916101de565b6040528181528282016020018810156102a8575f5ffd5b8160208401602083015e5f602083830101528094505050506102cc604085016101f2565b90509250925092565b634e487b7160e01b5f52600160045260245ffd5b5f602082840312156102f9575f5ffd5b8151610304816101c7565b9392505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f60208284031215610350575f5ffd5b5051919050565b60805160a05161028861037d5f395f60bb01525f8181604e01526101bd01526102885ff3fe608060405260043610610020575f3560e01c8063b9a0cbe8146101ac575f5ffd5b366101a85760015f5f828254610036919061020f565b90915550505f543415610172573a6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166108fc61007e8362099e18610228565b610088903461023f565b6040518115909202915f818181858888f193505050501580156100ad573d5f5f3e3d5ffd5b506040516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016904780156108fc02915f818181858888f19350505050158015610100573d5f5f3e3d5ffd5b5047156101385760405162461bcd60e51b81526020600482015260016024820152600760fc1b60448201526064015b60405180910390fd5b604080513381523460208201527f927ab32c68a90a4cf460f95be1736eb7d1e77681f3320c240f853ca95ee2827f910160405180910390a1505b5f5481146101a65760405162461bcd60e51b81526020600482015260016024820152603960f91b604482015260640161012f565b005b5f5ffd5b3480156101b7575f5ffd5b506101df7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b634e487b7160e01b5f52601160045260245ffd5b80820180821115610222576102226101fb565b92915050565b8082028115828204841417610222576102226101fb565b81810381811115610222576102226101fb56fecborAuxdataa264697066735822122064928b05b4d925f87cb868061e49b934ac9e72e96d9b5ba3c65cc9d4a4e442e164736f6c634300081e0033eventSignatureddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efcborAuxdataa2646970667358221220a9f026dbb50ed1645deb96996dcaa11555de19272f0600064c7d17ed8f589f7f64736f6c634300081e0033

CBOR Auxdata

These values are what Sourcify extracted from the recompiled bytecode. If these values are different in the on-chain bytecode, they will show up in Transformations section.

CBOR Auxdata id: 1

View on IPFS Logo
Solidity metadata.json IPFS hash: QmYYbMCi8HwdgtebKxNU8HpAkqyyKAETBRvT8bbsanMnvs
RawDecoded
Length: 53 bytes
0xa264697066735822122097a40a12497590984cd084cb9ee6ef5565d18f8c78b9a4f33034e71896c4c19864736f6c634300081e0033

CBOR Auxdata id: 2

View on IPFS Logo
Solidity metadata.json IPFS hash: QmUuKot7caWpbChMtEfr9QdbLTUZy2ebsCZKPbzNupoX5j
RawDecoded
Length: 53 bytes
0xa26469706673582212206184eae0075dbaef10c61ba621914427b4b880bcda2ffee0b0590b659f2798aa64736f6c634300081e0033

Transformations

Immutable Transformations

IDValueOffsets
7620x000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d826331283, 15688, 15830

CBOR Auxdata Transformations

Byte OffsetsLength (bytes)Values
2442154
Original (recompiled):0xa26469706673582212206184eae0075dbaef10c61ba621914427b4b880bcda2ffee0b0590b659f2798aa64736f6c634300081e0033
Transformed (onchain):0xa264697066735822122064928b05b4d925f87cb868061e49b934ac9e72e96d9b5ba3c65cc9d4a4e442e164736f6c634300081e0033
2450654
Original (recompiled):0xa264697066735822122097a40a12497590984cd084cb9ee6ef5565d18f8c78b9a4f33034e71896c4c19864736f6c634300081e0033
Transformed (onchain):0xa2646970667358221220a9f026dbb50ed1645deb96996dcaa11555de19272f0600064c7d17ed8f589f7f64736f6c634300081e0033

Storage Layout

SlotOffsetBytesLabelTypeContract
0020masterCopyaddressTokenMaster2.sol:TokenMaster2
1032name32bytes32TokenMaster2.sol:TokenMaster2
2032ownerPricesuint256TokenMaster2.sol:TokenMaster2
3032balancesmapping(address ⇒ uint256)TokenMaster2.sol:TokenMaster2
4032allowedmapping(address ⇒ mapping(address ⇒ uint256))TokenMaster2.sol:TokenMaster2
5032_guardCounteruint256TokenMaster2.sol:TokenMaster2

Standard JSON Input

This isn't the original compiler JSON data. Generated for compatibility.

Loading...

Standard JSON Output

This isn't the original compiler JSON data. Generated for compatibility.

Loading...
0x1c576c8d038f48224dfe780108449a0ac828864a on Polygon Mainnet (137)