Sourcify Logosourcify.eth

0x10D32b459C7D64e3385531F3aB75845ee30ee3F9

on Linea (59144)

Match
Runtime Bytecode
Creation Bytecode
Contract Name
TokenMaster2
Compilation Target
TokenMaster2.sol:TokenMaster2
Language
Solidity
Compiler
solc 0.8.30+commit.73712a01
EVM Version
paris
Verified At
2025-10-02 07:08:21 UTC
Deployer
0x9F88d9B0b934A5261C364A726a9A36d67B431cAb
Deployment Transaction
0xd30c60adfd08563d95b93263f51ae727e53e5e95e7d1ca7fef0c360143493c0e
Block Number
23974954
Transaction Index
4

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

0x60a060405260016005556040516161dd3803806161dd83398101604081905261002791610236565b6040805180820190915260018152605360f81b6020820152610055906001600160a01b0384161515906101f1565b600183905560008054336001600160a01b0319918216811790925560d0610083600a655af3107a4000610290565b61009390655af3107a40006102b2565b6100a6911b64016bcc41e960ae1b6102cb565b166100b191906102cb565b6002556001600160a01b038083166080819052604080516316aa8a1960e11b81529051919263c47f00279290851691632d5514329160048083019260009291908290030181865afa15801561010a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101329190810190610318565b60405160200161014291906103ca565b6040516020818303038152906040526040518263ffffffff1660e01b815260040161016d919061040f565b6020604051808303816000875af115801561018c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101b09190610442565b50604080513381523060208201527feventSignature82488d8ab594db2178e4a45b7106aaa804836e608f001b5d7fcb6c3514730b3e910160405180910390a150505061045b565b80826102195760405162461bcd60e51b8152600401610210919061040f565b60405180910390fd5b505050565b6001600160a01b038116811461023357600080fd5b50565b60008060006060848603121561024b57600080fd5b8351602085015190935061025e8161021e565b604085015190925061026f8161021e565b809150509250925092565b634e487b7160e01b600052601160045260246000fd5b6000826102ad57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156102c5576102c561027a565b92915050565b808201808211156102c5576102c561027a565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561030f5781810151838201526020016102f7565b50506000910152565b60006020828403121561032a57600080fd5b81516001600160401b0381111561034057600080fd5b8201601f8101841361035157600080fd5b80516001600160401b0381111561036a5761036a6102de565b604051601f8201601f19908116603f011681016001600160401b0381118282101715610398576103986102de565b6040528181528282016020018610156103b057600080fd5b6103c18260208301602086016102f4565b95945050505050565b7f746f6b656e6d61737465722e756e67726176656c0000000000000000000000008152600082516104028160148501602087016102f4565b9190910160140192915050565b602081526000825180602084015261042e8160408501602087016102f4565b601f01601f19169190910160400192915050565b60006020828403121561045457600080fd5b5051919050565b608051615d596104846000396000818161055201528181613d5a0152613e010152615d596000f3fe6080604052600436106101d75760003560e01c8063functionSignature54fd4d5011610102578063functionSignature92399c0411610095578063functionSignaturebdf0c7f611610064578063functionSignaturebdf0c7f6146105e3578063functionSignaturee1168ff914610603578063functionSignaturef23a6e6114610634578063functionSignaturef73039551461067a57600080fd5b8063functionSignature92399c0414610540578063functionSignature95d89b4114610574578063functionSignature9b107783146105a3578063functionSignatureb82b5a58146105c357600080fd5b8063functionSignature70a08231116100d1578063functionSignature70a08231146104a8578063functionSignature8620410b146104e1578063functionSignature8963c0f814610502578063functionSignature8da5cb5b1461052257600080fd5b8063functionSignature54fd4d501461042f578063functionSignature5a3b7e4214610446578063functionSignature5de5cbe414610475578063functionSignature6f48eb901461048857600080fd5b8063functionSignature0580cc691161017a578063functionSignature2eddf9a211610149578063functionSignature2eddf9a2146103bb578063functionSignature313ce567146103db578063functionSignature4b750334146103f7578063functionSignature4cd1ad321461040f57600080fd5b8063functionSignature0580cc691461031c578063functionSignature06fdde0314610349578063functionSignature18160ddd1461036b578063functionSignature2dda78e31461038c57600080fd5b8061b3ea116101ae578061b3ea14610285578061c771146102a5578061e7f1146102c5578063functionSignature04e80e90146102e557600080fd5b80614a011461021b57806184f31461023d57806187111461025d578061b1841461027d57600080fd5b3661021657604080513381523460208201527feventSignaturee1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c910160405180910390a1005b600080fd5b34801561022757600080fd5b5061023b6102363660046149e9565b61069e565b005b34801561024957600080fd5b5061023b610258366004614a15565b6107ff565b34801561026957600080fd5b5061023b610278366004614a37565b6108ae565b61023b610ab8565b34801561029157600080fd5b5061023b6102a0366004614a78565b610c87565b3480156102b157600080fd5b5061023b6102c03660046149e9565b610e1c565b3480156102d157600080fd5b5061023b6102e0366004614a91565b610f8e565b3480156102f157600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b34801561032857600080fd5b5061033c610337366004614aae565b611031565b6040516103139190614b1a565b34801561035557600080fd5b5061035e611438565b6040516103139190614b7d565b34801561037757600080fd5b506307270e005b604051908152602001610313565b34801561039857600080fd5b506103ac6103a7366004614a78565b61144a565b60405161031393929190614bcb565b3480156103c757600080fd5b5061023b6103d6366004614c0e565b6117cf565b3480156103e757600080fd5b5060405160028152602001610313565b34801561040357600080fd5b5060025460d01c61037e565b34801561041b57600080fd5b5061035e61042a366004614d0f565b611a55565b34801561043b57600080fd5b50630131548461037e565b34801561045257600080fd5b5060408051808201909152600681526504552432d32360d41b602082015261035e565b61023b610483366004614d70565b611aed565b34801561049457600080fd5b5061023b6104a3366004614de5565b611ed2565b3480156104b457600080fd5b5061037e6104c3366004614a91565b6001600160a01b031660009081526003602052604090205460011c90565b3480156104ed57600080fd5b5061037e60025460a01c65ffffffffffff1690565b34801561050e57600080fd5b5061023b61051d366004614e5b565b6123da565b34801561052e57600080fd5b506002546001600160a01b03166102ff565b34801561054c57600080fd5b506102ff7f000000000000000000000000000000000000000000000000000000000000000081565b34801561058057600080fd5b5060408051808201909152600681526573686172657360d01b602082015261035e565b3480156105af57600080fd5b5061037e6105be366004614e9d565b612490565b3480156105cf57600080fd5b5061023b6105de366004614ecb565b6124ff565b3480156105ef57600080fd5b5061023b6105fe366004614e5b565b612643565b34801561060f57600080fd5b5061062361061e366004614a78565b6126ac565b604051610313959493929190614ef9565b34801561064057600080fd5b5061066161064f366004614f9f565b63functionSignaturef23a6e6160e01b9695505050505050565b6040516001600160e01b03199091168152602001610313565b61068d61068836600461501a565b612a42565b604051610313959493929190615076565b6001600560008282546106b191906150ed565b9091555050600554826107026001600160a01b038216158015906106e357503360009081526003602052604090205415155b604051806040016040528060018152602001601560fa1b815250613533565b600060036000336001600160a01b03166001600160a01b0316815260200190815260200160002054905061075684600183901c1015604051806040016040528060018152602001603360f91b815250613533565b3360009081526004602090815260408083206001600160a01b0389168452909152812080548692906107899084906150ed565b90915550506040518481526001600160a01b0386169033907feventSignature8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259060200160405180910390a3505060055481146107fa5760405162461bcd60e51b81526004016107f190615100565b60405180910390fd5b505050565b60016005600082825461081291906150ed565b909155505060055461086261082f6002546001600160a01b031690565b6001600160a01b0316336001600160a01b031614604051806040016040528060018152602001602960f91b815250613533565b6002546001600160a01b031661088060d085901b60a085901b6150ed565b61088a91906150ed565b60025560055481146107fa5760405162461bcd60e51b81526004016107f190615100565b6001600560008282546108c191906150ed565b90915550506005546108de61082f6002546001600160a01b031690565b61091f6001600160a01b038516158015906106e357506001600160a01b0384161515604051806040016040528060018152602001601560fa1b815250613533565b6001600160a01b0380841660009081526003602090815260408083205493881683526004825280832033845290915290205460019190911c906109b990841180159061098657506001600160a01b03861660009081526003602052604090205460011c8411155b80156106e357508161099885826150ed565b1015604051806040016040528060018152602001601560fa1b815250613533565b6001600160a01b0385166000908152600460209081526040808320338452909152812080548592906109ec90849061511b565b90915550506001600160a01b03851660009081526003602052604081208054600186901b9290610a1d90849061511b565b90915550506001600160a01b03841660009081526003602052604081208054600186901b9290610a4e9084906150ed565b92505081905550836001600160a01b0316856001600160a01b0316600080516020615d0483398151915285604051610a8891815260200190565b60405180910390a3506005548114610ab25760405162461bcd60e51b81526004016107f190615100565b50505050565b600160056000828254610acb91906150ed565b9091555050600554610b1f610ade613552565b80610b00575033610af5610af06135c9565b61370c565b6001600160a01b0316145b604051806040016040528060018152602001604f60f81b815250613533565b3360009081526003602052604090205460025460a01c65ffffffffffff16610b6e3415801590610b4f5750600082115b604051806040016040528060018152602001607960f81b815250613533565b60006103e882610b7e348361512e565b610b889190615145565b610b929190615145565b30600090815260036020526040902054909150610beb9060011c8211801590610bcc5750600184811c90610bc99084901b826150ed565b10155b604051806040016040528060018152602001607160f81b815250613533565b3060009081526003602052604081208054600184901b9290610c0e90849061511b565b90915550503360009081526003602052604081208054600184901b9290610c369084906150ed565b909155505060405181815233903090600080516020615d048339815191529060200160405180910390a35050506005548114610c845760405162461bcd60e51b81526004016107f190615100565b50565b600160056000828254610c9a91906150ed565b9091555050600554610cad610ade613552565b3360009081526003602052604090205460025460d01c610d048415801590610cd55750600082115b8015610ce5575084600184901c10155b604051806040016040528060018152602001606560f81b815250613533565b3060009081526003602052604090205460011c9150610d4882610d2786826150ed565b1015604051806040016040528060018152602001605160f81b815250613533565b3360009081526003602052604081208054600187901b9290610d6b90849061511b565b90915550503060009081526003602052604081208054600187901b9290610d939084906150ed565b909155503390506108fc610da7838761512e565b6040518115909202916000818181858888f19350505050158015610dcf573d6000803e3d6000fd5b5060405184815230903390600080516020615d048339815191529060200160405180910390a350506005548114610e185760405162461bcd60e51b81526004016107f190615100565b5050565b600160056000828254610e2f91906150ed565b909155505060055482610e7f6001600160a01b038216158015906106e35750336000908152600360205260409020541515604051806040016040528060018152602001601560fa1b815250613533565b6001600160a01b03841660009081526003602052604080822054338352912054600191821c91610ee39082901c8611801590610ec4575082610ec187826150ed565b10155b604051806040016040528060018152602001601d60fa1b815250613533565b3360009081526003602052604081208054600188901b9290610f0690849061511b565b90915550506001600160a01b03861660009081526003602052604081208054600188901b9290610f379084906150ed565b90915550506040518581526001600160a01b038716903390600080516020615d048339815191529060200160405180910390a350505060055481146107fa5760405162461bcd60e51b81526004016107f190615100565b600160056000828254610fa191906150ed565b9091555050600554610fbe61082f6002546001600160a01b031690565b6040805180820190915260018152605960f81b6020820152610fec906001600160a01b038416151590613533565b816001600160a01b03166001600160a01b03196002541661100d91906150ed565b6002556005548114610e185760405162461bcd60e51b81526004016107f190615100565b604051631f29e98760e21b8152600481018390526060906000906001600160a01b03841690637ca7a61c90602401602060405180830381865afa15801561107c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a09190615167565b604051631b5576df60e11b8152600481018690529091506000906001600160a01b038516906336aaedbe90602401602060405180830381865afa1580156110eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110f9190615167565b90506000826001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611151573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261117991908101906151a7565b905060008151600261118b919061512e565b90506000846001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f1919061523b565b905060006111ff82846150ed565b6001600160401b0381111561121657611216614c64565b60405190808252806020026020018201604052801561123f578160200160208202803683370190505b5090506000866001600160a01b03166327506f536040518163ffffffff1660e01b8152600401600060405180830381865afa158015611282573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112aa9190810190615254565b90506000805b8681815181106112c2576112c26152df565b60200260200101519150816001600160a01b031631848260026112e5919061512e565b815181106112f5576112f56152df565b602090810291909101015260405163functionSignature70a0823160e01b81526001600160a01b03838116600483015289169063functionSignature70a0823190602401602060405180830381865afa158015611346573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061136a919061523b565b8461137683600261512e565b6113819060016150ed565b81518110611391576113916152df565b6020908102919091010152806113a6816152f5565b915050865181106112b05782516000036113cb57839950505050505050505050611432565b5060005b8281815181106113e1576113e16152df565b60200260200101518487836113f691906150ed565b81518110611406576114066152df565b60209081029190910101528061141b816152f5565b915050825181106113cf5750919750505050505050505b92915050565b60606114456001546137f4565b905090565b606080606060006114636002546001600160a01b031690565b604051631f29e98760e21b8152600481018790529091506000906001600160a01b03831690637ca7a61c90602401602060405180830381865afa1580156114ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d29190615167565b9050806001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611512573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261153a91908101906151a7565b60408051600a8082526101608201909252919550600091906020820161014080368337019050509050826001600160a01b031681600081518110611580576115806152df565b602002602001018181525050816001600160a01b0316816001815181106115a9576115a96152df565b6020026020010181815250506002816002815181106115ca576115ca6152df565b60200260200101818152505065ffffffffffff60d06001600160d01b031960025416901c1681600381518110611602576116026152df565b60200260200101818152505065ffffffffffff60a065ffffffffffff60a01b60025416901c168160048151811061163b5761163b6152df565b602002602001018181525050600160036000306001600160a01b03166001600160a01b0316815260200190815260200160002054901c81600581518110611684576116846152df565b602002602001018181525050600160036000846001600160a01b03166001600160a01b0316815260200190815260200160002054901c816006815181106116cd576116cd6152df565b602002602001018181525050600160fd1b60001b6001541760001c816007815181106116fb576116fb6152df565b602002602001018181525050816001600160a01b03163181600881518110611725576117256152df565b6020026020010181815250504781600981518110611745576117456152df565b602090810291909101015260405163functionSignature0580cc6960e01b8152600481018890526001600160a01b0384166024820152309063functionSignature0580cc6990604401600060405180830381865afa15801561179b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526117c39190810190615254565b90979496509450505050565b6001600560008282546117e291906150ed565b9091555050600554826000806117f783613999565b90925090506118346001600160a01b03831633148015611815575060015b604051806040016040528060018152602001601960fa1b815250613533565b33600090815260036020526040808220546001600160a01b038c16835291205460011c6118ad881580159061186d57508a600184901c10155b801561188257508161187f8c826150ed565b10155b801561188e575060008a115b604051806040016040528060018152602001603560f91b815250613533565b336000908152600360205260408120805460018d901b92906118d090849061511b565b90915550506001600160a01b038b166000908152600360205260408120805460018d901b92906119019084906150ed565b90915550506040518a81526001600160a01b038c16903390600080516020615d048339815191529060200160405180910390a3600061193f89613999565b91505061194b8961370c565b604051600162d64b2b60e01b0319815260048101839052602481018c90526001600160a01b038a81166044830152919091169063ff29b4d590606401600060405180830381600087803b1580156119a157600080fd5b505af11580156119b5573d6000803e3d6000fd5b5050505060006103e88c8c6103e86119cd919061512e565b6119d79190615145565b6119e19190615145565b6002549091506001600160a01b031660d06119fd600a84615145565b611a07908461511b565b611a16911b60a084901b6150ed565b611a2091906150ed565b600255505060055486149450611a4d93505050505760405162461bcd60e51b81526004016107f190615100565b505050505050565b6060611a8984518385611a6891906150ed565b1115604051806040016040528060018152602001607360f81b815250613533565b816001600160401b03811115611aa157611aa1614c64565b6040519080825280601f01601f191660200182016040528015611acb576020820181803683370190505b50905060208082019085850101611ae3828286613ac7565b50505b9392505050565b600160056000828254611b0091906150ed565b9091555050600554600254611bad90158015611b8e5750336001600160a01b0316336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b839190615167565b6001600160a01b0316145b604051806040016040528060018152602001602360f91b815250613533565b336001600160a01b031960d0611bca600a655af3107a4000615145565b611bda90655af3107a400061511b565b611bed911b64016bcc41e960ae1b6150ed565b16611bf891906150ed565b600290815583908390611c0b908261511b565b818110611c1a57611c1a6152df565b602002919091013560019081556000915084908490611c39908261511b565b818110611c4857611c486152df565b9050602002013590506000816001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611c91573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611cb991908101906151a7565b90506000806000805b848181518110611cd457611cd46152df565b602002602001015193506bffffffffffffffffffffffff609f6001600160a01b03198b8b85818110611d0857611d086152df565b9050602002013516901c169250611d9c83600014158015611d3f57506001600160a01b038516600090815260036020526040902054155b8015611d7d5750846001600160a01b03166001600160a01b038b8b85818110611d6a57611d6a6152df565b90506020020135166001600160a01b0316145b604051806040016040528060018152602001601360fa1b815250613533565b611da683836150ed565b6001600160a01b038516600081815260036020526040808220879055519294509091600080516020615d0483398151915290611de990600188901c815260200190565b60405180910390a380611dfb816152f5565b91505084518110611cc257611e14630bebc2008361511b565b9150611e24826301312d0061511b565b3060008181526003602052604081209290925590600080516020615d04833981519152611e58600186901c6298968061511b565b60405190815260200160405180910390a36001600160a01b03861660008181526003602090815260408083206301312d00905551629896808152600080516020615d04833981519152910160405180910390a350505050505060055481146107fa5760405162461bcd60e51b81526004016107f190615100565b600160056000828254611ee591906150ed565b9091555050600554846000611f026002546001600160a01b031690565b6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f3f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f639190615167565b6001600160a01b0316633b3b57de612021611f866002546001600160a01b031690565b6001600160a01b0316632d5514326040518163ffffffff1660e01b8152600401600060405180830381865afa158015611fc3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611feb919081019061533e565b604051602001611ffb919061538e565b60405160208183030381529060405261201c6002546001600160a01b031690565b613b45565b6040518263ffffffff1660e01b815260040161203f91815260200190565b602060405180830381865afa15801561205c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120809190615167565b9050600061208d8361370c565b9050612208816001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120f49190615167565b6001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa158015612131573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121559190615167565b6001600160a01b0316336001600160a01b0316148061217c5750336001600160a01b038416145b80156121e957506000826001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121e7919061523b565b115b604051806040016040528060018152602001602b60f91b815250613533565b61224c881580159061221957508715155b801561222d57506001600160a01b03871615155b604051806040016040528060018152602001603b60f91b815250613533565b600080878760008054906101000a90046001600160a01b03166001600160a01b031663functionSignature92399c046040518163ffffffff1660e01b8152600401602060405180830381865afa1580156122a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122c69190615167565b6040516122d2906149c7565b6122de939291906153c2565b6040518091039082f09050801580156122fb573d6000803e3d6000fd5b5090506123078961370c565b60405162b1b21960e21b8152600481018a90526001600160a01b03838116602483015291909116906302c6c86490604401600060405180830381600087803b15801561235257600080fd5b505af1158015612366573d6000803e3d6000fd5b5050604080516001600160a01b0380861682528b1660208201527feventSignature9845bb4750fb95891db3b02ccd4220ad685ef1fa843d99032b0dba8a62ee5f36935001905060405180910390a15050505060055481146123d35760405162461bcd60e51b81526004016107f190615100565b5050505050565b6001600560008282546123ed91906150ed565b90915550506005548361242161240282613d4c565b604051806040016040528060018152602001605160f81b815250613533565b6124636001600160a01b0385161580159061244457506001600160a01b03841615155b604051806040016040528060018152602001604760f81b815250613533565b61246e858585614078565b506005548114610ab25760405162461bcd60e51b81526004016107f190615100565b60006124d36001600160a01b038416158015906106e357506001600160a01b0383161515604051806040016040528060018152602001601560fa1b815250613533565b506001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b60016005600082825461251291906150ed565b90915550506005548360008061252783613999565b90925090506125636001600160a01b0383163314801561181557506001604051806040016040528060018152602001601960fa1b815250613533565b600061256e8861370c565b90506125bd6001600160a01b0387161580159061258a57508715155b801561259e57506001600160a01b03821615155b604051806040016040528060018152602001603760f91b815250613533565b60405162b1b21960e21b8152600481018890526001600160a01b0387811660248301528216906302c6c86490604401600060405180830381600087803b15801561260657600080fd5b505af115801561261a573d6000803e3d6000fd5b50505050505050506005548114610ab25760405162461bcd60e51b81526004016107f190615100565b60016005600082825461265691906150ed565b90915550506005548361266b61240282613d4c565b6124636001600160a01b03851615801590610b4f57506001600160a01b0384161515604051806040016040528060018152602001607960f81b815250613533565b600080606080606060006126c86002546001600160a01b031690565b604051631f29e98760e21b8152600481018990529091506000906001600160a01b03831690637ca7a61c90602401602060405180830381865afa158015612713573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127379190615167565b90506000826001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612779573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061279d9190615167565b604051631101d5ab60e11b8152600481018b9052602060248201526001600160a01b039190911690632203ab5690604401600060405180830381865afa1580156127eb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612813919081019061541e565b9150506000836001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612856573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061287a9190615167565b604051631101d5ab60e11b8152600481018c9052608060248201526001600160a01b039190911690632203ab5690604401600060405180830381865afa1580156128c8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128f0919081019061541e565b915050836001600160a01b0316633f15457f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612931573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129559190615167565b6001600160a01b03166302571be38b6040518263ffffffff1660e01b815260040161298291815260200190565b602060405180830381865afa15801561299f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129c39190615167565b838383866001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015612a04573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612a2c91908101906151a7565b939e929d50909b50995090975095505050505050565b6060808080806001600160a01b0387161580612ad15750866001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a97573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612abb9190615167565b6001600160a01b0316876001600160a01b031614155b15612b2c575050604080516000808252606080830184526005602080850182815264677766632160d81b8688018190528751868152928301958652608083018852968201928352928101959095529296509450919250613528565b60008060008060008b6001600160a01b0316631e0c8b8d8f8f60006040518463ffffffff1660e01b8152600401612b6593929190615465565b6000604051808303816000875af1158015612b84573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612bac919081019061549e565b60408051600f8082526102008201909252959a509398509196509450925060009190602082016101e0803683370190505090508581600a81518110612bf357612bf36152df565b602002602001018181525050846001600160a01b031681600b81518110612c1c57612c1c6152df565b602002602001018181525050836001600160a01b031681600c81518110612c4557612c456152df565b602002602001018181525050826001600160a01b031681600d81518110612c6e57612c6e6152df565b60209081029190910101526001600160a01b0385161580612c9657506001600160a01b038416155b80612ca957506001600160a01b03851633145b15612d65574681600e81518110612cc257612cc26152df565b60200260200101818152505060008d6001600160a01b0316632d5514326040518163ffffffff1660e01b8152600401600060405180830381865afa158015612d0e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612d36919081019061533e565b60408051600080825260208201908152818301909252939d50939b509199509197509550613528945050505050565b612e3e8d6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612da6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dca9190615167565b6001600160a01b0316633b3b57de8e6040518263ffffffff1660e01b8152600401612df791815260200190565b602060405180830381865afa158015612e14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e389190615167565b8e614258565b81600e81518110612e5157612e516152df565b602090810291909101015260405163functionSignature0580cc6960e01b8152600481018d90526001600160a01b0384166024820152309063functionSignature0580cc6990604401600060405180830381865afa158015612ea7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612ecf9190810190615254565b975060008d6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612f11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f359190615167565b6001600160a01b0316633b3b57de8e6040518263ffffffff1660e01b8152600401612f6291815260200190565b602060405180830381865afa158015612f7f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fa39190615167565b90506001600160a01b038116612ff65750604080516000808252602082019081526080820183526004928201928352636777706360e01b6060830152929c50929a50919850965094506135289350505050565b806001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015613034573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261305c91908101906151a7565b9950806001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa15801561309c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130c09190615167565b6001600160a01b0316826000815181106130dc576130dc6152df565b602002602001018181525050806001600160a01b031682600181518110613105576131056152df565b602002602001018181525050600282600281518110613126576131266152df565b602002602001018181525050846001600160a01b031663functionSignature4b7503346040518163ffffffff1660e01b8152600401602060405180830381865afa158015613170573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613194919061523b565b826003815181106131a7576131a76152df565b602002602001018181525050846001600160a01b031663functionSignature8620410b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131f1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613215919061523b565b82600481518110613228576132286152df565b602090810291909101015260405163functionSignature70a0823160e01b81523060048201526001600160a01b0386169063functionSignature70a0823190602401602060405180830381865afa158015613277573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061329b919061523b565b826005815181106132ae576132ae6152df565b602090810291909101015260405163functionSignature70a0823160e01b81526001600160a01b03828116600483015286169063functionSignature70a0823190602401602060405180830381865afa1580156132ff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613323919061523b565b82600681518110613336576133366152df565b6020026020010181815250506133b2856001600160a01b031663functionSignature06fdde036040518163ffffffff1660e01b8152600401600060405180830381865afa158015613383573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526133ab919081019061533e565b6020015190565b60001c826007815181106133c8576133c86152df565b602002602001018181525050806001600160a01b031631826008815181106133f2576133f26152df565b6020026020010181815250504782600981518110613412576134126152df565b602002602001018181525050506000808e6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613460573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134849190615167565b6001600160a01b0316632203ab568f60806040518363ffffffff1660e01b81526004016134bb929190918252602082015260400190565b600060405180830381865afa1580156134d8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613500919081019061541e565b915091508160801461351a5781613516816152f5565b9250505b919b50919950955050505050505b945094509450945094565b80826107fa5760405162461bcd60e51b81526004016107f19190614b7d565b600061355f610af06135c9565b604051632b0891e960e01b81523360048201526001600160a01b039190911690632b0891e990602401602060405180830381865afa1580156135a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114459190615520565b60006135dd6002546001600160a01b031690565b6001600160a01b0316635001f3b56040518163ffffffff1660e01b8152600401602060405180830381865afa15801561361a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061363e9190615167565b6001600160a01b031663ddf7fcb06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561367b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061369f919061523b565b6001546136b190600160fd1b176137f4565b6040516020016136c19190615542565b604051602081830303815290604052805190602001206040516020016136f1929190918252602082015260400190565b60405160208183030381529060405280519060200120905090565b6000613737826000801b1415604051806040016040528060018152602001602d60f91b815250613533565b600061374b6002546001600160a01b031690565b6001600160a01b0316637ca7a61c846040518263ffffffff1660e01b815260040161377891815260200190565b602060405180830381865afa158015613795573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137b99190615167565b905061143260006001600160a01b0316826001600160a01b03161415604051806040016040528060018152602001600b60fb1b815250613533565b604080516020808252818301909252606091600091906020820181803683370190505090506000805b84826020811061382f5761382f6152df565b1a60f81b6001600160f81b0319161561388657848260208110613854576138546152df565b1a60f81b83838151811061386a5761386a6152df565b60200101906001600160f81b031916908160001a905350613889565b50805b81613893816152f5565b9250506020821080156138a4575080155b61381d576000816001600160401b038111156138c2576138c2614c64565b6040519080825280601f01601f1916602001820160405280156138ec576020820181803683370190505b509050600092505b838381518110613906576139066152df565b01602001516001600160f81b031916156139615783838151811061392c5761392c6152df565b602001015160f81c60f81b818481518110613949576139496152df565b60200101906001600160f81b031916908160001a9053505b8161396b8161555e565b9250508280613979906152f5565b93505060208310801561398c5750600082115b6138f45795945050505050565b600080600f60fc1b816139ab8561370c565b9050600080826001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa1580156139ee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a12919061523b565b90505b80613a1f8161555e565b604051631aae8f7360e11b8152600481018290529092506001600160a01b038516915063355d1ee690602401602060405180830381865afa158015613a68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a8c919061523b565b9150600081118015613a9e5750600082115b8015613aac57508384831614155b613a15576001600160a01b0391909116969095509350505050565b60208110613aff5781518352613ade6020846150ed565b9250613aeb6020836150ed565b9150613af860208261511b565b9050613ac7565b80600003613b0c57505050565b60006001613b1b83602061511b565b613b279061010061565c565b613b31919061511b565b925184518416931916929092179092525050565b600080826001600160a01b0316635001f3b56040518163ffffffff1660e01b8152600401602060405180830381865afa158015613b86573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613baa9190615167565b6001600160a01b031663ddf7fcb06040518163ffffffff1660e01b8152600401602060405180830381865afa158015613be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c0b919061523b565b613ca585613c1887614667565b600081518110613c2a57613c2a6152df565b60200260200101516001613c3e9190615668565b60ff166001613c4c89614667565b600081518110613c5e57613c5e6152df565b6020026020010151613c6f8a614667565b600181518110613c8157613c816152df565b6020026020010151613c939190615681565b613c9d9190615681565b60ff16611a55565b8051602091820120604051613cc4939201918252602082015260400190565b60405160208183030381529060405280519060200120905080613d0e856000613cec88614667565b600081518110613cfe57613cfe6152df565b602002602001015160ff16611a55565b8051602091820120604051613d2d939201918252602082015260400190565b6040516020818303038152906040528051906020012091505092915050565b60008115801590613ecd57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633f15457f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613db6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dda9190615167565b604051632ffef98760e21b81523360048201526001600160a01b039182169163f79fe538917f00000000000000000000000000000000000000000000000000000000000000009091169063bffbe61c90602401602060405180830381865afa158015613e4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e6e919061523b565b6040518263ffffffff1660e01b8152600401613e8c91815260200190565b602060405180830381865afa158015613ea9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ecd9190615520565b8015613f5657506002546001600160a01b03166001600160a01b0316336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015613f27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f4b9190615167565b6001600160a01b0316145b8015613fe05750813363355d1ee6613f766002546001600160a01b031690565b6001600160a01b03166040518263ffffffff1660e01b8152600401613f9d91815260200190565b602060405180830381865afa158015613fba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613fde919061523b565b145b8015611432575033613ffa6002546001600160a01b031690565b6001600160a01b031663deb931a2846040518263ffffffff1660e01b815260040161402791815260200190565b602060405180830381865afa158015614044573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140689190615167565b6001600160a01b03161492915050565b6000336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156140b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140dc9190615167565b6001600160a01b03808516600090815260036020526040808220549286168252902054919250906141b5821580159061411e57508161411b84826150ed565b10155b8015614196575060405163ce2e91cf60e01b8152600481018890526001600160a01b03878116602483015285169063ce2e91cf90604401602060405180830381865afa158015614172573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141969190615520565b604051806040016040528060018152602001602160f91b815250613533565b6001600160a01b038516600090815260036020526040812080548492906141dd90849061511b565b90915550506001600160a01b0384166000908152600360205260408120805484929061420a9084906150ed565b92505081905550836001600160a01b0316856001600160a01b0316600080516020615d04833981519152600185901c60405161424891815260200190565b60405180910390a3505050505050565b600061429460006001600160a01b0316846001600160a01b031614156040518060400160405280600281526020016126a960f11b815250613533565b6000836001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156142d4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526142fc91908101906151a7565b90506000606081600164010000000068010000000000000000600160601b845b8851811015614657578a6001600160a01b03166356f9ca5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614363573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906143879190615167565b6001600160a01b031663bffbe61c8a83815181106143a7576143a76152df565b60200260200101516040518263ffffffff1660e01b81526004016143da91906001600160a01b0391909116815260200190565b602060405180830381865afa1580156143f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061441b919061523b565b97508a6001600160a01b03166356f9ca5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561445b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061447f9190615167565b6001600160a01b031663828eab0e6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156144bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906144e09190615167565b6001600160a01b031663691f3431896040518263ffffffff1660e01b815260040161450d91815260200190565b600060405180830381865afa15801561452a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052614552919081019061533e565b9650601f811115801561456457508715155b156145765761457382876150ed565b95505b6000614581886147da565b11801561458e5750602081105b1561461b5761459d85876150ed565b95506145c88b886040518060400160405280600681526020016530bb30ba30b960d11b8152506148dd565b156145da576145d784876150ed565b95505b6146098b886040518060400160405280600c81526020016b1b5957dcdd185d195b595b9d60a21b8152506148dd565b1561461b5761461883876150ed565b95505b61462685600261512e565b945061463384600261512e565b935061464083600261512e565b925061464d82600261512e565b915060010161431c565b50939a9950505050505050505050565b604080516002808252606080830184529260009291906020830190803683375050845191925060009182915081905b808210156147cf5760008783815181106146b2576146b26152df565b01602001516001600160f81b0319169050601760f91b81900361470257828685815181106146e2576146e26152df565b60ff90921660209283029190910190910152836146fe816152f5565b9450505b600160ff1b6001600160f81b03198216101561472a576147236001846150ed565b92506147bc565b600760fd1b6001600160f81b03198216101561474b576147236002846150ed565b600f60fc1b6001600160f81b03198216101561476c576147236003846150ed565b601f60fb1b6001600160f81b03198216101561478d576147236004846150ed565b603f60fa1b6001600160f81b0319821610156147ae576147236005846150ed565b6147b96006846150ed565b92505b50836147c7816152f5565b945050614696565b509295945050505050565b8051600090819081905b808210156148d4576000858381518110614800576148006152df565b01602001516001600160f81b0319169050600160ff1b81101561482f576148286001846150ed565b92506148c1565b600760fd1b6001600160f81b031982161015614850576148286002846150ed565b600f60fc1b6001600160f81b031982161015614871576148286003846150ed565b601f60fb1b6001600160f81b031982161015614892576148286004846150ed565b603f60fa1b6001600160f81b0319821610156148b3576148286005846150ed565b6148be6006846150ed565b92505b50826148cc816152f5565b9350506147e4565b50909392505050565b600080846001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561491e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149429190615167565b6001600160a01b03166359d1d43c61495a8688613b45565b856040518363ffffffff1660e01b815260040161497892919061569a565b600060405180830381865afa158015614995573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526149bd919081019061533e565b5111949350505050565b610650806156b483390190565b6001600160a01b0381168114610c8457600080fd5b600080604083850312156149fc57600080fd5b8235614a07816149d4565b946020939093013593505050565b60008060408385031215614a2857600080fd5b50508035926020909101359150565b600080600060608486031215614a4c57600080fd5b8335614a57816149d4565b92506020840135614a67816149d4565b929592945050506040919091013590565b600060208284031215614a8a57600080fd5b5035919050565b600060208284031215614aa357600080fd5b8135611ae6816149d4565b60008060408385031215614ac157600080fd5b823591506020830135614ad3816149d4565b809150509250929050565b600081518084526020840193506020830160005b82811015614b10578151865260209586019590910190600101614af2565b5093949350505050565b602081526000611ae66020830184614ade565b60005b83811015614b48578181015183820152602001614b30565b50506000910152565b60008151808452614b69816020860160208601614b2d565b601f01601f19169290920160200192915050565b602081526000611ae66020830184614b51565b600081518084526020840193506020830160005b82811015614b105781516001600160a01b0316865260209586019590910190600101614ba4565b606081526000614bde6060830186614ade565b8281036020840152614bf08186614b90565b90508281036040840152614c048185614ade565b9695505050505050565b600080600080600060a08688031215614c2657600080fd5b8535614c31816149d4565b94506020860135935060408601359250606086013591506080860135614c56816149d4565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614ca257614ca2614c64565b604052919050565b60006001600160401b03821115614cc357614cc3614c64565b50601f01601f191660200190565b6000614ce4614cdf84614caa565b614c7a565b9050828152838383011115614cf857600080fd5b828260208301376000602084830101529392505050565b600080600060608486031215614d2457600080fd5b83356001600160401b03811115614d3a57600080fd5b8401601f81018613614d4b57600080fd5b614d5a86823560208401614cd1565b9660208601359650604090950135949350505050565b60008060208385031215614d8357600080fd5b82356001600160401b03811115614d9957600080fd5b8301601f81018513614daa57600080fd5b80356001600160401b03811115614dc057600080fd5b8560208260051b8401011115614dd557600080fd5b6020919091019590945092505050565b60008060008060808587031215614dfb57600080fd5b84359350602085013592506040850135614e14816149d4565b915060608501356001600160401b03811115614e2f57600080fd5b8501601f81018713614e4057600080fd5b614e4f87823560208401614cd1565b91505092959194509250565b600080600060608486031215614e7057600080fd5b833592506020840135614e82816149d4565b91506040840135614e92816149d4565b809150509250925092565b60008060408385031215614eb057600080fd5b8235614ebb816149d4565b91506020830135614ad3816149d4565b600080600060608486031215614ee057600080fd5b83359250602084013591506040840135614e92816149d4565b6001600160a01b0386811682528516602082015260a060408201819052600090614f2590830186614b51565b8281036060840152614f378186614b51565b90508281036080840152614f4b8185614b90565b98975050505050505050565b60008083601f840112614f6957600080fd5b5081356001600160401b03811115614f8057600080fd5b602083019150836020828501011115614f9857600080fd5b9250929050565b60008060008060008060a08789031215614fb857600080fd5b8635614fc3816149d4565b95506020870135614fd3816149d4565b9450604087013593506060870135925060808701356001600160401b03811115614ffc57600080fd5b61500889828a01614f57565b979a9699509497509295939492505050565b6000806000806060858703121561503057600080fd5b84356001600160401b0381111561504657600080fd5b61505287828801614f57565b9095509350506020850135615066816149d4565b9396929550929360400135925050565b60a08152600061508960a0830188614ade565b828103602084015261509b8188614b51565b905082810360408401526150af8187614b90565b905082810360608401526150c38186614ade565b90508281036080840152614f4b8185614b51565b634e487b7160e01b600052601160045260246000fd5b80820180821115611432576114326150d7565b6020808252600190820152603960f91b604082015260600190565b81810381811115611432576114326150d7565b8082028115828204841417611432576114326150d7565b60008261516257634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561517957600080fd5b8151611ae6816149d4565b60006001600160401b0382111561519d5761519d614c64565b5060051b60200190565b6000602082840312156151b957600080fd5b81516001600160401b038111156151cf57600080fd5b8201601f810184136151e057600080fd5b80516151ee614cdf82615184565b8082825260208201915060208360051b85010192508683111561521057600080fd5b6020840193505b82841015614c0457835161522a816149d4565b825260209384019390910190615217565b60006020828403121561524d57600080fd5b5051919050565b60006020828403121561526657600080fd5b81516001600160401b0381111561527c57600080fd5b8201601f8101841361528d57600080fd5b805161529b614cdf82615184565b8082825260208201915060208360051b8501019250868311156152bd57600080fd5b6020840193505b82841015614c045783518252602093840193909101906152c4565b634e487b7160e01b600052603260045260246000fd5b600060018201615307576153076150d7565b5060010190565b600061531c614cdf84614caa565b905082815283838301111561533057600080fd5b611ae6836020830184614b2d565b60006020828403121561535057600080fd5b81516001600160401b0381111561536657600080fd5b8201601f8101841361537757600080fd5b6153868482516020840161530e565b949350505050565b6b1c1c184b9d5b99dc985d995b60a21b8152600082516153b581600c850160208701614b2d565b91909101600c0192915050565b6001600160a01b03841681526060602082018190526000906153e690830185614b51565b905060018060a01b0383166040830152949350505050565b600082601f83011261540f57600080fd5b611ae68383516020850161530e565b6000806040838503121561543157600080fd5b825160208401519092506001600160401b0381111561544f57600080fd5b61545b858286016153fe565b9150509250929050565b604081528260408201528284606083013760006060848301015260006060601f19601f8601168301019050826020830152949350505050565b600080600080600060a086880312156154b657600080fd5b855160208701519095506154c9816149d4565b60408701519094506154da816149d4565b60608701519093506154eb816149d4565b60808701519092506001600160401b0381111561550757600080fd5b615513888289016153fe565b9150509295509295909350565b60006020828403121561553257600080fd5b81518015158114611ae657600080fd5b60008251615554818460208701614b2d565b9190910192915050565b60008161556d5761556d6150d7565b506000190190565b6001815b60018411156155b057808504811115615594576155946150d7565b60018416156155a257908102905b60019390931c928002615579565b935093915050565b6000826155c757506001611432565b816155d457506000611432565b81600181146155ea57600281146155f457615610565b6001915050611432565b60ff841115615605576156056150d7565b50506001821b611432565b5060208310610133831016604e8410600b8410161715615633575081810a611432565b6156406000198484615575565b8060001904821115615654576156546150d7565b029392505050565b6000611ae683836155b8565b60ff8181168382160190811115611432576114326150d7565b60ff8281168282160390811115611432576114326150d7565b8281526040602082015260006153866040830184614b5156fe60c0604052600160005560405161065038038061065083398101604081905261002791610232565b6001600160a01b0383161580159061004757506001600160a01b03811615155b61005357610053610309565b6001600160a01b0383166080526040805163530ca43760e11b81529051339163a619486e9160048083019260209291908290030181865afa15801561009c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100c0919061031f565b6001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100fd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610121919061031f565b6001600160a01b031660a05260405130907f1ba71f9564fde2683a8a8cdc86fb4d2710c19374a52c8719412dee7270841d8490600090a260405163c47f002760e01b81526001600160a01b0382169063c47f002790610184908590600401610343565b6020604051808303816000875af11580156101a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610376565b5050505061038f565b6001600160a01b03811681146101e557600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b83811015610219578181015183820152602001610201565b50506000910152565b805161022d816101d0565b919050565b60008060006060848603121561024757600080fd5b8351610252816101d0565b60208501519093506001600160401b0381111561026e57600080fd5b8401601f8101861361027f57600080fd5b80516001600160401b03811115610298576102986101e8565b604051601f8201601f19908116603f011681016001600160401b03811182821017156102c6576102c66101e8565b6040528181528282016020018810156102de57600080fd5b6102ef8260208301602086016101fe565b935061030091505060408501610222565b90509250925092565b634e487b7160e01b600052600160045260246000fd5b60006020828403121561033157600080fd5b815161033c816101d0565b9392505050565b60208152600082518060208401526103628160408501602087016101fe565b601f01601f19169190910160400192915050565b60006020828403121561038857600080fd5b5051919050565b60805160a0516102976103b9600039600060c2015260008181605201526101ca01526102976000f3fe6080604052600436106100225760003560e01c8063b9a0cbe8146101b857600080fd5b366101b3576001600080828254610039919061021e565b9091555050600054341561017c573a6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166108fc6100828362099e18610237565b61008c903461024e565b6040518115909202916000818181858888f193505050501580156100b4573d6000803e3d6000fd5b506040516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016904780156108fc02916000818181858888f1935050505015801561010a573d6000803e3d6000fd5b5047156101425760405162461bcd60e51b81526020600482015260016024820152600760fc1b60448201526064015b60405180910390fd5b604080513381523460208201527f927ab32c68a90a4cf460f95be1736eb7d1e77681f3320c240f853ca95ee2827f910160405180910390a1505b60005481146101b15760405162461bcd60e51b81526020600482015260016024820152603960f91b6044820152606401610139565b005b600080fd5b3480156101c457600080fd5b506101ec7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b634e487b7160e01b600052601160045260246000fd5b8082018082111561023157610231610208565b92915050565b808202811582820484141761023157610231610208565b818103818111156102315761023161020856fecborAuxdataa2646970667358221220a1f428f752d9ecc9a7557cef0581d06c96326f1af5f4ba26eea9fae253b20b9164736f6c634300081e0033eventSignatureddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efcborAuxdataa2646970667358221220d980fba914cbb25986563ce068c62607994fe51828907e385ff4021e9ede92d064736f6c634300081e0033constructorArguments546f6b656e4d6173746572436f6e747261637400000000000000000000000000000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d82633000000000000000000000000cd8e01061476554fe6dcab175bbd1391c5a6e0ef

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: QmedP75HaR7oPJRrjWVoez98J2sYPQNPbzNgQkrp4q3ABq
RawDecoded
Length: 53 bytes
0xa2646970667358221220f204389894edf94564f8c09ec0d9c63a12b66f55b4b8515b520cd1b3f9ad3e2864736f6c634300081e0033

CBOR Auxdata id: 2

View on IPFS Logo
Solidity metadata.json IPFS hash: QmXxFdtXyJMCFnJUd3YMaWkef7xXoqLkxb1x5RMUwv1cks
RawDecoded
Length: 53 bytes
0xa26469706673582212208ed800c8dea1f3958254e80a2729ce459c959f8b9d8b47da70a880ba682950ac64736f6c634300081e0033

Transformations

Constructor Arguments

RawDecoded
Length: 96 bytes
0x546f6b656e4d6173746572436f6e747261637400000000000000000000000000000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d82633000000000000000000000000cd8e01061476554fe6dcab175bbd1391c5a6e0ef

CBOR Auxdata Transformations

Byte OffsetsLength (bytes)Values
2491554
Original (recompiled):0xa26469706673582212208ed800c8dea1f3958254e80a2729ce459c959f8b9d8b47da70a880ba682950ac64736f6c634300081e0033
Transformed (onchain):0xa2646970667358221220a1f428f752d9ecc9a7557cef0581d06c96326f1af5f4ba26eea9fae253b20b9164736f6c634300081e0033
2500054
Original (recompiled):0xa2646970667358221220f204389894edf94564f8c09ec0d9c63a12b66f55b4b8515b520cd1b3f9ad3e2864736f6c634300081e0033
Transformed (onchain):0xa2646970667358221220d980fba914cbb25986563ce068c62607994fe51828907e385ff4021e9ede92d064736f6c634300081e0033

Runtime Bytecode

0x6080604052600436106101d75760003560e01c8063functionSignature54fd4d5011610102578063functionSignature92399c0411610095578063functionSignaturebdf0c7f611610064578063functionSignaturebdf0c7f6146105e3578063functionSignaturee1168ff914610603578063functionSignaturef23a6e6114610634578063functionSignaturef73039551461067a57600080fd5b8063functionSignature92399c0414610540578063functionSignature95d89b4114610574578063functionSignature9b107783146105a3578063functionSignatureb82b5a58146105c357600080fd5b8063functionSignature70a08231116100d1578063functionSignature70a08231146104a8578063functionSignature8620410b146104e1578063functionSignature8963c0f814610502578063functionSignature8da5cb5b1461052257600080fd5b8063functionSignature54fd4d501461042f578063functionSignature5a3b7e4214610446578063functionSignature5de5cbe414610475578063functionSignature6f48eb901461048857600080fd5b8063functionSignature0580cc691161017a578063functionSignature2eddf9a211610149578063functionSignature2eddf9a2146103bb578063functionSignature313ce567146103db578063functionSignature4b750334146103f7578063functionSignature4cd1ad321461040f57600080fd5b8063functionSignature0580cc691461031c578063functionSignature06fdde0314610349578063functionSignature18160ddd1461036b578063functionSignature2dda78e31461038c57600080fd5b8061b3ea116101ae578061b3ea14610285578061c771146102a5578061e7f1146102c5578063functionSignature04e80e90146102e557600080fd5b80614a011461021b57806184f31461023d57806187111461025d578061b1841461027d57600080fd5b3661021657604080513381523460208201527feventSignaturee1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c910160405180910390a1005b600080fd5b34801561022757600080fd5b5061023b6102363660046149e9565b61069e565b005b34801561024957600080fd5b5061023b610258366004614a15565b6107ff565b34801561026957600080fd5b5061023b610278366004614a37565b6108ae565b61023b610ab8565b34801561029157600080fd5b5061023b6102a0366004614a78565b610c87565b3480156102b157600080fd5b5061023b6102c03660046149e9565b610e1c565b3480156102d157600080fd5b5061023b6102e0366004614a91565b610f8e565b3480156102f157600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b34801561032857600080fd5b5061033c610337366004614aae565b611031565b6040516103139190614b1a565b34801561035557600080fd5b5061035e611438565b6040516103139190614b7d565b34801561037757600080fd5b506307270e005b604051908152602001610313565b34801561039857600080fd5b506103ac6103a7366004614a78565b61144a565b60405161031393929190614bcb565b3480156103c757600080fd5b5061023b6103d6366004614c0e565b6117cf565b3480156103e757600080fd5b5060405160028152602001610313565b34801561040357600080fd5b5060025460d01c61037e565b34801561041b57600080fd5b5061035e61042a366004614d0f565b611a55565b34801561043b57600080fd5b50630131548461037e565b34801561045257600080fd5b5060408051808201909152600681526504552432d32360d41b602082015261035e565b61023b610483366004614d70565b611aed565b34801561049457600080fd5b5061023b6104a3366004614de5565b611ed2565b3480156104b457600080fd5b5061037e6104c3366004614a91565b6001600160a01b031660009081526003602052604090205460011c90565b3480156104ed57600080fd5b5061037e60025460a01c65ffffffffffff1690565b34801561050e57600080fd5b5061023b61051d366004614e5b565b6123da565b34801561052e57600080fd5b506002546001600160a01b03166102ff565b34801561054c57600080fd5b506102ff7fimmutable000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d8263381565b34801561058057600080fd5b5060408051808201909152600681526573686172657360d01b602082015261035e565b3480156105af57600080fd5b5061037e6105be366004614e9d565b612490565b3480156105cf57600080fd5b5061023b6105de366004614ecb565b6124ff565b3480156105ef57600080fd5b5061023b6105fe366004614e5b565b612643565b34801561060f57600080fd5b5061062361061e366004614a78565b6126ac565b604051610313959493929190614ef9565b34801561064057600080fd5b5061066161064f366004614f9f565b63functionSignaturef23a6e6160e01b9695505050505050565b6040516001600160e01b03199091168152602001610313565b61068d61068836600461501a565b612a42565b604051610313959493929190615076565b6001600560008282546106b191906150ed565b9091555050600554826107026001600160a01b038216158015906106e357503360009081526003602052604090205415155b604051806040016040528060018152602001601560fa1b815250613533565b600060036000336001600160a01b03166001600160a01b0316815260200190815260200160002054905061075684600183901c1015604051806040016040528060018152602001603360f91b815250613533565b3360009081526004602090815260408083206001600160a01b0389168452909152812080548692906107899084906150ed565b90915550506040518481526001600160a01b0386169033907feventSignature8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259060200160405180910390a3505060055481146107fa5760405162461bcd60e51b81526004016107f190615100565b60405180910390fd5b505050565b60016005600082825461081291906150ed565b909155505060055461086261082f6002546001600160a01b031690565b6001600160a01b0316336001600160a01b031614604051806040016040528060018152602001602960f91b815250613533565b6002546001600160a01b031661088060d085901b60a085901b6150ed565b61088a91906150ed565b60025560055481146107fa5760405162461bcd60e51b81526004016107f190615100565b6001600560008282546108c191906150ed565b90915550506005546108de61082f6002546001600160a01b031690565b61091f6001600160a01b038516158015906106e357506001600160a01b0384161515604051806040016040528060018152602001601560fa1b815250613533565b6001600160a01b0380841660009081526003602090815260408083205493881683526004825280832033845290915290205460019190911c906109b990841180159061098657506001600160a01b03861660009081526003602052604090205460011c8411155b80156106e357508161099885826150ed565b1015604051806040016040528060018152602001601560fa1b815250613533565b6001600160a01b0385166000908152600460209081526040808320338452909152812080548592906109ec90849061511b565b90915550506001600160a01b03851660009081526003602052604081208054600186901b9290610a1d90849061511b565b90915550506001600160a01b03841660009081526003602052604081208054600186901b9290610a4e9084906150ed565b92505081905550836001600160a01b0316856001600160a01b0316600080516020615d0483398151915285604051610a8891815260200190565b60405180910390a3506005548114610ab25760405162461bcd60e51b81526004016107f190615100565b50505050565b600160056000828254610acb91906150ed565b9091555050600554610b1f610ade613552565b80610b00575033610af5610af06135c9565b61370c565b6001600160a01b0316145b604051806040016040528060018152602001604f60f81b815250613533565b3360009081526003602052604090205460025460a01c65ffffffffffff16610b6e3415801590610b4f5750600082115b604051806040016040528060018152602001607960f81b815250613533565b60006103e882610b7e348361512e565b610b889190615145565b610b929190615145565b30600090815260036020526040902054909150610beb9060011c8211801590610bcc5750600184811c90610bc99084901b826150ed565b10155b604051806040016040528060018152602001607160f81b815250613533565b3060009081526003602052604081208054600184901b9290610c0e90849061511b565b90915550503360009081526003602052604081208054600184901b9290610c369084906150ed565b909155505060405181815233903090600080516020615d048339815191529060200160405180910390a35050506005548114610c845760405162461bcd60e51b81526004016107f190615100565b50565b600160056000828254610c9a91906150ed565b9091555050600554610cad610ade613552565b3360009081526003602052604090205460025460d01c610d048415801590610cd55750600082115b8015610ce5575084600184901c10155b604051806040016040528060018152602001606560f81b815250613533565b3060009081526003602052604090205460011c9150610d4882610d2786826150ed565b1015604051806040016040528060018152602001605160f81b815250613533565b3360009081526003602052604081208054600187901b9290610d6b90849061511b565b90915550503060009081526003602052604081208054600187901b9290610d939084906150ed565b909155503390506108fc610da7838761512e565b6040518115909202916000818181858888f19350505050158015610dcf573d6000803e3d6000fd5b5060405184815230903390600080516020615d048339815191529060200160405180910390a350506005548114610e185760405162461bcd60e51b81526004016107f190615100565b5050565b600160056000828254610e2f91906150ed565b909155505060055482610e7f6001600160a01b038216158015906106e35750336000908152600360205260409020541515604051806040016040528060018152602001601560fa1b815250613533565b6001600160a01b03841660009081526003602052604080822054338352912054600191821c91610ee39082901c8611801590610ec4575082610ec187826150ed565b10155b604051806040016040528060018152602001601d60fa1b815250613533565b3360009081526003602052604081208054600188901b9290610f0690849061511b565b90915550506001600160a01b03861660009081526003602052604081208054600188901b9290610f379084906150ed565b90915550506040518581526001600160a01b038716903390600080516020615d048339815191529060200160405180910390a350505060055481146107fa5760405162461bcd60e51b81526004016107f190615100565b600160056000828254610fa191906150ed565b9091555050600554610fbe61082f6002546001600160a01b031690565b6040805180820190915260018152605960f81b6020820152610fec906001600160a01b038416151590613533565b816001600160a01b03166001600160a01b03196002541661100d91906150ed565b6002556005548114610e185760405162461bcd60e51b81526004016107f190615100565b604051631f29e98760e21b8152600481018390526060906000906001600160a01b03841690637ca7a61c90602401602060405180830381865afa15801561107c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a09190615167565b604051631b5576df60e11b8152600481018690529091506000906001600160a01b038516906336aaedbe90602401602060405180830381865afa1580156110eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110f9190615167565b90506000826001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611151573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261117991908101906151a7565b905060008151600261118b919061512e565b90506000846001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f1919061523b565b905060006111ff82846150ed565b6001600160401b0381111561121657611216614c64565b60405190808252806020026020018201604052801561123f578160200160208202803683370190505b5090506000866001600160a01b03166327506f536040518163ffffffff1660e01b8152600401600060405180830381865afa158015611282573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112aa9190810190615254565b90506000805b8681815181106112c2576112c26152df565b60200260200101519150816001600160a01b031631848260026112e5919061512e565b815181106112f5576112f56152df565b602090810291909101015260405163functionSignature70a0823160e01b81526001600160a01b03838116600483015289169063functionSignature70a0823190602401602060405180830381865afa158015611346573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061136a919061523b565b8461137683600261512e565b6113819060016150ed565b81518110611391576113916152df565b6020908102919091010152806113a6816152f5565b915050865181106112b05782516000036113cb57839950505050505050505050611432565b5060005b8281815181106113e1576113e16152df565b60200260200101518487836113f691906150ed565b81518110611406576114066152df565b60209081029190910101528061141b816152f5565b915050825181106113cf5750919750505050505050505b92915050565b60606114456001546137f4565b905090565b606080606060006114636002546001600160a01b031690565b604051631f29e98760e21b8152600481018790529091506000906001600160a01b03831690637ca7a61c90602401602060405180830381865afa1580156114ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d29190615167565b9050806001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611512573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261153a91908101906151a7565b60408051600a8082526101608201909252919550600091906020820161014080368337019050509050826001600160a01b031681600081518110611580576115806152df565b602002602001018181525050816001600160a01b0316816001815181106115a9576115a96152df565b6020026020010181815250506002816002815181106115ca576115ca6152df565b60200260200101818152505065ffffffffffff60d06001600160d01b031960025416901c1681600381518110611602576116026152df565b60200260200101818152505065ffffffffffff60a065ffffffffffff60a01b60025416901c168160048151811061163b5761163b6152df565b602002602001018181525050600160036000306001600160a01b03166001600160a01b0316815260200190815260200160002054901c81600581518110611684576116846152df565b602002602001018181525050600160036000846001600160a01b03166001600160a01b0316815260200190815260200160002054901c816006815181106116cd576116cd6152df565b602002602001018181525050600160fd1b60001b6001541760001c816007815181106116fb576116fb6152df565b602002602001018181525050816001600160a01b03163181600881518110611725576117256152df565b6020026020010181815250504781600981518110611745576117456152df565b602090810291909101015260405163functionSignature0580cc6960e01b8152600481018890526001600160a01b0384166024820152309063functionSignature0580cc6990604401600060405180830381865afa15801561179b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526117c39190810190615254565b90979496509450505050565b6001600560008282546117e291906150ed565b9091555050600554826000806117f783613999565b90925090506118346001600160a01b03831633148015611815575060015b604051806040016040528060018152602001601960fa1b815250613533565b33600090815260036020526040808220546001600160a01b038c16835291205460011c6118ad881580159061186d57508a600184901c10155b801561188257508161187f8c826150ed565b10155b801561188e575060008a115b604051806040016040528060018152602001603560f91b815250613533565b336000908152600360205260408120805460018d901b92906118d090849061511b565b90915550506001600160a01b038b166000908152600360205260408120805460018d901b92906119019084906150ed565b90915550506040518a81526001600160a01b038c16903390600080516020615d048339815191529060200160405180910390a3600061193f89613999565b91505061194b8961370c565b604051600162d64b2b60e01b0319815260048101839052602481018c90526001600160a01b038a81166044830152919091169063ff29b4d590606401600060405180830381600087803b1580156119a157600080fd5b505af11580156119b5573d6000803e3d6000fd5b5050505060006103e88c8c6103e86119cd919061512e565b6119d79190615145565b6119e19190615145565b6002549091506001600160a01b031660d06119fd600a84615145565b611a07908461511b565b611a16911b60a084901b6150ed565b611a2091906150ed565b600255505060055486149450611a4d93505050505760405162461bcd60e51b81526004016107f190615100565b505050505050565b6060611a8984518385611a6891906150ed565b1115604051806040016040528060018152602001607360f81b815250613533565b816001600160401b03811115611aa157611aa1614c64565b6040519080825280601f01601f191660200182016040528015611acb576020820181803683370190505b50905060208082019085850101611ae3828286613ac7565b50505b9392505050565b600160056000828254611b0091906150ed565b9091555050600554600254611bad90158015611b8e5750336001600160a01b0316336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b839190615167565b6001600160a01b0316145b604051806040016040528060018152602001602360f91b815250613533565b336001600160a01b031960d0611bca600a655af3107a4000615145565b611bda90655af3107a400061511b565b611bed911b64016bcc41e960ae1b6150ed565b16611bf891906150ed565b600290815583908390611c0b908261511b565b818110611c1a57611c1a6152df565b602002919091013560019081556000915084908490611c39908261511b565b818110611c4857611c486152df565b9050602002013590506000816001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611c91573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611cb991908101906151a7565b90506000806000805b848181518110611cd457611cd46152df565b602002602001015193506bffffffffffffffffffffffff609f6001600160a01b03198b8b85818110611d0857611d086152df565b9050602002013516901c169250611d9c83600014158015611d3f57506001600160a01b038516600090815260036020526040902054155b8015611d7d5750846001600160a01b03166001600160a01b038b8b85818110611d6a57611d6a6152df565b90506020020135166001600160a01b0316145b604051806040016040528060018152602001601360fa1b815250613533565b611da683836150ed565b6001600160a01b038516600081815260036020526040808220879055519294509091600080516020615d0483398151915290611de990600188901c815260200190565b60405180910390a380611dfb816152f5565b91505084518110611cc257611e14630bebc2008361511b565b9150611e24826301312d0061511b565b3060008181526003602052604081209290925590600080516020615d04833981519152611e58600186901c6298968061511b565b60405190815260200160405180910390a36001600160a01b03861660008181526003602090815260408083206301312d00905551629896808152600080516020615d04833981519152910160405180910390a350505050505060055481146107fa5760405162461bcd60e51b81526004016107f190615100565b600160056000828254611ee591906150ed565b9091555050600554846000611f026002546001600160a01b031690565b6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f3f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f639190615167565b6001600160a01b0316633b3b57de612021611f866002546001600160a01b031690565b6001600160a01b0316632d5514326040518163ffffffff1660e01b8152600401600060405180830381865afa158015611fc3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611feb919081019061533e565b604051602001611ffb919061538e565b60405160208183030381529060405261201c6002546001600160a01b031690565b613b45565b6040518263ffffffff1660e01b815260040161203f91815260200190565b602060405180830381865afa15801561205c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120809190615167565b9050600061208d8361370c565b9050612208816001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120f49190615167565b6001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa158015612131573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121559190615167565b6001600160a01b0316336001600160a01b0316148061217c5750336001600160a01b038416145b80156121e957506000826001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121e7919061523b565b115b604051806040016040528060018152602001602b60f91b815250613533565b61224c881580159061221957508715155b801561222d57506001600160a01b03871615155b604051806040016040528060018152602001603b60f91b815250613533565b600080878760008054906101000a90046001600160a01b03166001600160a01b031663functionSignature92399c046040518163ffffffff1660e01b8152600401602060405180830381865afa1580156122a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122c69190615167565b6040516122d2906149c7565b6122de939291906153c2565b6040518091039082f09050801580156122fb573d6000803e3d6000fd5b5090506123078961370c565b60405162b1b21960e21b8152600481018a90526001600160a01b03838116602483015291909116906302c6c86490604401600060405180830381600087803b15801561235257600080fd5b505af1158015612366573d6000803e3d6000fd5b5050604080516001600160a01b0380861682528b1660208201527feventSignature9845bb4750fb95891db3b02ccd4220ad685ef1fa843d99032b0dba8a62ee5f36935001905060405180910390a15050505060055481146123d35760405162461bcd60e51b81526004016107f190615100565b5050505050565b6001600560008282546123ed91906150ed565b90915550506005548361242161240282613d4c565b604051806040016040528060018152602001605160f81b815250613533565b6124636001600160a01b0385161580159061244457506001600160a01b03841615155b604051806040016040528060018152602001604760f81b815250613533565b61246e858585614078565b506005548114610ab25760405162461bcd60e51b81526004016107f190615100565b60006124d36001600160a01b038416158015906106e357506001600160a01b0383161515604051806040016040528060018152602001601560fa1b815250613533565b506001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b60016005600082825461251291906150ed565b90915550506005548360008061252783613999565b90925090506125636001600160a01b0383163314801561181557506001604051806040016040528060018152602001601960fa1b815250613533565b600061256e8861370c565b90506125bd6001600160a01b0387161580159061258a57508715155b801561259e57506001600160a01b03821615155b604051806040016040528060018152602001603760f91b815250613533565b60405162b1b21960e21b8152600481018890526001600160a01b0387811660248301528216906302c6c86490604401600060405180830381600087803b15801561260657600080fd5b505af115801561261a573d6000803e3d6000fd5b50505050505050506005548114610ab25760405162461bcd60e51b81526004016107f190615100565b60016005600082825461265691906150ed565b90915550506005548361266b61240282613d4c565b6124636001600160a01b03851615801590610b4f57506001600160a01b0384161515604051806040016040528060018152602001607960f81b815250613533565b600080606080606060006126c86002546001600160a01b031690565b604051631f29e98760e21b8152600481018990529091506000906001600160a01b03831690637ca7a61c90602401602060405180830381865afa158015612713573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127379190615167565b90506000826001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612779573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061279d9190615167565b604051631101d5ab60e11b8152600481018b9052602060248201526001600160a01b039190911690632203ab5690604401600060405180830381865afa1580156127eb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612813919081019061541e565b9150506000836001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612856573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061287a9190615167565b604051631101d5ab60e11b8152600481018c9052608060248201526001600160a01b039190911690632203ab5690604401600060405180830381865afa1580156128c8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128f0919081019061541e565b915050836001600160a01b0316633f15457f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612931573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129559190615167565b6001600160a01b03166302571be38b6040518263ffffffff1660e01b815260040161298291815260200190565b602060405180830381865afa15801561299f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129c39190615167565b838383866001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015612a04573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612a2c91908101906151a7565b939e929d50909b50995090975095505050505050565b6060808080806001600160a01b0387161580612ad15750866001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a97573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612abb9190615167565b6001600160a01b0316876001600160a01b031614155b15612b2c575050604080516000808252606080830184526005602080850182815264677766632160d81b8688018190528751868152928301958652608083018852968201928352928101959095529296509450919250613528565b60008060008060008b6001600160a01b0316631e0c8b8d8f8f60006040518463ffffffff1660e01b8152600401612b6593929190615465565b6000604051808303816000875af1158015612b84573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612bac919081019061549e565b60408051600f8082526102008201909252959a509398509196509450925060009190602082016101e0803683370190505090508581600a81518110612bf357612bf36152df565b602002602001018181525050846001600160a01b031681600b81518110612c1c57612c1c6152df565b602002602001018181525050836001600160a01b031681600c81518110612c4557612c456152df565b602002602001018181525050826001600160a01b031681600d81518110612c6e57612c6e6152df565b60209081029190910101526001600160a01b0385161580612c9657506001600160a01b038416155b80612ca957506001600160a01b03851633145b15612d65574681600e81518110612cc257612cc26152df565b60200260200101818152505060008d6001600160a01b0316632d5514326040518163ffffffff1660e01b8152600401600060405180830381865afa158015612d0e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612d36919081019061533e565b60408051600080825260208201908152818301909252939d50939b509199509197509550613528945050505050565b612e3e8d6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612da6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dca9190615167565b6001600160a01b0316633b3b57de8e6040518263ffffffff1660e01b8152600401612df791815260200190565b602060405180830381865afa158015612e14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e389190615167565b8e614258565b81600e81518110612e5157612e516152df565b602090810291909101015260405163functionSignature0580cc6960e01b8152600481018d90526001600160a01b0384166024820152309063functionSignature0580cc6990604401600060405180830381865afa158015612ea7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612ecf9190810190615254565b975060008d6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612f11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f359190615167565b6001600160a01b0316633b3b57de8e6040518263ffffffff1660e01b8152600401612f6291815260200190565b602060405180830381865afa158015612f7f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fa39190615167565b90506001600160a01b038116612ff65750604080516000808252602082019081526080820183526004928201928352636777706360e01b6060830152929c50929a50919850965094506135289350505050565b806001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015613034573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261305c91908101906151a7565b9950806001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa15801561309c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130c09190615167565b6001600160a01b0316826000815181106130dc576130dc6152df565b602002602001018181525050806001600160a01b031682600181518110613105576131056152df565b602002602001018181525050600282600281518110613126576131266152df565b602002602001018181525050846001600160a01b031663functionSignature4b7503346040518163ffffffff1660e01b8152600401602060405180830381865afa158015613170573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613194919061523b565b826003815181106131a7576131a76152df565b602002602001018181525050846001600160a01b031663functionSignature8620410b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131f1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613215919061523b565b82600481518110613228576132286152df565b602090810291909101015260405163functionSignature70a0823160e01b81523060048201526001600160a01b0386169063functionSignature70a0823190602401602060405180830381865afa158015613277573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061329b919061523b565b826005815181106132ae576132ae6152df565b602090810291909101015260405163functionSignature70a0823160e01b81526001600160a01b03828116600483015286169063functionSignature70a0823190602401602060405180830381865afa1580156132ff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613323919061523b565b82600681518110613336576133366152df565b6020026020010181815250506133b2856001600160a01b031663functionSignature06fdde036040518163ffffffff1660e01b8152600401600060405180830381865afa158015613383573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526133ab919081019061533e565b6020015190565b60001c826007815181106133c8576133c86152df565b602002602001018181525050806001600160a01b031631826008815181106133f2576133f26152df565b6020026020010181815250504782600981518110613412576134126152df565b602002602001018181525050506000808e6001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613460573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134849190615167565b6001600160a01b0316632203ab568f60806040518363ffffffff1660e01b81526004016134bb929190918252602082015260400190565b600060405180830381865afa1580156134d8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613500919081019061541e565b915091508160801461351a5781613516816152f5565b9250505b919b50919950955050505050505b945094509450945094565b80826107fa5760405162461bcd60e51b81526004016107f19190614b7d565b600061355f610af06135c9565b604051632b0891e960e01b81523360048201526001600160a01b039190911690632b0891e990602401602060405180830381865afa1580156135a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114459190615520565b60006135dd6002546001600160a01b031690565b6001600160a01b0316635001f3b56040518163ffffffff1660e01b8152600401602060405180830381865afa15801561361a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061363e9190615167565b6001600160a01b031663ddf7fcb06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561367b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061369f919061523b565b6001546136b190600160fd1b176137f4565b6040516020016136c19190615542565b604051602081830303815290604052805190602001206040516020016136f1929190918252602082015260400190565b60405160208183030381529060405280519060200120905090565b6000613737826000801b1415604051806040016040528060018152602001602d60f91b815250613533565b600061374b6002546001600160a01b031690565b6001600160a01b0316637ca7a61c846040518263ffffffff1660e01b815260040161377891815260200190565b602060405180830381865afa158015613795573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137b99190615167565b905061143260006001600160a01b0316826001600160a01b03161415604051806040016040528060018152602001600b60fb1b815250613533565b604080516020808252818301909252606091600091906020820181803683370190505090506000805b84826020811061382f5761382f6152df565b1a60f81b6001600160f81b0319161561388657848260208110613854576138546152df565b1a60f81b83838151811061386a5761386a6152df565b60200101906001600160f81b031916908160001a905350613889565b50805b81613893816152f5565b9250506020821080156138a4575080155b61381d576000816001600160401b038111156138c2576138c2614c64565b6040519080825280601f01601f1916602001820160405280156138ec576020820181803683370190505b509050600092505b838381518110613906576139066152df565b01602001516001600160f81b031916156139615783838151811061392c5761392c6152df565b602001015160f81c60f81b818481518110613949576139496152df565b60200101906001600160f81b031916908160001a9053505b8161396b8161555e565b9250508280613979906152f5565b93505060208310801561398c5750600082115b6138f45795945050505050565b600080600f60fc1b816139ab8561370c565b9050600080826001600160a01b031663578cb8f96040518163ffffffff1660e01b8152600401602060405180830381865afa1580156139ee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a12919061523b565b90505b80613a1f8161555e565b604051631aae8f7360e11b8152600481018290529092506001600160a01b038516915063355d1ee690602401602060405180830381865afa158015613a68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a8c919061523b565b9150600081118015613a9e5750600082115b8015613aac57508384831614155b613a15576001600160a01b0391909116969095509350505050565b60208110613aff5781518352613ade6020846150ed565b9250613aeb6020836150ed565b9150613af860208261511b565b9050613ac7565b80600003613b0c57505050565b60006001613b1b83602061511b565b613b279061010061565c565b613b31919061511b565b925184518416931916929092179092525050565b600080826001600160a01b0316635001f3b56040518163ffffffff1660e01b8152600401602060405180830381865afa158015613b86573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613baa9190615167565b6001600160a01b031663ddf7fcb06040518163ffffffff1660e01b8152600401602060405180830381865afa158015613be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c0b919061523b565b613ca585613c1887614667565b600081518110613c2a57613c2a6152df565b60200260200101516001613c3e9190615668565b60ff166001613c4c89614667565b600081518110613c5e57613c5e6152df565b6020026020010151613c6f8a614667565b600181518110613c8157613c816152df565b6020026020010151613c939190615681565b613c9d9190615681565b60ff16611a55565b8051602091820120604051613cc4939201918252602082015260400190565b60405160208183030381529060405280519060200120905080613d0e856000613cec88614667565b600081518110613cfe57613cfe6152df565b602002602001015160ff16611a55565b8051602091820120604051613d2d939201918252602082015260400190565b6040516020818303038152906040528051906020012091505092915050565b60008115801590613ecd57507fimmutable000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d826336001600160a01b0316633f15457f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613db6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dda9190615167565b604051632ffef98760e21b81523360048201526001600160a01b039182169163f79fe538917fimmutable000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d826339091169063bffbe61c90602401602060405180830381865afa158015613e4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e6e919061523b565b6040518263ffffffff1660e01b8152600401613e8c91815260200190565b602060405180830381865afa158015613ea9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ecd9190615520565b8015613f5657506002546001600160a01b03166001600160a01b0316336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa158015613f27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f4b9190615167565b6001600160a01b0316145b8015613fe05750813363355d1ee6613f766002546001600160a01b031690565b6001600160a01b03166040518263ffffffff1660e01b8152600401613f9d91815260200190565b602060405180830381865afa158015613fba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613fde919061523b565b145b8015611432575033613ffa6002546001600160a01b031690565b6001600160a01b031663deb931a2846040518263ffffffff1660e01b815260040161402791815260200190565b602060405180830381865afa158015614044573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140689190615167565b6001600160a01b03161492915050565b6000336001600160a01b03166327a58be76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156140b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140dc9190615167565b6001600160a01b03808516600090815260036020526040808220549286168252902054919250906141b5821580159061411e57508161411b84826150ed565b10155b8015614196575060405163ce2e91cf60e01b8152600481018890526001600160a01b03878116602483015285169063ce2e91cf90604401602060405180830381865afa158015614172573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141969190615520565b604051806040016040528060018152602001602160f91b815250613533565b6001600160a01b038516600090815260036020526040812080548492906141dd90849061511b565b90915550506001600160a01b0384166000908152600360205260408120805484929061420a9084906150ed565b92505081905550836001600160a01b0316856001600160a01b0316600080516020615d04833981519152600185901c60405161424891815260200190565b60405180910390a3505050505050565b600061429460006001600160a01b0316846001600160a01b031614156040518060400160405280600281526020016126a960f11b815250613533565b6000836001600160a01b031663a0e67e2b6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156142d4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526142fc91908101906151a7565b90506000606081600164010000000068010000000000000000600160601b845b8851811015614657578a6001600160a01b03166356f9ca5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614363573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906143879190615167565b6001600160a01b031663bffbe61c8a83815181106143a7576143a76152df565b60200260200101516040518263ffffffff1660e01b81526004016143da91906001600160a01b0391909116815260200190565b602060405180830381865afa1580156143f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061441b919061523b565b97508a6001600160a01b03166356f9ca5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561445b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061447f9190615167565b6001600160a01b031663828eab0e6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156144bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906144e09190615167565b6001600160a01b031663691f3431896040518263ffffffff1660e01b815260040161450d91815260200190565b600060405180830381865afa15801561452a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052614552919081019061533e565b9650601f811115801561456457508715155b156145765761457382876150ed565b95505b6000614581886147da565b11801561458e5750602081105b1561461b5761459d85876150ed565b95506145c88b886040518060400160405280600681526020016530bb30ba30b960d11b8152506148dd565b156145da576145d784876150ed565b95505b6146098b886040518060400160405280600c81526020016b1b5957dcdd185d195b595b9d60a21b8152506148dd565b1561461b5761461883876150ed565b95505b61462685600261512e565b945061463384600261512e565b935061464083600261512e565b925061464d82600261512e565b915060010161431c565b50939a9950505050505050505050565b604080516002808252606080830184529260009291906020830190803683375050845191925060009182915081905b808210156147cf5760008783815181106146b2576146b26152df565b01602001516001600160f81b0319169050601760f91b81900361470257828685815181106146e2576146e26152df565b60ff90921660209283029190910190910152836146fe816152f5565b9450505b600160ff1b6001600160f81b03198216101561472a576147236001846150ed565b92506147bc565b600760fd1b6001600160f81b03198216101561474b576147236002846150ed565b600f60fc1b6001600160f81b03198216101561476c576147236003846150ed565b601f60fb1b6001600160f81b03198216101561478d576147236004846150ed565b603f60fa1b6001600160f81b0319821610156147ae576147236005846150ed565b6147b96006846150ed565b92505b50836147c7816152f5565b945050614696565b509295945050505050565b8051600090819081905b808210156148d4576000858381518110614800576148006152df565b01602001516001600160f81b0319169050600160ff1b81101561482f576148286001846150ed565b92506148c1565b600760fd1b6001600160f81b031982161015614850576148286002846150ed565b600f60fc1b6001600160f81b031982161015614871576148286003846150ed565b601f60fb1b6001600160f81b031982161015614892576148286004846150ed565b603f60fa1b6001600160f81b0319821610156148b3576148286005846150ed565b6148be6006846150ed565b92505b50826148cc816152f5565b9350506147e4565b50909392505050565b600080846001600160a01b03166373a9615c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561491e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149429190615167565b6001600160a01b03166359d1d43c61495a8688613b45565b856040518363ffffffff1660e01b815260040161497892919061569a565b600060405180830381865afa158015614995573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526149bd919081019061533e565b5111949350505050565b610650806156b483390190565b6001600160a01b0381168114610c8457600080fd5b600080604083850312156149fc57600080fd5b8235614a07816149d4565b946020939093013593505050565b60008060408385031215614a2857600080fd5b50508035926020909101359150565b600080600060608486031215614a4c57600080fd5b8335614a57816149d4565b92506020840135614a67816149d4565b929592945050506040919091013590565b600060208284031215614a8a57600080fd5b5035919050565b600060208284031215614aa357600080fd5b8135611ae6816149d4565b60008060408385031215614ac157600080fd5b823591506020830135614ad3816149d4565b809150509250929050565b600081518084526020840193506020830160005b82811015614b10578151865260209586019590910190600101614af2565b5093949350505050565b602081526000611ae66020830184614ade565b60005b83811015614b48578181015183820152602001614b30565b50506000910152565b60008151808452614b69816020860160208601614b2d565b601f01601f19169290920160200192915050565b602081526000611ae66020830184614b51565b600081518084526020840193506020830160005b82811015614b105781516001600160a01b0316865260209586019590910190600101614ba4565b606081526000614bde6060830186614ade565b8281036020840152614bf08186614b90565b90508281036040840152614c048185614ade565b9695505050505050565b600080600080600060a08688031215614c2657600080fd5b8535614c31816149d4565b94506020860135935060408601359250606086013591506080860135614c56816149d4565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614ca257614ca2614c64565b604052919050565b60006001600160401b03821115614cc357614cc3614c64565b50601f01601f191660200190565b6000614ce4614cdf84614caa565b614c7a565b9050828152838383011115614cf857600080fd5b828260208301376000602084830101529392505050565b600080600060608486031215614d2457600080fd5b83356001600160401b03811115614d3a57600080fd5b8401601f81018613614d4b57600080fd5b614d5a86823560208401614cd1565b9660208601359650604090950135949350505050565b60008060208385031215614d8357600080fd5b82356001600160401b03811115614d9957600080fd5b8301601f81018513614daa57600080fd5b80356001600160401b03811115614dc057600080fd5b8560208260051b8401011115614dd557600080fd5b6020919091019590945092505050565b60008060008060808587031215614dfb57600080fd5b84359350602085013592506040850135614e14816149d4565b915060608501356001600160401b03811115614e2f57600080fd5b8501601f81018713614e4057600080fd5b614e4f87823560208401614cd1565b91505092959194509250565b600080600060608486031215614e7057600080fd5b833592506020840135614e82816149d4565b91506040840135614e92816149d4565b809150509250925092565b60008060408385031215614eb057600080fd5b8235614ebb816149d4565b91506020830135614ad3816149d4565b600080600060608486031215614ee057600080fd5b83359250602084013591506040840135614e92816149d4565b6001600160a01b0386811682528516602082015260a060408201819052600090614f2590830186614b51565b8281036060840152614f378186614b51565b90508281036080840152614f4b8185614b90565b98975050505050505050565b60008083601f840112614f6957600080fd5b5081356001600160401b03811115614f8057600080fd5b602083019150836020828501011115614f9857600080fd5b9250929050565b60008060008060008060a08789031215614fb857600080fd5b8635614fc3816149d4565b95506020870135614fd3816149d4565b9450604087013593506060870135925060808701356001600160401b03811115614ffc57600080fd5b61500889828a01614f57565b979a9699509497509295939492505050565b6000806000806060858703121561503057600080fd5b84356001600160401b0381111561504657600080fd5b61505287828801614f57565b9095509350506020850135615066816149d4565b9396929550929360400135925050565b60a08152600061508960a0830188614ade565b828103602084015261509b8188614b51565b905082810360408401526150af8187614b90565b905082810360608401526150c38186614ade565b90508281036080840152614f4b8185614b51565b634e487b7160e01b600052601160045260246000fd5b80820180821115611432576114326150d7565b6020808252600190820152603960f91b604082015260600190565b81810381811115611432576114326150d7565b8082028115828204841417611432576114326150d7565b60008261516257634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561517957600080fd5b8151611ae6816149d4565b60006001600160401b0382111561519d5761519d614c64565b5060051b60200190565b6000602082840312156151b957600080fd5b81516001600160401b038111156151cf57600080fd5b8201601f810184136151e057600080fd5b80516151ee614cdf82615184565b8082825260208201915060208360051b85010192508683111561521057600080fd5b6020840193505b82841015614c0457835161522a816149d4565b825260209384019390910190615217565b60006020828403121561524d57600080fd5b5051919050565b60006020828403121561526657600080fd5b81516001600160401b0381111561527c57600080fd5b8201601f8101841361528d57600080fd5b805161529b614cdf82615184565b8082825260208201915060208360051b8501019250868311156152bd57600080fd5b6020840193505b82841015614c045783518252602093840193909101906152c4565b634e487b7160e01b600052603260045260246000fd5b600060018201615307576153076150d7565b5060010190565b600061531c614cdf84614caa565b905082815283838301111561533057600080fd5b611ae6836020830184614b2d565b60006020828403121561535057600080fd5b81516001600160401b0381111561536657600080fd5b8201601f8101841361537757600080fd5b6153868482516020840161530e565b949350505050565b6b1c1c184b9d5b99dc985d995b60a21b8152600082516153b581600c850160208701614b2d565b91909101600c0192915050565b6001600160a01b03841681526060602082018190526000906153e690830185614b51565b905060018060a01b0383166040830152949350505050565b600082601f83011261540f57600080fd5b611ae68383516020850161530e565b6000806040838503121561543157600080fd5b825160208401519092506001600160401b0381111561544f57600080fd5b61545b858286016153fe565b9150509250929050565b604081528260408201528284606083013760006060848301015260006060601f19601f8601168301019050826020830152949350505050565b600080600080600060a086880312156154b657600080fd5b855160208701519095506154c9816149d4565b60408701519094506154da816149d4565b60608701519093506154eb816149d4565b60808701519092506001600160401b0381111561550757600080fd5b615513888289016153fe565b9150509295509295909350565b60006020828403121561553257600080fd5b81518015158114611ae657600080fd5b60008251615554818460208701614b2d565b9190910192915050565b60008161556d5761556d6150d7565b506000190190565b6001815b60018411156155b057808504811115615594576155946150d7565b60018416156155a257908102905b60019390931c928002615579565b935093915050565b6000826155c757506001611432565b816155d457506000611432565b81600181146155ea57600281146155f457615610565b6001915050611432565b60ff841115615605576156056150d7565b50506001821b611432565b5060208310610133831016604e8410600b8410161715615633575081810a611432565b6156406000198484615575565b8060001904821115615654576156546150d7565b029392505050565b6000611ae683836155b8565b60ff8181168382160190811115611432576114326150d7565b60ff8281168282160390811115611432576114326150d7565b8281526040602082015260006153866040830184614b5156fe60c0604052600160005560405161065038038061065083398101604081905261002791610232565b6001600160a01b0383161580159061004757506001600160a01b03811615155b61005357610053610309565b6001600160a01b0383166080526040805163530ca43760e11b81529051339163a619486e9160048083019260209291908290030181865afa15801561009c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100c0919061031f565b6001600160a01b031663functionSignature04e80e906040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100fd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610121919061031f565b6001600160a01b031660a05260405130907f1ba71f9564fde2683a8a8cdc86fb4d2710c19374a52c8719412dee7270841d8490600090a260405163c47f002760e01b81526001600160a01b0382169063c47f002790610184908590600401610343565b6020604051808303816000875af11580156101a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610376565b5050505061038f565b6001600160a01b03811681146101e557600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b83811015610219578181015183820152602001610201565b50506000910152565b805161022d816101d0565b919050565b60008060006060848603121561024757600080fd5b8351610252816101d0565b60208501519093506001600160401b0381111561026e57600080fd5b8401601f8101861361027f57600080fd5b80516001600160401b03811115610298576102986101e8565b604051601f8201601f19908116603f011681016001600160401b03811182821017156102c6576102c66101e8565b6040528181528282016020018810156102de57600080fd5b6102ef8260208301602086016101fe565b935061030091505060408501610222565b90509250925092565b634e487b7160e01b600052600160045260246000fd5b60006020828403121561033157600080fd5b815161033c816101d0565b9392505050565b60208152600082518060208401526103628160408501602087016101fe565b601f01601f19169190910160400192915050565b60006020828403121561038857600080fd5b5051919050565b60805160a0516102976103b9600039600060c2015260008181605201526101ca01526102976000f3fe6080604052600436106100225760003560e01c8063b9a0cbe8146101b857600080fd5b366101b3576001600080828254610039919061021e565b9091555050600054341561017c573a6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166108fc6100828362099e18610237565b61008c903461024e565b6040518115909202916000818181858888f193505050501580156100b4573d6000803e3d6000fd5b506040516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016904780156108fc02916000818181858888f1935050505015801561010a573d6000803e3d6000fd5b5047156101425760405162461bcd60e51b81526020600482015260016024820152600760fc1b60448201526064015b60405180910390fd5b604080513381523460208201527f927ab32c68a90a4cf460f95be1736eb7d1e77681f3320c240f853ca95ee2827f910160405180910390a1505b60005481146101b15760405162461bcd60e51b81526020600482015260016024820152603960f91b6044820152606401610139565b005b600080fd5b3480156101c457600080fd5b506101ec7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b634e487b7160e01b600052601160045260246000fd5b8082018082111561023157610231610208565b92915050565b808202811582820484141761023157610231610208565b818103818111156102315761023161020856fecborAuxdataa2646970667358221220a1f428f752d9ecc9a7557cef0581d06c96326f1af5f4ba26eea9fae253b20b9164736f6c634300081e0033eventSignatureddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efcborAuxdataa2646970667358221220d980fba914cbb25986563ce068c62607994fe51828907e385ff4021e9ede92d064736f6c634300081e0033

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: QmedP75HaR7oPJRrjWVoez98J2sYPQNPbzNgQkrp4q3ABq
RawDecoded
Length: 53 bytes
0xa2646970667358221220f204389894edf94564f8c09ec0d9c63a12b66f55b4b8515b520cd1b3f9ad3e2864736f6c634300081e0033

CBOR Auxdata id: 2

View on IPFS Logo
Solidity metadata.json IPFS hash: QmXxFdtXyJMCFnJUd3YMaWkef7xXoqLkxb1x5RMUwv1cks
RawDecoded
Length: 53 bytes
0xa26469706673582212208ed800c8dea1f3958254e80a2729ce459c959f8b9d8b47da70a880ba682950ac64736f6c634300081e0033

Transformations

Immutable Transformations

IDValueOffsets
7620x000000000000000000000000827ad71b2118225eeea9e3ed36ac7b2900d826331362, 15706, 15873

CBOR Auxdata Transformations

Byte OffsetsLength (bytes)Values
2375954
Original (recompiled):0xa26469706673582212208ed800c8dea1f3958254e80a2729ce459c959f8b9d8b47da70a880ba682950ac64736f6c634300081e0033
Transformed (onchain):0xa2646970667358221220a1f428f752d9ecc9a7557cef0581d06c96326f1af5f4ba26eea9fae253b20b9164736f6c634300081e0033
2384454
Original (recompiled):0xa2646970667358221220f204389894edf94564f8c09ec0d9c63a12b66f55b4b8515b520cd1b3f9ad3e2864736f6c634300081e0033
Transformed (onchain):0xa2646970667358221220d980fba914cbb25986563ce068c62607994fe51828907e385ff4021e9ede92d064736f6c634300081e0033

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...
0x10d32b459c7d64e3385531f3ab75845ee30ee3f9 on Linea (59144)