VeChain
Explorer
Mainnet
Search
Networks
Main
Test
Contract
0xABC4Ae…3B02
Summary
Transactions
Transfers
Address
0xABC4Ae335e66C10d02D3a88350BD7f1660133B02
VET
0.00
VET
VTHO
0.00
VTHO
Master
0x098F2b53460b382850A60Af179C0EF7084533FAa
Deployer
0x098F2b53460b382850A60Af179C0EF7084533FAa
Code
0x6080604052600436106101635760003560e01c80637974cf7c116100c0578063b0e21e8a11610074578063d06ca61f11610059578063d06ca61f146103c0578063eef0f494146103e0578063f820574e146104005761016a565b8063b0e21e8a1461037e578063cb9f8ea7146103a05761016a565b80638da5cb5b116100a55780638da5cb5b146103295780639e281a981461033e578063a339cca11461035e5761016a565b80637974cf7c146102f45780637d9cc3e6146103145761016a565b806335d2541411610117578063534e7894116100fc578063534e78941461029457806372882732146102b4578063787dce3d146102d45761016a565b806335d254141461023a5780634e9c1118146102675761016a565b806324ca984e1161014857806324ca984e146101d857806325bcc90a146101fa5780632e1a7d4d1461021a5761016a565b80631f00ca741461016f57806323dfda73146101a85761016a565b3661016a57005b600080fd5b34801561017b57600080fd5b5061018f61018a366004614978565b610420565b60405161019f9493929190614b7c565b60405180910390f35b3480156101b457600080fd5b506101c86101c33660046149f1565b61153f565b60405161019f9493929190614c6a565b3480156101e457600080fd5b506101f86101f33660046146f5565b611e52565b005b34801561020657600080fd5b506101f86102153660046147df565b61204d565b34801561022657600080fd5b506101f8610235366004614948565b61253c565b34801561024657600080fd5b5061025a6102553660046146f5565b612612565b60405161019f9190614d21565b34801561027357600080fd5b50610287610282366004614948565b612627565b60405161019f9190614b0e565b3480156102a057600080fd5b506101f86102af3660046146f5565b61265e565b3480156102c057600080fd5b506101f86102cf366004614948565b6126f6565b3480156102e057600080fd5b506101f86102ef366004614948565b612c36565b34801561030057600080fd5b5061028761030f3660046147df565b612cc8565b34801561032057600080fd5b50610287612d1f565b34801561033557600080fd5b50610287612d3b565b34801561034a57600080fd5b506101f861035936600461481f565b612d57565b34801561036a57600080fd5b506101f861037936600461476c565b612f35565b34801561038a57600080fd5b50610393613153565b60405161019f9190614e8b565b3480156103ac57600080fd5b5061025a6103bb3660046146f5565b613159565b3480156103cc57600080fd5b5061018f6103db366004614978565b61316e565b3480156103ec57600080fd5b506101c86103fb3660046149f1565b61337b565b34801561040c57600080fd5b5061025a61041b366004614734565b613b7b565b60408051600280825260608083018452928392839260009284928492909160208301908036833701905050905087876000818110610487577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b905060200201602081019061049c91906146f5565b816000815181106104d6577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508787600181811061054a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b905060200201602081019061055f91906146f5565b81600181518110610599577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506105dd898261337b565b89600081518110610617577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010189600081518110610658577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010189600081518110610699577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602090810291909101019290925273ffffffffffffffffffffffffffffffffffffffff9093169052919052915087876000816106fe577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b905060200201602081019061071391906146f5565b8160008151811061074d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b73ffffffffffffffffffffffffffffffffffffffff92831660209182029290920101526002548251911690829060019081106107b2577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506107f6898261337b565b89600181518110610830577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010189600181518110610871577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101896001815181106108b2577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602090810291909101019290925273ffffffffffffffffffffffffffffffffffffffff93841690915292909252600254835192945016908290600090610921577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505087876001818110610995577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906109aa91906146f5565b816001815181106109e4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610aaa86600181518110610a5b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151600181518110610a9c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101518261337b565b89600281518110610ae4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010189600281518110610b25577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010189600281518110610b66577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001018390528397508473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152508490525050505085600081518110610be4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151600081518110610c25577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015186600181518110610c67577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151600081518110610ca8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101511015610f755760408051600180825281830190925290935060009084816020015b6060815260200190600190039081610cd157905050905086600081518110610d22577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015181600081518110610d64577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010181905250600061271060035483600081518110610db1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151600081518110610df2577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151610e049190614f54565b610e0e9190614f1b565b90508082600081518110610e4b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151600081518110610e8c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151610e9e9190614f03565b82600081518110610ed8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151600081518110610f19577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60209081029190910181019190915260408051600080825292810190915281610f52565b6060815260200190600190039081610f3d5790505b506040805160008152602081019091529399509297509195506115369350505050565b60408051600280825260608201909252600094508491816020015b6060815260200190600190039081610f9057905050905086600181518110610fe1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015181600081518110611023577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010181905250600061271060035483600081518110611070577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516000815181106110b1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516110c39190614f54565b6110cd9190614f1b565b9050808260008151811061110a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015160008151811061114b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015161115d9190614f03565b82600081518110611197577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516000815181106111d8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010181815250508760028151811061121e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015182600181518110611260577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602090810291909101015260408051600280825260608201909252600091816020015b6060815260200190600190039081611283579050509050866001815181106112d4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015181600081518110611316577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101819052508660028151811061135b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101518160018151811061139d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60209081029190910101526040805160028082526060820190925260009181602001602082028036833701905050905088600181518110611407577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015181600081518110611449577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050886002815181106114bd577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151816001815181106114ff577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b73ffffffffffffffffffffffffffffffffffffffff9092166020928302919091019091015292985091965090945061153692505050565b93509350935093565b606060006060806000805b6000548110156118fd5760006116408860008481548110611594577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60009182526020918290200154604080517fad5c4648000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff9092169263ad5c464892600480840193829003018186803b15801561160357600080fd5b505afa158015611617573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061163b9190614718565b613b9b565b90506116a78160008481548110611680577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16613ddd565b156118ea5760008083815481106116e7577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000918252602090912001546040517fd06ca61f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063d06ca61f90611748908d908690600401614e94565b60006040518083038186803b15801561176057600080fd5b505afa158015611774573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526117ba919081019061484a565b9050600081600183516117cd9190614f91565b81518110611804577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101519050848111156118e75780945081985060008481548110611856577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000918252602082200154815473ffffffffffffffffffffffffffffffffffffffff90911699506118e1918591879081106118ba577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16614072565b96508295505b50505b50806118f581614fa8565b91505061154a565b506000600660008860008151811061193e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008860018a516119919190614f91565b815181106119c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b82821015611ae357600084815260209081902060408051808201825260028602909201805473ffffffffffffffffffffffffffffffffffffffff168352600181018054835181870281018701909452808452939491938583019392830182828015611acb57602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311611aa0575b50505050508152505081526020019060010190611a2a565b5050505090506007600088600081518110611b27577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008860018a51611b7a9190614f91565b81518110611bb1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040016000205460ff1615611e475760005b8151811015611e45576000828281518110611c31577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015160000151905060008173ffffffffffffffffffffffffffffffffffffffff1663d06ca61f8c868681518110611c97577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151602001516040518363ffffffff1660e01b8152600401611cc0929190614e94565b60006040518083038186803b158015611cd857600080fd5b505afa158015611cec573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052611d32919081019061484a565b905060008160018351611d459190614f91565b81518110611d7c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151905085811115611e2f57809550819950829850611de5858581518110611dd3577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516020015184614072565b9750848481518110611e20577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516020015196505b5050508080611e3d90614fa8565b915050611bed565b505b505092959194509250565b60015473ffffffffffffffffffffffffffffffffffffffff163314611eac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614d2c565b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff811660009081526004602052604090205460ff1661204a5760008054600180820183558280527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e56390910180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8516908117909155604080517fad5c46480000000000000000000000000000000000000000000000000000000081529051929360059390929163ad5c4648916004808301926020929190829003018186803b158015611fa257600080fd5b505afa158015611fb6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fda9190614718565b73ffffffffffffffffffffffffffffffffffffffff90811682526020808301939093526040918201600090812080549515157fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00968716179055908516815260049092529020805490911660011790555b50565b60015473ffffffffffffffffffffffffffffffffffffffff16331461209e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614d2c565b73ffffffffffffffffffffffffffffffffffffffff8084166000908152600660209081526040808320938616835292905220548110612109576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614e54565b73ffffffffffffffffffffffffffffffffffffffff80841660009081526006602090815260408083209386168352929052208054819061214b90600190614f91565b81548110612182577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202018183815481106121c9577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60009182526020909120825460029092020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091178155600180830180546122319284019190614532565b509050508080548061226c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60008281526020812060027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9093019283020180547fffffffffffffffffffffffff0000000000000000000000000000000000000000168155906122d36001830182614582565b505090555073ffffffffffffffffffffffffffffffffffffffff8084166000818152600760209081526040808320948716835293815283822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556006815283822092825291909152208054819061235190600190614f91565b81548110612388577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202018183815481106123cf577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60009182526020909120825460029092020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091178155600180830180546124379284019190614532565b5090505080805480612472577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60008281526020812060027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9093019283020180547fffffffffffffffffffffffff0000000000000000000000000000000000000000168155906124d96001830182614582565b50509055505073ffffffffffffffffffffffffffffffffffffffff908116600090815260076020908152604080832094909316825292909252902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b60015473ffffffffffffffffffffffffffffffffffffffff16331461258d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614d2c565b804710156125c7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614d89565b60015460405173ffffffffffffffffffffffffffffffffffffffff9091169082156108fc029083906000818181858888f1935050505015801561260e573d6000803e3d6000fd5b5050565b60046020526000908152604090205460ff1681565b6000818154811061263757600080fd5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b60015473ffffffffffffffffffffffffffffffffffffffff1633146126af576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614d2c565b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60015473ffffffffffffffffffffffffffffffffffffffff163314612747576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614d2c565b6000548110612782576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614e54565b600460008083815481106127bf577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600091825260208083209091015473ffffffffffffffffffffffffffffffffffffffff16835282019290925260400190205460ff161561204a576000808281548110612834577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600091825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168083526004808352604080852080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905580517fad5c46480000000000000000000000000000000000000000000000000000000081529051929550859363ad5c464893828401939192909190829003018186803b1580156128da57600080fd5b505afa1580156128ee573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129129190614718565b90506000805b600054811015612a5d57848114158015612a3d57508273ffffffffffffffffffffffffffffffffffffffff166000828154811061297e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60009182526020918290200154604080517fad5c4648000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff9092169263ad5c464892600480840193829003018186803b1580156129ed57600080fd5b505afa158015612a01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a259190614718565b73ffffffffffffffffffffffffffffffffffffffff16145b15612a4b5760019150612a5d565b80612a5581614fa8565b915050612918565b5080612aaf5773ffffffffffffffffffffffffffffffffffffffff8216600090815260056020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b60008054612abf90600190614f91565b81548110612af6577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000918252602082200154815473ffffffffffffffffffffffffffffffffffffffff909116919086908110612b54577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000918252602082200180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155805480612bd8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60008281526020902081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff000000000000000000000000000000000000000016905501905550505050565b60015473ffffffffffffffffffffffffffffffffffffffff163314612c87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614d2c565b612710811115612cc3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614dc0565b600355565b60066020528260005260406000206020528160005260406000208181548110612cf057600080fd5b600091825260209091206002909102015473ffffffffffffffffffffffffffffffffffffffff16925083915050565b60025473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b60015473ffffffffffffffffffffffffffffffffffffffff163314612da8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614d2c565b6040517f70a08231000000000000000000000000000000000000000000000000000000008152819073ffffffffffffffffffffffffffffffffffffffff8416906370a0823190612dfc903090600401614b0e565b60206040518083038186803b158015612e1457600080fd5b505afa158015612e28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e4c9190614960565b1015612e84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614e1d565b6001546040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481169263a9059cbb92612ede92909116908590600401614b56565b602060405180830381600087803b158015612ef857600080fd5b505af1158015612f0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f3091906148da565b505050565b60015473ffffffffffffffffffffffffffffffffffffffff163314612f86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea390614d2c565b73ffffffffffffffffffffffffffffffffffffffff8481166000908152600660209081526040808320878516845282528083208151808301909252868516825281830186815281546001808201845592865294849020835160029096020180547fffffffffffffffffffffffff000000000000000000000000000000000000000016959096169490941785559251805191949361302993908501929101906145a0565b50505073ffffffffffffffffffffffffffffffffffffffff8381166000908152600660209081526040808320888516845282528083208151808301909252868516825281830186815281546001808201845592865294849020835160029096020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001695909616949094178555925180519194936130cf93908501929101906145a0565b5050505073ffffffffffffffffffffffffffffffffffffffff9283166000818152600760208181526040808420969097168352948552858220805460017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00918216811790925591865286832093835292909452939093208054909216909217905550565b60035481565b60056020526000908152604090205460ff1681565b60608060606000606060006127106003548a61318a9190614f54565b6131949190614f1b565b61319e908a614f91565b6040805160028082526060820183529293506000929091602083019080368337019050509050888860008181106131fe577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b905060200201602081019061321391906146f5565b8160008151811061324d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050888860018181106132c1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906132d691906146f5565b81600181518110613310577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506060600060608061335b868661153f565b809450819550829650839750505050505050505050505093509350935093565b6060600081807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff835b6000548110156136515760006133ee8860008481548110611594577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b905061342e8160008481548110611680577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b1561363e57600080838154811061346e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000918252602090912001546040517f1f00ca7400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90911690631f00ca74906134cf908d908690600401614e94565b60006040518083038186803b1580156134e757600080fd5b505afa1580156134fb573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052613541919081019061484a565b905060008160008151811061357f577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015190508481101561363b57809450819850600084815481106135d1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000918252602082200154815473ffffffffffffffffffffffffffffffffffffffff9091169950613635918591879081106118ba577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b96508295505b50505b508061364981614fa8565b9150506133a4565b5060006006600088600081518110613692577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008860018a516136e59190614f91565b8151811061371c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b8282101561383757600084815260209081902060408051808201825260028602909201805473ffffffffffffffffffffffffffffffffffffffff16835260018101805483518187028101870190945280845293949193858301939283018282801561381f57602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff1681526001909101906020018083116137f4575b5050505050815250508152602001906001019061377e565b505050509050600760008860008151811061387b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008860018a516138ce9190614f91565b81518110613905577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040016000205460ff1615611e475760005b8151811015611e45576000828281518110613985577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015160000151905060008173ffffffffffffffffffffffffffffffffffffffff16631f00ca748c8686815181106139eb577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151602001516040518363ffffffff1660e01b8152600401613a14929190614e94565b60006040518083038186803b158015613a2c57600080fd5b505afa158015613a40573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052613a86919081019061484a565b9050600081600081518110613ac4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151905085811015613b6557809550819950829850613b1b858581518110611dd3577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9750848481518110613b56577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516020015196505b5050508080613b7390614fa8565b915050613941565b600760209081526000928352604080842090915290825290205460ff1681565b60606000835167ffffffffffffffff811115613be0577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051908082528060200260200182016040528015613c09578160200160208202803683370190505b50905060005b8451811015613dd357600254855173ffffffffffffffffffffffffffffffffffffffff90911690869083908110613c6f577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff161415613d0c5783828281518110613ccd577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050613dc1565b848181518110613d45577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151828281518110613d86577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b80613dcb81614fa8565b915050613c0f565b5090505b92915050565b6000808273ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015613e2657600080fd5b505afa158015613e3a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e5e9190614718565b90508060005b60018651613e729190614f91565b8110156140665760008273ffffffffffffffffffffffffffffffffffffffff1663e6a43905888481518110613ed0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015189856001613ee69190614f03565b81518110613f1d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516040518363ffffffff1660e01b8152600401613f42929190614b2f565b60206040518083038186803b158015613f5a57600080fd5b505afa158015613f6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f929190614718565b905073ffffffffffffffffffffffffffffffffffffffff8116613fbc576000945050505050613dd7565b60008173ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561400457600080fd5b505afa158015614018573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061403c9190614960565b90508061405157600095505050505050613dd7565b5050808061405e90614fa8565b915050613e64565b50600195945050505050565b606060008273ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156140bc57600080fd5b505afa1580156140d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140f49190614718565b9050600081905060006001865161410b9190614f91565b67ffffffffffffffff81111561414a577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405190808252806020026020018201604052801561418357816020015b61417061461a565b8152602001906001900390816141685790505b50905060005b600187516141979190614f91565b8110156145285760008373ffffffffffffffffffffffffffffffffffffffff1663e6a439058984815181106141f5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101518a85600161420b9190614f03565b81518110614242577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516040518363ffffffff1660e01b8152600401614267929190614b2f565b60206040518083038186803b15801561427f57600080fd5b505afa158015614293573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142b79190614718565b90506000808273ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561430257600080fd5b505afa158015614316573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061433a91906148fa565b506dffffffffffffffffffffffffffff1691506dffffffffffffffffffffffffffff16915060008373ffffffffffffffffffffffffffffffffffffffff16630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b1580156143a757600080fd5b505afa1580156143bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906143df9190614718565b905060008473ffffffffffffffffffffffffffffffffffffffff1663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b15801561442957600080fd5b505afa15801561443d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906144619190614718565b90506040518060a001604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018581526020018273ffffffffffffffffffffffffffffffffffffffff16815260200184815250878781518110614505577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101819052505050505050808061452090614fa8565b915050614189565b5095945050505050565b8280548282559060005260206000209081019282156145725760005260206000209182015b82811115614572578254825591600101919060010190614557565b5061457e929150614648565b5090565b508054600082559060005260206000209081019061204a9190614648565b828054828255906000526020600020908101928215614572579160200282015b8281111561457257825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9091161782556020909201916001909101906145c0565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b5b8082111561457e5760008155600101614649565b600082601f83011261466d578081fd5b8135602061468261467d83614edf565b614eb5565b828152818101908583018385028701840188101561469e578586fd5b855b858110156146c55781356146b38161503f565b845292840192908401906001016146a0565b5090979650505050505050565b80516dffffffffffffffffffffffffffff811681146146f057600080fd5b919050565b600060208284031215614706578081fd5b81356147118161503f565b9392505050565b600060208284031215614729578081fd5b81516147118161503f565b60008060408385031215614746578081fd5b82356147518161503f565b915060208301356147618161503f565b809150509250929050565b60008060008060808587031215614781578182fd5b843561478c8161503f565b9350602085013561479c8161503f565b925060408501356147ac8161503f565b9150606085013567ffffffffffffffff8111156147c7578182fd5b6147d38782880161465d565b91505092959194509250565b6000806000606084860312156147f3578283fd5b83356147fe8161503f565b9250602084013561480e8161503f565b929592945050506040919091013590565b60008060408385031215614831578182fd5b823561483c8161503f565b946020939093013593505050565b6000602080838503121561485c578182fd5b825167ffffffffffffffff811115614872578283fd5b8301601f81018513614882578283fd5b805161489061467d82614edf565b81815283810190838501858402850186018910156148ac578687fd5b8694505b838510156148ce5780518352600194909401939185019185016148b0565b50979650505050505050565b6000602082840312156148eb578081fd5b81518015158114614711578182fd5b60008060006060848603121561490e578283fd5b614917846146d2565b9250614925602085016146d2565b9150604084015163ffffffff8116811461493d578182fd5b809150509250925092565b600060208284031215614959578081fd5b5035919050565b600060208284031215614971578081fd5b5051919050565b60008060006040848603121561498c578081fd5b83359250602084013567ffffffffffffffff808211156149aa578283fd5b818601915086601f8301126149bd578283fd5b8135818111156149cb578384fd5b87602080830285010111156149de578384fd5b6020830194508093505050509250925092565b60008060408385031215614a03578182fd5b82359150602083013567ffffffffffffffff811115614a20578182fd5b614a2c8582860161465d565b9150509250929050565b6000815180845260208085019450808401835b83811015614a7b57815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101614a49565b509495945050505050565b6000815180845260208085018081965082840281019150828601855b85811015614acc578284038952614aba848351614a36565b98850198935090840190600101614aa2565b5091979650505050505050565b6000815180845260208085019450808401835b83811015614a7b57815187529582019590820190600101614aec565b15159052565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b73ffffffffffffffffffffffffffffffffffffffff92831681529116602082015260400190565b73ffffffffffffffffffffffffffffffffffffffff929092168252602082015260400190565b6000608082016080835280875180835260a0850191506020925060a0838202860101838a01855b83811015614bef577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60888403018552614bdd838351614ad9565b94860194925090850190600101614ba3565b505085810384870152885180825290840192509050878301845b82811015614c3b57815173ffffffffffffffffffffffffffffffffffffffff1684529284019290840190600101614c09565b5050508381036040850152614c508187614a86565b92505050614c616060830184614b08565b95945050505050565b60006080808352614c7d81840188614ad9565b602073ffffffffffffffffffffffffffffffffffffffff808916828701526040868403818801528389518086528486019150848b019550875b81811015614cfd578651805186168452868101518616878501528481015185850152606080820151871690850152880151888401529585019560a090920191600101614cb6565b50508781036060890152614d11818a614a36565b9c9b505050505050505050505050565b901515815260200190565b60208082526026908201527f4f6e6c7920746865206f776e65722063616e20706572666f726d20746869732060408201527f616374696f6e0000000000000000000000000000000000000000000000000000606082015260800190565b60208082526014908201527f496e73756666696369656e742062616c616e6365000000000000000000000000604082015260600190565b60208082526026908201527f466565206d757374206265206c657373207468616e206f7220657175616c207460408201527f6f20313030250000000000000000000000000000000000000000000000000000606082015260800190565b6020808252601a908201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604082015260600190565b60208082526013908201527f496e646578206f7574206f6620626f756e647300000000000000000000000000604082015260600190565b90815260200190565b600083825260406020830152614ead6040830184614a36565b949350505050565b60405181810167ffffffffffffffff81118282101715614ed757614ed7615010565b604052919050565b600067ffffffffffffffff821115614ef957614ef9615010565b5060209081020190565b60008219821115614f1657614f16614fe1565b500190565b600082614f4f577f4e487b710000000000000000000000000000000000000000000000000000000081526012600452602481fd5b500490565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614f8c57614f8c614fe1565b500290565b600082821015614fa357614fa3614fe1565b500390565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415614fda57614fda614fe1565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b73ffffffffffffffffffffffffffffffffffffffff8116811461204a57600080fdfea264697066735822122063a71348b88f279adac2846734cc6bec397dab7d67bc4ea3221a9443120fccca64736f6c63430008000033