Address Details
contract

0x7D28570135A2B1930F331c507F65039D4937f66c

Creator
0x4a27c0–5f6ee3 at 0xba43fd–31c7bc
Balance
0 CELO ( )
Locked CELO Balance
0.00 CELO
Voting CELO Balance
0.00 CELO
Pending Unlocked Gold
0.00 CELO
Tokens
Fetching tokens...
Transactions
123,599 Transactions
Transfers
2,763,264 Transfers
Gas Used
66,397,296,553
Last Balance Update
24808506

Contract Creation Code

Verify & Publish
0x60c06040523480156200001157600080fd5b50604051620035be380380620035be8339810160408190526200003491620001c9565b60016000908155602160f51b6080526001600160601b0319606084901b1660a052600380546001600160a01b03191633908117909155604051839282916000805160206200359e833981519152908290a35062000091816200009a565b50505062000200565b6003546001600160a01b03163314620000fa5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b038116620001615760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000f1565b6003546040516001600160a01b038084169216906000805160206200359e83398151915290600090a3600380546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001c457600080fd5b919050565b60008060408385031215620001dc578182fd5b620001e783620001ac565b9150620001f760208401620001ac565b90509250929050565b60805160f01c60a05160601c61333a620002646000396000818161032e0152818161037201528181610404015281816108d101528181610d1c01528181610e70015281816112e001526113d00152600081816101c501526118fc015261333a6000f3fe608060405234801561001057600080fd5b50600436106101515760003560e01c8063809d8772116100cd578063d06ca61f11610081578063f2fde38b11610066578063f2fde38b14610303578063f3fef3a314610316578063f887ea401461032957610151565b8063d06ca61f146102e7578063e02f7d1a146102fa57610151565b80638980f11f116100b25780638980f11f146102965780638da5cb5b146102a9578063b334ed86146102c757610151565b8063809d8772146102705780638803dbee1461028357610151565b806347e7ef24116101245780635c11d795116101095780635c11d79514610235578063715018a6146102485780637574bb7c1461025057610151565b806347e7ef241461020d578063485cc9551461022257610151565b806316f0115b146101565780631f00ca74146101a0578063241e6006146101c057806338ed1739146101fa575b600080fd5b6001546101769073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6101b36101ae366004612e80565b610350565b6040516101979190612ff6565b6101e77f000000000000000000000000000000000000000000000000000000000000000081565b60405161ffff9091168152602001610197565b6101b3610208366004612eca565b6103a3565b61022061021b366004612c90565b6104d0565b005b610220610230366004612c0c565b6105d0565b610220610243366004612eca565b610773565b610220610b6d565b61026361025e366004612cbb565b610c5d565b604051610197919061308b565b6101b361027e366004612d93565b610cae565b6101b3610291366004612eca565b610cbb565b6102206102a4366004612c90565b610d58565b60035473ffffffffffffffffffffffffffffffffffffffff16610176565b6002546101769073ffffffffffffffffffffffffffffffffffffffff1681565b6101b36102f5366004612e80565b610e4e565b6101e761042081565b610220610311366004612bf0565b610e97565b610220610324366004612c90565b611049565b6101767f000000000000000000000000000000000000000000000000000000000000000081565b6002546060906103999073ffffffffffffffffffffffffffffffffffffffff167f0000000000000000000000000000000000000000000000000000000000000000868686611143565b90505b9392505050565b606060006103b486868a6000611239565b608081015151909150156104b75760808101516040517f38ed173900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016916338ed173991610440918c918c919030908a90600401613105565b600060405180830381600087803b15801561045a57600080fd5b505af115801561046e573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526104b49190810190612cfb565b91505b6104c48183888888611508565b98975050505050505050565b6104f273ffffffffffffffffffffffffffffffffffffffff8316333084611723565b610500828260016000611805565b6002546040517fd2493b6c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063d2493b6c9060240160606040518083038186803b15801561056c57600080fd5b505afa158015610580573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a49190612c44565b509091506105cb905073ffffffffffffffffffffffffffffffffffffffff82163384611b0f565b505050565b60015473ffffffffffffffffffffffffffffffffffffffff161561067a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4c656e64696e67506f6f6c577261707065723a20706f6f6c20616c726561647960448201527f207365740000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60025473ffffffffffffffffffffffffffffffffffffffff1615610720576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f4c656e64696e67506f6f6c577261707065723a206461746150726f766964657260448201527f20616c72656164792073657400000000000000000000000000000000000000006064820152608401610671565b6001805473ffffffffffffffffffffffffffffffffffffffff9384167fffffffffffffffffffffffff00000000000000000000000000000000000000009182161790915560028054929093169116179055565b60006107828585896000611239565b90506000808260800151511115610a4b57600086866107a2600182613205565b8181106107d8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906107ed9190612bf0565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff91909116906370a082319060240160206040518083038186803b15801561085457600080fd5b505afa158015610868573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088c9190612e68565b60808401516040517f5c11d79500000000000000000000000000000000000000000000000000000000815291925073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001691635c11d7959161090c918d918d9130908b90600401613105565b600060405180830381600087803b15801561092657600080fd5b505af115801561093a573d6000803e3d6000fd5b5060009250899150889050610950600182613205565b818110610986577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b905060200201602081019061099b9190612bf0565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff91909116906370a082319060240160206040518083038186803b158015610a0257600080fd5b505afa158015610a16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3a9190612e68565b9050610a468282613205565b925050505b602082015173ffffffffffffffffffffffffffffffffffffffff1615610a8057610a8082602001518284606001516002611805565b610afa84828888610a92600182613205565b818110610ac8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190610add9190612bf0565b73ffffffffffffffffffffffffffffffffffffffff169190611b0f565b8373ffffffffffffffffffffffffffffffffffffffff168686604051610b21929190612f8b565b604080519182900382208b8352602083018590529133917f04b3119c7a3ee7004ce67e131cc44caf400a354bd8c1f9ef0a1b0e630e11c9b9910160405180910390a45050505050505050565b60035473ffffffffffffffffffffffffffffffffffffffff163314610bee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610671565b60035460405160009173ffffffffffffffffffffffffffffffffffffffff16907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6040805160a081018252600080825260208201819052918101829052606080820192909252608081019190915260025461039c9073ffffffffffffffffffffffffffffffffffffffff168484611b65565b606061039984848461246f565b60606000610ccc868660008b611239565b608081015151909150156104b75760808101516040517f8803dbee00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001691638803dbee91610440918c918c919030908a90600401613105565b60035473ffffffffffffffffffffffffffffffffffffffff163314610dd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610671565b610dfa73ffffffffffffffffffffffffffffffffffffffff83163383611b0f565b8173ffffffffffffffffffffffffffffffffffffffff167f8c1256b8896378cd5044f80c202f9772b9d77dc85c8a6eb51967210b09bfaa2882604051610e4291815260200190565b60405180910390a25050565b6002546060906103999073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000086868661273f565b60035473ffffffffffffffffffffffffffffffffffffffff163314610f18576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610671565b73ffffffffffffffffffffffffffffffffffffffff8116610fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610671565b60035460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6002546040517fd2493b6c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063d2493b6c9060240160606040518083038186803b1580156110b557600080fd5b505afa1580156110c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ed9190612c44565b50909150611115905073ffffffffffffffffffffffffffffffffffffffff8216333085611723565b6111228383600080611805565b6105cb73ffffffffffffffffffffffffffffffffffffffff84163384611b0f565b60606000611152878585611b65565b60808101516040517f1f00ca7400000000000000000000000000000000000000000000000000000000815291925061122e9173ffffffffffffffffffffffffffffffffffffffff891691631f00ca74916111b0918a916004016130ec565b60006040518083038186803b1580156111c857600080fd5b505afa1580156111dc573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526112229190810190612cfb565b8251602084015161246f565b979650505050505050565b6040805160a081018252600080825260208201819052918101829052606080820192909252608081019190915260025461128a9073ffffffffffffffffffffffffffffffffffffffff168686611b65565b6080810151519091501561145b5781156113cb5760808101516040517f1f00ca7400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001691631f00ca74916113159186916004016130ec565b60006040518083038186803b15801561132d57600080fd5b505afa158015611341573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526113879190810190612cfb565b6000815181106113c0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015192505b61145b7f000000000000000000000000000000000000000000000000000000000000000084836080015160008151811061142e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff166127ac9092919063ffffffff16565b6114ce3330858888600081811061149b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906114b09190612bf0565b73ffffffffffffffffffffffffffffffffffffffff16929190611723565b805173ffffffffffffffffffffffffffffffffffffffff16156115005761150081600001518483604001516001611805565b949350505050565b606061151d858760000151886020015161246f565b602087015190915073ffffffffffffffffffffffffffffffffffffffff16156115a2576115a2866020015182600184516115579190613205565b8151811061158e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015188606001516002611805565b6116048282600184516115b59190613205565b815181106115ec577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60209081029190910101518686610a92600182613205565b8173ffffffffffffffffffffffffffffffffffffffff16848460405161162b929190612f8b565b60405180910390203373ffffffffffffffffffffffffffffffffffffffff167f04b3119c7a3ee7004ce67e131cc44caf400a354bd8c1f9ef0a1b0e630e11c9b9846000815181106116a5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015185600187516116bc9190613205565b815181106116f3577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151604051611712929190918252602082015260400190565b60405180910390a495945050505050565b60405173ffffffffffffffffffffffffffffffffffffffff808516602483015283166044820152606481018290526117ff9085907f23b872dd00000000000000000000000000000000000000000000000000000000906084015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915261293d565b50505050565b60026000541415611872576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610671565b600260005581156119eb576001546118a49073ffffffffffffffffffffffffffffffffffffffff8681169116856127ac565b6001546040517fe8eda9df00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301526024820186905230604483015261ffff7f00000000000000000000000000000000000000000000000000000000000000001660648301529091169063e8eda9df90608401600060405180830381600087803b15801561194857600080fd5b505af115801561195c573d6000803e3d6000fd5b50505050806002811115611999577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604051848152339073ffffffffffffffffffffffffffffffffffffffff8716907fa2deda57a8a9061bddc1027447650c7fe8c083de66b011362866e2549e3355eb9060200160405180910390a4611b04565b6001546040517f69328dec00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff868116600483015260248201869052306044830152909116906369328dec90606401600060405180830381600087803b158015611a6557600080fd5b505af1158015611a79573d6000803e3d6000fd5b50505050806002811115611ab6577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604051848152339073ffffffffffffffffffffffffffffffffffffffff8716907f64ce55deefd7ff36f31fd31f72ebc3a95f6db721a6d39ca12ce5269f4b8811949060200160405180910390a45b505060016000555050565b60405173ffffffffffffffffffffffffffffffffffffffff83166024820152604481018290526105cb9084907fa9059cbb000000000000000000000000000000000000000000000000000000009060640161177d565b6040805160a0810182526000808252602082018190529181018290526060808201839052608082015290828173ffffffffffffffffffffffffffffffffffffffff871663d2493b6c87848481611be4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611bf99190612bf0565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff909116600482015260240160606040518083038186803b158015611c5d57600080fd5b505afa158015611c71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c959190612c44565b5050905060008773ffffffffffffffffffffffffffffffffffffffff1663d2493b6c88886001818110611cf1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611d069190612bf0565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff909116600482015260240160606040518083038186803b158015611d6a57600080fd5b505afa158015611d7e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611da29190612c44565b5050905086866001818110611de0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611df59190612bf0565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ea95786866000818110611e62577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611e779190612bf0565b73ffffffffffffffffffffffffffffffffffffffff168552600160408601819052611ea290856131ed565b9350611fa7565b8073ffffffffffffffffffffffffffffffffffffffff1687876000818110611efa577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611f0f9190612bf0565b73ffffffffffffffffffffffffffffffffffffffff161415611fa75786866001818110611f65577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611f7a9190612bf0565b73ffffffffffffffffffffffffffffffffffffffff16855260006040860152611fa46001856131ed565b93505b60038610801590611fc55750600386148015611fc35750600084115b155b1561242157600073ffffffffffffffffffffffffffffffffffffffff891663d2493b6c8989611ff5600282613205565b81811061202b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906120409190612bf0565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff909116600482015260240160606040518083038186803b1580156120a457600080fd5b505afa1580156120b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120dc9190612c44565b509091506000905073ffffffffffffffffffffffffffffffffffffffff8a1663d2493b6c8a8a61210d600182613205565b818110612143577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906121589190612bf0565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff909116600482015260240160606040518083038186803b1580156121bc57600080fd5b505afa1580156121d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f49190612c44565b5090915089905088612207600182613205565b81811061223d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906122529190612bf0565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612312578888612292600282613205565b8181106122c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906122dd9190612bf0565b73ffffffffffffffffffffffffffffffffffffffff16602088015260016060880181905261230b9086613205565b945061241e565b73ffffffffffffffffffffffffffffffffffffffff81168989612336600282613205565b81811061236c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906123819190612bf0565b73ffffffffffffffffffffffffffffffffffffffff16141561241e5788886123aa600182613205565b8181106123e0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906123f59190612bf0565b73ffffffffffffffffffffffffffffffffffffffff16602088015261241b600186613205565b94505b50505b61242d8385888a6131c1565b80806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250505050608086015250929695505050505050565b6060600073ffffffffffffffffffffffffffffffffffffffff8416612495576000612498565b60015b60ff169050600073ffffffffffffffffffffffffffffffffffffffff84166124c15760006124c4565b60015b60ff1690506000818388516124d991906131ed565b6124e391906131ed565b90508067ffffffffffffffff811115612525577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405190808252806020026020018201604052801561254e578160200160208202803683370190505b50935082156125e05786600081518110612591577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151846000815181106125d3577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010181815250505b81156126865786600188516125f59190613205565b8151811061262c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151846001836126429190613205565b81518110612679577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010181815250505b60005b8751811015612734578781815181106126cb577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101518585836126e091906131ed565b81518110612717577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60209081029190910101528061272c81613248565b915050612689565b505050509392505050565b6060600061274e878585611b65565b60808101516040517fd06ca61f00000000000000000000000000000000000000000000000000000000815291925061122e9173ffffffffffffffffffffffffffffffffffffffff89169163d06ca61f916111b0918a916004016130ec565b80158061285b57506040517fdd62ed3e00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff838116602483015284169063dd62ed3e9060440160206040518083038186803b15801561282157600080fd5b505afa158015612835573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128599190612e68565b155b6128e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60448201527f20746f206e6f6e2d7a65726f20616c6c6f77616e6365000000000000000000006064820152608401610671565b60405173ffffffffffffffffffffffffffffffffffffffff83166024820152604481018290526105cb9084907f095ea7b3000000000000000000000000000000000000000000000000000000009060640161177d565b600061299f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff16612a499092919063ffffffff16565b8051909150156105cb57808060200190518101906129bd9190612e48565b6105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610671565b6060610399848460008585612a5d85612b3e565b612ac3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610671565b6000808673ffffffffffffffffffffffffffffffffffffffff168587604051612aec9190612fda565b60006040518083038185875af1925050503d8060008114612b29576040519150601f19603f3d011682016040523d82523d6000602084013e612b2e565b606091505b509150915061122e828286612b48565b803b15155b919050565b60608315612b5757508161039c565b825115612b675782518084602001fd5b816040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610671919061303a565b8035612b43816132df565b60008083601f840112612bb7578182fd5b50813567ffffffffffffffff811115612bce578182fd5b6020830191508360208260051b8501011115612be957600080fd5b9250929050565b600060208284031215612c01578081fd5b813561039c816132df565b60008060408385031215612c1e578081fd5b8235612c29816132df565b91506020830135612c39816132df565b809150509250929050565b600080600060608486031215612c58578081fd5b8351612c63816132df565b6020850151909350612c74816132df565b6040850151909250612c85816132df565b809150509250925092565b60008060408385031215612ca2578182fd5b8235612cad816132df565b946020939093013593505050565b60008060208385031215612ccd578182fd5b823567ffffffffffffffff811115612ce3578283fd5b612cef85828601612ba6565b90969095509350505050565b60006020808385031215612d0d578182fd5b825167ffffffffffffffff811115612d23578283fd5b8301601f81018513612d33578283fd5b8051612d46612d418261319d565b61314e565b80828252848201915084840188868560051b8701011115612d65578687fd5b8694505b83851015612d87578051835260019490940193918501918501612d69565b50979650505050505050565b600080600060608486031215612da7578283fd5b833567ffffffffffffffff811115612dbd578384fd5b8401601f81018613612dcd578384fd5b80356020612ddd612d418361319d565b8083825282820191508285018a848660051b8801011115612dfc578889fd5b8895505b84861015612e1e578035835260019590950194918301918301612e00565b509650612e2e9050878201612b9b565b9450505050612e3f60408501612b9b565b90509250925092565b600060208284031215612e59578081fd5b8151801515811461039c578182fd5b600060208284031215612e79578081fd5b5051919050565b600080600060408486031215612e94578283fd5b83359250602084013567ffffffffffffffff811115612eb1578283fd5b612ebd86828701612ba6565b9497909650939450505050565b60008060008060008060a08789031215612ee2578182fd5b8635955060208701359450604087013567ffffffffffffffff811115612f06578283fd5b612f1289828a01612ba6565b9095509350506060870135612f26816132df565b80925050608087013590509295509295509295565b6000815180845260208085019450808401835b83811015612f8057815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101612f4e565b509495945050505050565b60008184825b85811015612fcf578135612fa4816132df565b73ffffffffffffffffffffffffffffffffffffffff1683526020928301929190910190600101612f91565b509095945050505050565b60008251612fec81846020870161321c565b9190910192915050565b6020808252825182820181905260009190848201906040850190845b8181101561302e57835183529284019291840191600101613012565b50909695505050505050565b600060208252825180602084015261305981604085016020870161321c565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60006020825273ffffffffffffffffffffffffffffffffffffffff80845116602084015280602085015116604084015250604083015115156060830152606083015115156080830152608083015160a08084015261150060c0840182612f3b565b6000838252604060208301526103996040830184612f3b565b600086825285602083015260a0604083015261312460a0830186612f3b565b73ffffffffffffffffffffffffffffffffffffffff94909416606083015250608001529392505050565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715613195576131956132b0565b604052919050565b600067ffffffffffffffff8211156131b7576131b76132b0565b5060051b60200190565b600080858511156131d0578182fd5b838611156131dc578182fd5b5050600583901b0193919092039150565b6000821982111561320057613200613281565b500190565b60008282101561321757613217613281565b500390565b60005b8381101561323757818101518382015260200161321f565b838111156117ff5750506000910152565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561327a5761327a613281565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b73ffffffffffffffffffffffffffffffffffffffff8116811461330157600080fd5b5056fea26469706673582212207907e8577b136d2e547d89997222e2b247c1a6209848a92b6bd11dea6c3988c564736f6c634300080300338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0000000000000000000000000e3d8bd6aed4f159bc8000a9cd47cffdb95f96121000000000000000000000000489aac7cb9a3b233e4a289ec92284c8d83d49c6f

Deployed ByteCode

0x608060405234801561001057600080fd5b50600436106101515760003560e01c8063809d8772116100cd578063d06ca61f11610081578063f2fde38b11610066578063f2fde38b14610303578063f3fef3a314610316578063f887ea401461032957610151565b8063d06ca61f146102e7578063e02f7d1a146102fa57610151565b80638980f11f116100b25780638980f11f146102965780638da5cb5b146102a9578063b334ed86146102c757610151565b8063809d8772146102705780638803dbee1461028357610151565b806347e7ef24116101245780635c11d795116101095780635c11d79514610235578063715018a6146102485780637574bb7c1461025057610151565b806347e7ef241461020d578063485cc9551461022257610151565b806316f0115b146101565780631f00ca74146101a0578063241e6006146101c057806338ed1739146101fa575b600080fd5b6001546101769073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6101b36101ae366004612e80565b610350565b6040516101979190612ff6565b6101e77f000000000000000000000000000000000000000000000000000000000000042081565b60405161ffff9091168152602001610197565b6101b3610208366004612eca565b6103a3565b61022061021b366004612c90565b6104d0565b005b610220610230366004612c0c565b6105d0565b610220610243366004612eca565b610773565b610220610b6d565b61026361025e366004612cbb565b610c5d565b604051610197919061308b565b6101b361027e366004612d93565b610cae565b6101b3610291366004612eca565b610cbb565b6102206102a4366004612c90565b610d58565b60035473ffffffffffffffffffffffffffffffffffffffff16610176565b6002546101769073ffffffffffffffffffffffffffffffffffffffff1681565b6101b36102f5366004612e80565b610e4e565b6101e761042081565b610220610311366004612bf0565b610e97565b610220610324366004612c90565b611049565b6101767f000000000000000000000000e3d8bd6aed4f159bc8000a9cd47cffdb95f9612181565b6002546060906103999073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000e3d8bd6aed4f159bc8000a9cd47cffdb95f96121868686611143565b90505b9392505050565b606060006103b486868a6000611239565b608081015151909150156104b75760808101516040517f38ed173900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000e3d8bd6aed4f159bc8000a9cd47cffdb95f9612116916338ed173991610440918c918c919030908a90600401613105565b600060405180830381600087803b15801561045a57600080fd5b505af115801561046e573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526104b49190810190612cfb565b91505b6104c48183888888611508565b98975050505050505050565b6104f273ffffffffffffffffffffffffffffffffffffffff8316333084611723565b610500828260016000611805565b6002546040517fd2493b6c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063d2493b6c9060240160606040518083038186803b15801561056c57600080fd5b505afa158015610580573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a49190612c44565b509091506105cb905073ffffffffffffffffffffffffffffffffffffffff82163384611b0f565b505050565b60015473ffffffffffffffffffffffffffffffffffffffff161561067a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4c656e64696e67506f6f6c577261707065723a20706f6f6c20616c726561647960448201527f207365740000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60025473ffffffffffffffffffffffffffffffffffffffff1615610720576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f4c656e64696e67506f6f6c577261707065723a206461746150726f766964657260448201527f20616c72656164792073657400000000000000000000000000000000000000006064820152608401610671565b6001805473ffffffffffffffffffffffffffffffffffffffff9384167fffffffffffffffffffffffff00000000000000000000000000000000000000009182161790915560028054929093169116179055565b60006107828585896000611239565b90506000808260800151511115610a4b57600086866107a2600182613205565b8181106107d8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906107ed9190612bf0565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff91909116906370a082319060240160206040518083038186803b15801561085457600080fd5b505afa158015610868573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088c9190612e68565b60808401516040517f5c11d79500000000000000000000000000000000000000000000000000000000815291925073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000e3d8bd6aed4f159bc8000a9cd47cffdb95f961211691635c11d7959161090c918d918d9130908b90600401613105565b600060405180830381600087803b15801561092657600080fd5b505af115801561093a573d6000803e3d6000fd5b5060009250899150889050610950600182613205565b818110610986577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b905060200201602081019061099b9190612bf0565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff91909116906370a082319060240160206040518083038186803b158015610a0257600080fd5b505afa158015610a16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3a9190612e68565b9050610a468282613205565b925050505b602082015173ffffffffffffffffffffffffffffffffffffffff1615610a8057610a8082602001518284606001516002611805565b610afa84828888610a92600182613205565b818110610ac8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190610add9190612bf0565b73ffffffffffffffffffffffffffffffffffffffff169190611b0f565b8373ffffffffffffffffffffffffffffffffffffffff168686604051610b21929190612f8b565b604080519182900382208b8352602083018590529133917f04b3119c7a3ee7004ce67e131cc44caf400a354bd8c1f9ef0a1b0e630e11c9b9910160405180910390a45050505050505050565b60035473ffffffffffffffffffffffffffffffffffffffff163314610bee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610671565b60035460405160009173ffffffffffffffffffffffffffffffffffffffff16907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6040805160a081018252600080825260208201819052918101829052606080820192909252608081019190915260025461039c9073ffffffffffffffffffffffffffffffffffffffff168484611b65565b606061039984848461246f565b60606000610ccc868660008b611239565b608081015151909150156104b75760808101516040517f8803dbee00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000e3d8bd6aed4f159bc8000a9cd47cffdb95f961211691638803dbee91610440918c918c919030908a90600401613105565b60035473ffffffffffffffffffffffffffffffffffffffff163314610dd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610671565b610dfa73ffffffffffffffffffffffffffffffffffffffff83163383611b0f565b8173ffffffffffffffffffffffffffffffffffffffff167f8c1256b8896378cd5044f80c202f9772b9d77dc85c8a6eb51967210b09bfaa2882604051610e4291815260200190565b60405180910390a25050565b6002546060906103999073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000e3d8bd6aed4f159bc8000a9cd47cffdb95f9612186868661273f565b60035473ffffffffffffffffffffffffffffffffffffffff163314610f18576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610671565b73ffffffffffffffffffffffffffffffffffffffff8116610fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610671565b60035460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6002546040517fd2493b6c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063d2493b6c9060240160606040518083038186803b1580156110b557600080fd5b505afa1580156110c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ed9190612c44565b50909150611115905073ffffffffffffffffffffffffffffffffffffffff8216333085611723565b6111228383600080611805565b6105cb73ffffffffffffffffffffffffffffffffffffffff84163384611b0f565b60606000611152878585611b65565b60808101516040517f1f00ca7400000000000000000000000000000000000000000000000000000000815291925061122e9173ffffffffffffffffffffffffffffffffffffffff891691631f00ca74916111b0918a916004016130ec565b60006040518083038186803b1580156111c857600080fd5b505afa1580156111dc573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526112229190810190612cfb565b8251602084015161246f565b979650505050505050565b6040805160a081018252600080825260208201819052918101829052606080820192909252608081019190915260025461128a9073ffffffffffffffffffffffffffffffffffffffff168686611b65565b6080810151519091501561145b5781156113cb5760808101516040517f1f00ca7400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000e3d8bd6aed4f159bc8000a9cd47cffdb95f961211691631f00ca74916113159186916004016130ec565b60006040518083038186803b15801561132d57600080fd5b505afa158015611341573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526113879190810190612cfb565b6000815181106113c0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015192505b61145b7f000000000000000000000000e3d8bd6aed4f159bc8000a9cd47cffdb95f9612184836080015160008151811061142e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff166127ac9092919063ffffffff16565b6114ce3330858888600081811061149b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906114b09190612bf0565b73ffffffffffffffffffffffffffffffffffffffff16929190611723565b805173ffffffffffffffffffffffffffffffffffffffff16156115005761150081600001518483604001516001611805565b949350505050565b606061151d858760000151886020015161246f565b602087015190915073ffffffffffffffffffffffffffffffffffffffff16156115a2576115a2866020015182600184516115579190613205565b8151811061158e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015188606001516002611805565b6116048282600184516115b59190613205565b815181106115ec577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60209081029190910101518686610a92600182613205565b8173ffffffffffffffffffffffffffffffffffffffff16848460405161162b929190612f8b565b60405180910390203373ffffffffffffffffffffffffffffffffffffffff167f04b3119c7a3ee7004ce67e131cc44caf400a354bd8c1f9ef0a1b0e630e11c9b9846000815181106116a5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015185600187516116bc9190613205565b815181106116f3577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151604051611712929190918252602082015260400190565b60405180910390a495945050505050565b60405173ffffffffffffffffffffffffffffffffffffffff808516602483015283166044820152606481018290526117ff9085907f23b872dd00000000000000000000000000000000000000000000000000000000906084015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915261293d565b50505050565b60026000541415611872576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610671565b600260005581156119eb576001546118a49073ffffffffffffffffffffffffffffffffffffffff8681169116856127ac565b6001546040517fe8eda9df00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301526024820186905230604483015261ffff7f00000000000000000000000000000000000000000000000000000000000004201660648301529091169063e8eda9df90608401600060405180830381600087803b15801561194857600080fd5b505af115801561195c573d6000803e3d6000fd5b50505050806002811115611999577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604051848152339073ffffffffffffffffffffffffffffffffffffffff8716907fa2deda57a8a9061bddc1027447650c7fe8c083de66b011362866e2549e3355eb9060200160405180910390a4611b04565b6001546040517f69328dec00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff868116600483015260248201869052306044830152909116906369328dec90606401600060405180830381600087803b158015611a6557600080fd5b505af1158015611a79573d6000803e3d6000fd5b50505050806002811115611ab6577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604051848152339073ffffffffffffffffffffffffffffffffffffffff8716907f64ce55deefd7ff36f31fd31f72ebc3a95f6db721a6d39ca12ce5269f4b8811949060200160405180910390a45b505060016000555050565b60405173ffffffffffffffffffffffffffffffffffffffff83166024820152604481018290526105cb9084907fa9059cbb000000000000000000000000000000000000000000000000000000009060640161177d565b6040805160a0810182526000808252602082018190529181018290526060808201839052608082015290828173ffffffffffffffffffffffffffffffffffffffff871663d2493b6c87848481611be4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611bf99190612bf0565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff909116600482015260240160606040518083038186803b158015611c5d57600080fd5b505afa158015611c71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c959190612c44565b5050905060008773ffffffffffffffffffffffffffffffffffffffff1663d2493b6c88886001818110611cf1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611d069190612bf0565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff909116600482015260240160606040518083038186803b158015611d6a57600080fd5b505afa158015611d7e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611da29190612c44565b5050905086866001818110611de0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611df59190612bf0565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ea95786866000818110611e62577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611e779190612bf0565b73ffffffffffffffffffffffffffffffffffffffff168552600160408601819052611ea290856131ed565b9350611fa7565b8073ffffffffffffffffffffffffffffffffffffffff1687876000818110611efa577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611f0f9190612bf0565b73ffffffffffffffffffffffffffffffffffffffff161415611fa75786866001818110611f65577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190611f7a9190612bf0565b73ffffffffffffffffffffffffffffffffffffffff16855260006040860152611fa46001856131ed565b93505b60038610801590611fc55750600386148015611fc35750600084115b155b1561242157600073ffffffffffffffffffffffffffffffffffffffff891663d2493b6c8989611ff5600282613205565b81811061202b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906120409190612bf0565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff909116600482015260240160606040518083038186803b1580156120a457600080fd5b505afa1580156120b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120dc9190612c44565b509091506000905073ffffffffffffffffffffffffffffffffffffffff8a1663d2493b6c8a8a61210d600182613205565b818110612143577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906121589190612bf0565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff909116600482015260240160606040518083038186803b1580156121bc57600080fd5b505afa1580156121d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f49190612c44565b5090915089905088612207600182613205565b81811061223d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906122529190612bf0565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612312578888612292600282613205565b8181106122c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906122dd9190612bf0565b73ffffffffffffffffffffffffffffffffffffffff16602088015260016060880181905261230b9086613205565b945061241e565b73ffffffffffffffffffffffffffffffffffffffff81168989612336600282613205565b81811061236c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906123819190612bf0565b73ffffffffffffffffffffffffffffffffffffffff16141561241e5788886123aa600182613205565b8181106123e0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906123f59190612bf0565b73ffffffffffffffffffffffffffffffffffffffff16602088015261241b600186613205565b94505b50505b61242d8385888a6131c1565b80806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250505050608086015250929695505050505050565b6060600073ffffffffffffffffffffffffffffffffffffffff8416612495576000612498565b60015b60ff169050600073ffffffffffffffffffffffffffffffffffffffff84166124c15760006124c4565b60015b60ff1690506000818388516124d991906131ed565b6124e391906131ed565b90508067ffffffffffffffff811115612525577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405190808252806020026020018201604052801561254e578160200160208202803683370190505b50935082156125e05786600081518110612591577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151846000815181106125d3577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010181815250505b81156126865786600188516125f59190613205565b8151811061262c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151846001836126429190613205565b81518110612679577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010181815250505b60005b8751811015612734578781815181106126cb577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101518585836126e091906131ed565b81518110612717577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60209081029190910101528061272c81613248565b915050612689565b505050509392505050565b6060600061274e878585611b65565b60808101516040517fd06ca61f00000000000000000000000000000000000000000000000000000000815291925061122e9173ffffffffffffffffffffffffffffffffffffffff89169163d06ca61f916111b0918a916004016130ec565b80158061285b57506040517fdd62ed3e00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff838116602483015284169063dd62ed3e9060440160206040518083038186803b15801561282157600080fd5b505afa158015612835573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128599190612e68565b155b6128e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60448201527f20746f206e6f6e2d7a65726f20616c6c6f77616e6365000000000000000000006064820152608401610671565b60405173ffffffffffffffffffffffffffffffffffffffff83166024820152604481018290526105cb9084907f095ea7b3000000000000000000000000000000000000000000000000000000009060640161177d565b600061299f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff16612a499092919063ffffffff16565b8051909150156105cb57808060200190518101906129bd9190612e48565b6105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610671565b6060610399848460008585612a5d85612b3e565b612ac3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610671565b6000808673ffffffffffffffffffffffffffffffffffffffff168587604051612aec9190612fda565b60006040518083038185875af1925050503d8060008114612b29576040519150601f19603f3d011682016040523d82523d6000602084013e612b2e565b606091505b509150915061122e828286612b48565b803b15155b919050565b60608315612b5757508161039c565b825115612b675782518084602001fd5b816040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610671919061303a565b8035612b43816132df565b60008083601f840112612bb7578182fd5b50813567ffffffffffffffff811115612bce578182fd5b6020830191508360208260051b8501011115612be957600080fd5b9250929050565b600060208284031215612c01578081fd5b813561039c816132df565b60008060408385031215612c1e578081fd5b8235612c29816132df565b91506020830135612c39816132df565b809150509250929050565b600080600060608486031215612c58578081fd5b8351612c63816132df565b6020850151909350612c74816132df565b6040850151909250612c85816132df565b809150509250925092565b60008060408385031215612ca2578182fd5b8235612cad816132df565b946020939093013593505050565b60008060208385031215612ccd578182fd5b823567ffffffffffffffff811115612ce3578283fd5b612cef85828601612ba6565b90969095509350505050565b60006020808385031215612d0d578182fd5b825167ffffffffffffffff811115612d23578283fd5b8301601f81018513612d33578283fd5b8051612d46612d418261319d565b61314e565b80828252848201915084840188868560051b8701011115612d65578687fd5b8694505b83851015612d87578051835260019490940193918501918501612d69565b50979650505050505050565b600080600060608486031215612da7578283fd5b833567ffffffffffffffff811115612dbd578384fd5b8401601f81018613612dcd578384fd5b80356020612ddd612d418361319d565b8083825282820191508285018a848660051b8801011115612dfc578889fd5b8895505b84861015612e1e578035835260019590950194918301918301612e00565b509650612e2e9050878201612b9b565b9450505050612e3f60408501612b9b565b90509250925092565b600060208284031215612e59578081fd5b8151801515811461039c578182fd5b600060208284031215612e79578081fd5b5051919050565b600080600060408486031215612e94578283fd5b83359250602084013567ffffffffffffffff811115612eb1578283fd5b612ebd86828701612ba6565b9497909650939450505050565b60008060008060008060a08789031215612ee2578182fd5b8635955060208701359450604087013567ffffffffffffffff811115612f06578283fd5b612f1289828a01612ba6565b9095509350506060870135612f26816132df565b80925050608087013590509295509295509295565b6000815180845260208085019450808401835b83811015612f8057815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101612f4e565b509495945050505050565b60008184825b85811015612fcf578135612fa4816132df565b73ffffffffffffffffffffffffffffffffffffffff1683526020928301929190910190600101612f91565b509095945050505050565b60008251612fec81846020870161321c565b9190910192915050565b6020808252825182820181905260009190848201906040850190845b8181101561302e57835183529284019291840191600101613012565b50909695505050505050565b600060208252825180602084015261305981604085016020870161321c565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60006020825273ffffffffffffffffffffffffffffffffffffffff80845116602084015280602085015116604084015250604083015115156060830152606083015115156080830152608083015160a08084015261150060c0840182612f3b565b6000838252604060208301526103996040830184612f3b565b600086825285602083015260a0604083015261312460a0830186612f3b565b73ffffffffffffffffffffffffffffffffffffffff94909416606083015250608001529392505050565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715613195576131956132b0565b604052919050565b600067ffffffffffffffff8211156131b7576131b76132b0565b5060051b60200190565b600080858511156131d0578182fd5b838611156131dc578182fd5b5050600583901b0193919092039150565b6000821982111561320057613200613281565b500190565b60008282101561321757613217613281565b500390565b60005b8381101561323757818101518382015260200161321f565b838111156117ff5750506000910152565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561327a5761327a613281565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b73ffffffffffffffffffffffffffffffffffffffff8116811461330157600080fd5b5056fea26469706673582212207907e8577b136d2e547d89997222e2b247c1a6209848a92b6bd11dea6c3988c564736f6c63430008030033