VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0x938ED6…F153
Summary
Transactions
Transfers
Address
0x938ED6109bB19609EDb0a1E2739E8639C84eF153
VET
217.84
VET
VTHO
79.96
VTHO
Master
0xD14B014F7563F406059E70F9C720bae18023F26C
Deployer
0xD14B014F7563F406059E70F9C720bae18023F26C
Code
0x6080604052600436106101ee5760003560e01c80634f6ccce71161010d5780638da5cb5b116100a0578063b88d4fde1161006f578063b88d4fde1461073c578063c87b56dd14610765578063ca5b7b8d146107a2578063e985e9c5146107cb578063f2fde38b14610808576101ee565b80638da5cb5b1461068057806395d89b41146106ab578063a22cb465146106d6578063adf03715146106ff576101ee565b806370a08231116100dc57806370a08231146105da578063715018a61461061757806382ff03081461062e5780638a15a5be14610657576101ee565b80634f6ccce7146104f9578063515b18981461053657806356e9a2cc1461055f5780636352211e1461059d576101ee565b806324600fc31161018557806340c10f191161015457806340c10f191461044e57806342842e0e1461046a57806342966c6814610493578063438b6300146104bc576101ee565b806324600fc31461037b5780632a55205a146103925780632f745c59146103d057806332c57cec1461040d576101ee565b8063162094c4116101c1578063162094c4146102c157806318160ddd146102ea57806322d7642e1461031557806323b872dd14610352576101ee565b806301ffc9a7146101f357806306fdde0314610230578063081812fc1461025b578063095ea7b314610298575b600080fd5b3480156101ff57600080fd5b5061021a60048036038101906102159190613c55565b610831565b6040516102279190614440565b60405180910390f35b34801561023c57600080fd5b50610245610843565b604051610252919061445b565b60405180910390f35b34801561026757600080fd5b50610282600480360381019061027d9190613ca7565b6108d5565b60405161028f919061438e565b60405180910390f35b3480156102a457600080fd5b506102bf60048036038101906102ba9190613c19565b61091b565b005b3480156102cd57600080fd5b506102e860048036038101906102e39190613d48565b610a33565b005b3480156102f657600080fd5b506102ff610a9b565b60405161030c9190614738565b60405180910390f35b34801561032157600080fd5b5061033c60048036038101906103379190613ca7565b610aa8565b604051610349919061471d565b60405180910390f35b34801561035e57600080fd5b5061037960048036038101906103749190613b13565b610bc4565b005b34801561038757600080fd5b50610390610c24565b005b34801561039e57600080fd5b506103b960048036038101906103b49190613d9c565b610c82565b6040516103c79291906143f5565b60405180910390f35b3480156103dc57600080fd5b506103f760048036038101906103f29190613c19565b610e6d565b6040516104049190614738565b60405180910390f35b34801561041957600080fd5b50610434600480360381019061042f9190613ca7565b610f12565b604051610445959493929190614753565b60405180910390f35b61046860048036038101906104639190613c19565b610fb2565b005b34801561047657600080fd5b50610491600480360381019061048c9190613b13565b6112ef565b005b34801561049f57600080fd5b506104ba60048036038101906104b59190613ca7565b61130f565b005b3480156104c857600080fd5b506104e360048036038101906104de9190613aae565b61136b565b6040516104f0919061441e565b60405180910390f35b34801561050557600080fd5b50610520600480360381019061051b9190613ca7565b611465565b60405161052d9190614738565b60405180910390f35b34801561054257600080fd5b5061055d60048036038101906105589190613dd8565b6114fc565b005b34801561056b57600080fd5b5061058660048036038101906105819190613ca7565b61166a565b6040516105949291906143f5565b60405180910390f35b3480156105a957600080fd5b506105c460048036038101906105bf9190613ca7565b6116ae565b6040516105d1919061438e565b60405180910390f35b3480156105e657600080fd5b5061060160048036038101906105fc9190613aae565b611760565b60405161060e9190614738565b60405180910390f35b34801561062357600080fd5b5061062c611818565b005b34801561063a57600080fd5b5061065560048036038101906106509190613aae565b61182c565b005b34801561066357600080fd5b5061067e60048036038101906106799190613cf9565b611878565b005b34801561068c57600080fd5b50610695611a7c565b6040516106a2919061438e565b60405180910390f35b3480156106b757600080fd5b506106c0611aa6565b6040516106cd919061445b565b60405180910390f35b3480156106e257600080fd5b506106fd60048036038101906106f89190613bdd565b611b38565b005b34801561070b57600080fd5b5061072660048036038101906107219190613d9c565b611b4e565b6040516107339190614738565b60405180910390f35b34801561074857600080fd5b50610763600480360381019061075e9190613b62565b611d22565b005b34801561077157600080fd5b5061078c60048036038101906107879190613ca7565b611d84565b604051610799919061445b565b60405180910390f35b3480156107ae57600080fd5b506107c960048036038101906107c49190613aae565b611d96565b005b3480156107d757600080fd5b506107f260048036038101906107ed9190613ad7565b611de2565b6040516107ff9190614440565b60405180910390f35b34801561081457600080fd5b5061082f600480360381019061082a9190613aae565b611e76565b005b600061083c82611efa565b9050919050565b60606002805461085290614a74565b80601f016020809104026020016040519081016040528092919081815260200182805461087e90614a74565b80156108cb5780601f106108a0576101008083540402835291602001916108cb565b820191906000526020600020905b8154815290600101906020018083116108ae57829003601f168201915b5050505050905090565b60006108e082611f0c565b6006600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610926826116ae565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610997576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098e9061467d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166109b6611f57565b73ffffffffffffffffffffffffffffffffffffffff1614806109e557506109e4816109df611f57565b611de2565b5b610a24576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1b906145dd565b60405180910390fd5b610a2e8383611f5f565b505050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a8d57600080fd5b610a978282612018565b5050565b6000600a80549050905090565b610ab0613818565b610ac482601161208c90919063ffffffff16565b610b03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610afa9061457d565b60405180910390fd5b601360008381526020019081526020016000206040518060a001604052908160008201548152602001600182015481526020016002820154815260200160038201548152602001600482016040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015481525050815250509050919050565b610bd5610bcf611f57565b826120a6565b610c14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0b906146bd565b60405180910390fd5b610c1f83838361213b565b505050565b610c2c6123a2565b6000479050610c39611a7c565b73ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610c7e573d6000803e3d6000fd5b5050565b6000806000600160008681526020019081526020016000206040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff16815250509050600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff161415610e185760006040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff168152505090505b6000610e22612420565b6bffffffffffffffffffffffff1682602001516bffffffffffffffffffffffff1686610e4e9190614930565b610e5891906148ff565b90508160000151819350935050509250929050565b6000610e7883611760565b8210610eb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eb09061447d565b60405180910390fd5b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b6013602052806000526040600020600091509050806000015490806001015490806002015490806003015490806004016040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015481525050905085565b610fc681601161208c90919063ffffffff16565b611005576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ffc9061457d565b60405180910390fd5b6000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b8152600401611062919061438e565b60206040518083038186803b15801561107a57600080fd5b505afa15801561108e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b29190613cd0565b905060018110156110f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ef9061451d565b60405180910390fd5b60006111048383611b4e565b905080341015611149576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611140906146fd565b60405180910390fd5b6000601360008581526020019081526020016000206040518060a001604052908160008201548152602001600182015481526020016002820154815260200160038201548152602001600482016040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015481525050815250509050600073ffffffffffffffffffffffffffffffffffffffff1681608001516000015173ffffffffffffffffffffffffffffffffffffffff16146112b35780608001516000015173ffffffffffffffffffffffffffffffffffffffff166108fc6127108360800151602001518561127c9190614930565b61128691906148ff565b9081150290604051600060405180830381858888f193505050501580156112b1573d6000803e3d6000fd5b505b60006112bf600e61242a565b90506112cb600e612438565b6112d5868261244e565b6112e7816112e28761246c565b612018565b505050505050565b61130a83838360405180602001604052806000815250611d22565b505050565b61132061131a611f57565b826120a6565b61135f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611356906146bd565b60405180910390fd5b61136881612619565b50565b6060600061137883611760565b905060008167ffffffffffffffff8111156113bc577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280602002602001820160405280156113ea5781602001602082028036833780820191505090505b50905060005b8281101561145a576114028582610e6d565b82828151811061143b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001018181525050808061145290614ad7565b9150506113f0565b508092505050919050565b600061146f610a9b565b82106114b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a79061469d565b60405180910390fd5b600a82815481106114ea577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549050919050565b6115046123a2565b61151886601161208c90919063ffffffff16565b15611558576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154f9061461d565b60405180910390fd5b856013600088815260200190815260200160002060000181905550670de0b6b3a7640000856115879190614930565b6013600088815260200190815260200160002060010181905550836013600088815260200190815260200160002060020181905550826013600088815260200190815260200160002060030181905550816013600088815260200190815260200160002060040160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601360008881526020019081526020016000206004016001018190555061166186601161262590919063ffffffff16565b50505050505050565b60146020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154905082565b6000806004600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611757576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174e9061465d565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156117d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c89061459d565b60405180910390fd5b600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6118206123a2565b61182a600061263f565b565b6118346123a2565b80601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6118806123a2565b61189483601161208c90919063ffffffff16565b6118d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ca9061457d565b60405180910390fd5b6000601360008581526020019081526020016000206040518060a001604052908160008201548152602001600182015481526020016002820154815260200160038201548152602001600482016040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820154815250508152505090508281608001516000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050818160800151602001818152505080601360008681526020019081526020016000206000820151816000015560208201518160010155604082015181600201556060820151816003015560808201518160040160008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155505090505050505050565b6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054611ab590614a74565b80601f0160208091040260200160405190810160405280929190818152602001828054611ae190614a74565b8015611b2e5780601f10611b0357610100808354040283529160200191611b2e565b820191906000526020600020905b815481529060010190602001808311611b1157829003601f168201915b5050505050905090565b611b4a611b43611f57565b8383612705565b5050565b6000611b6483601161208c90919063ffffffff16565b611ba3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9a9061457d565b60405180910390fd5b60008211611be6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bdd906146dd565b60405180910390fd5b6000601360008581526020019081526020016000206040518060a001604052908160008201548152602001600182015481526020016002820154815260200160038201548152602001600482016040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015481525050815250509050600081606001519050808410611cb8578093505b6000826020015190506000858460400151611cd39190614930565b905060006127108284611ce69190614930565b611cf091906148ff565b83611cfb919061498a565b90506001871415611d13578295505050505050611d1c565b80955050505050505b92915050565b611d33611d2d611f57565b836120a6565b611d72576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d69906146bd565b60405180910390fd5b611d7e84848484612872565b50505050565b6060611d8f826128ce565b9050919050565b611d9e6123a2565b80600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611e7e6123a2565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611eee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ee5906144bd565b60405180910390fd5b611ef78161263f565b50565b6000611f05826129e1565b9050919050565b611f1581612a5b565b611f54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4b9061465d565b60405180910390fd5b50565b600033905090565b816006600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16611fd2836116ae565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b61202182612a5b565b612060576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612057906145bd565b60405180910390fd5b80600c6000848152602001908152602001600020908051906020019061208792919061384d565b505050565b600061209e836000018360001b612ac7565b905092915050565b6000806120b2836116ae565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806120f457506120f38185611de2565b5b8061213257508373ffffffffffffffffffffffffffffffffffffffff1661211a846108d5565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff1661215b826116ae565b73ffffffffffffffffffffffffffffffffffffffff16146121b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121a8906144dd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612221576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122189061453d565b60405180910390fd5b61222c838383612aea565b612237600082611f5f565b6001600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612287919061498a565b925050819055506001600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546122de91906148a9565b92505081905550816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461239d838383612afa565b505050565b6123aa611f57565b73ffffffffffffffffffffffffffffffffffffffff166123c8611a7c565b73ffffffffffffffffffffffffffffffffffffffff161461241e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124159061463d565b60405180910390fd5b565b6000612710905090565b600081600001549050919050565b6001816000016000828254019250508190555050565b612468828260405180602001604052806000815250612aff565b5050565b606060008214156124b4576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612614565b600082905060005b600082146124e65780806124cf90614ad7565b915050600a826124df91906148ff565b91506124bc565b60008167ffffffffffffffff811115612528577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280601f01601f19166020018201604052801561255a5781602001600182028036833780820191505090505b5090505b6000851461260d57600182612573919061498a565b9150600a856125829190614b20565b603061258e91906148a9565b60f81b8183815181106125ca577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8561260691906148ff565b945061255e565b8093505050505b919050565b61262281612b5a565b50565b6000612637836000018360001b612bad565b905092915050565b6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612774576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161276b9061455d565b60405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516128659190614440565b60405180910390a3505050565b61287d84848461213b565b61288984848484612c1d565b6128c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128bf9061449d565b60405180910390fd5b50505050565b60606128d982611f0c565b6000600c600084815260200190815260200160002080546128f990614a74565b80601f016020809104026020016040519081016040528092919081815260200182805461292590614a74565b80156129725780601f1061294757610100808354040283529160200191612972565b820191906000526020600020905b81548152906001019060200180831161295557829003601f168201915b505050505090506000612983612db4565b90506000815114156129995781925050506129dc565b6000825111156129ce5780826040516020016129b692919061436a565b604051602081830303815290604052925050506129dc565b6129d784612dcb565b925050505b919050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612a545750612a5382612e33565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166004600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600080836001016000848152602001908152602001600020541415905092915050565b612af5838383612f15565b505050565b505050565b612b098383613029565b612b166000848484612c1d565b612b55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b4c9061449d565b60405180910390fd5b505050565b612b6381613203565b6000600c60008381526020019081526020016000208054612b8390614a74565b905014612baa57600c60008281526020019081526020016000206000612ba991906138d3565b5b50565b6000612bb98383612ac7565b612c12578260000182908060018154018082558091505060019003906000526020600020016000909190919091505582600001805490508360010160008481526020019081526020016000208190555060019050612c17565b600090505b92915050565b6000612c3e8473ffffffffffffffffffffffffffffffffffffffff16613218565b15612da7578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612c67611f57565b8786866040518563ffffffff1660e01b8152600401612c8994939291906143a9565b602060405180830381600087803b158015612ca357600080fd5b505af1925050508015612cd457506040513d601f19601f82011682018060405250810190612cd19190613c7e565b60015b612d57573d8060008114612d04576040519150601f19603f3d011682016040523d82523d6000602084013e612d09565b606091505b50600081511415612d4f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d469061449d565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050612dac565b600190505b949350505050565b606060405180602001604052806000815250905090565b6060612dd682611f0c565b6000612de0612db4565b90506000815111612e005760405180602001604052806000815250612e2b565b80612e0a8461246c565b604051602001612e1b92919061436a565b6040516020818303038152906040525b915050919050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612efe57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80612f0e5750612f0d8261323b565b5b9050919050565b612f208383836132b5565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612f6357612f5e816132ba565b612fa2565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612fa157612fa08382613303565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612fe557612fe081613470565b613024565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146130235761302282826135b3565b5b5b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415613099576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613090906145fd565b60405180910390fd5b6130a281612a5b565b156130e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130d9906144fd565b60405180910390fd5b6130ee60008383612aea565b6001600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461313e91906148a9565b92505081905550816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46131ff60008383612afa565b5050565b61320c81613632565b6132158161374f565b50565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60007f2a55205a000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806132ae57506132ad826137ae565b5b9050919050565b505050565b600a80549050600b600083815260200190815260200160002081905550600a81908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000600161331084611760565b61331a919061498a565b90506000600960008481526020019081526020016000205490508181146133ff576000600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816009600083815260200190815260200160002081905550505b6009600084815260200190815260200160002060009055600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b60006001600a80549050613484919061498a565b90506000600b60008481526020019081526020016000205490506000600a83815481106134da577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154905080600a8381548110613522577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020018190555081600b600083815260200190815260200160002081905550600b600085815260200190815260200160002060009055600a805480613597577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6001900381819060005260206000200160009055905550505050565b60006135be83611760565b905081600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806009600084815260200190815260200160002081905550505050565b600061363d826116ae565b905061364b81600084612aea565b613656600083611f5f565b6001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546136a6919061498a565b925050819055506004600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461374b81600084612afa565b5050565b60016000828152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556000820160146101000a8154906bffffffffffffffffffffffff0219169055505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6040518060a0016040528060008152602001600081526020016000815260200160008152602001613847613913565b81525090565b82805461385990614a74565b90600052602060002090601f01602090048101928261387b57600085556138c2565b82601f1061389457805160ff19168380011785556138c2565b828001600101855582156138c2579182015b828111156138c15782518255916020019190600101906138a6565b5b5090506138cf9190613943565b5090565b5080546138df90614a74565b6000825580601f106138f15750613910565b601f01602090049060005260206000209081019061390f9190613943565b5b50565b6040518060400160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600081525090565b5b8082111561395c576000816000905550600101613944565b5090565b600061397361396e846147cb565b6147a6565b90508281526020810184848401111561398b57600080fd5b613996848285614a32565b509392505050565b60006139b16139ac846147fc565b6147a6565b9050828152602081018484840111156139c957600080fd5b6139d4848285614a32565b509392505050565b6000813590506139eb81615143565b92915050565b600081359050613a008161515a565b92915050565b600081359050613a1581615171565b92915050565b600081519050613a2a81615171565b92915050565b600082601f830112613a4157600080fd5b8135613a51848260208601613960565b91505092915050565b600082601f830112613a6b57600080fd5b8135613a7b84826020860161399e565b91505092915050565b600081359050613a9381615188565b92915050565b600081519050613aa881615188565b92915050565b600060208284031215613ac057600080fd5b6000613ace848285016139dc565b91505092915050565b60008060408385031215613aea57600080fd5b6000613af8858286016139dc565b9250506020613b09858286016139dc565b9150509250929050565b600080600060608486031215613b2857600080fd5b6000613b36868287016139dc565b9350506020613b47868287016139dc565b9250506040613b5886828701613a84565b9150509250925092565b60008060008060808587031215613b7857600080fd5b6000613b86878288016139dc565b9450506020613b97878288016139dc565b9350506040613ba887828801613a84565b925050606085013567ffffffffffffffff811115613bc557600080fd5b613bd187828801613a30565b91505092959194509250565b60008060408385031215613bf057600080fd5b6000613bfe858286016139dc565b9250506020613c0f858286016139f1565b9150509250929050565b60008060408385031215613c2c57600080fd5b6000613c3a858286016139dc565b9250506020613c4b85828601613a84565b9150509250929050565b600060208284031215613c6757600080fd5b6000613c7584828501613a06565b91505092915050565b600060208284031215613c9057600080fd5b6000613c9e84828501613a1b565b91505092915050565b600060208284031215613cb957600080fd5b6000613cc784828501613a84565b91505092915050565b600060208284031215613ce257600080fd5b6000613cf084828501613a99565b91505092915050565b600080600060608486031215613d0e57600080fd5b6000613d1c86828701613a84565b9350506020613d2d868287016139dc565b9250506040613d3e86828701613a84565b9150509250925092565b60008060408385031215613d5b57600080fd5b6000613d6985828601613a84565b925050602083013567ffffffffffffffff811115613d8657600080fd5b613d9285828601613a5a565b9150509250929050565b60008060408385031215613daf57600080fd5b6000613dbd85828601613a84565b9250506020613dce85828601613a84565b9150509250929050565b60008060008060008060c08789031215613df157600080fd5b6000613dff89828a01613a84565b9650506020613e1089828a01613a84565b9550506040613e2189828a01613a84565b9450506060613e3289828a01613a84565b9350506080613e4389828a016139dc565b92505060a0613e5489828a01613a84565b9150509295509295509295565b6000613e6d838361434c565b60208301905092915050565b613e82816149be565b82525050565b613e91816149be565b82525050565b6000613ea28261483d565b613eac818561486b565b9350613eb78361482d565b8060005b83811015613ee8578151613ecf8882613e61565b9750613eda8361485e565b925050600181019050613ebb565b5085935050505092915050565b613efe816149d0565b82525050565b6000613f0f82614848565b613f19818561487c565b9350613f29818560208601614a41565b613f3281614c0d565b840191505092915050565b6000613f4882614853565b613f52818561488d565b9350613f62818560208601614a41565b613f6b81614c0d565b840191505092915050565b6000613f8182614853565b613f8b818561489e565b9350613f9b818560208601614a41565b80840191505092915050565b6000613fb4602b8361488d565b9150613fbf82614c1e565b604082019050919050565b6000613fd760328361488d565b9150613fe282614c6d565b604082019050919050565b6000613ffa60268361488d565b915061400582614cbc565b604082019050919050565b600061401d60258361488d565b915061402882614d0b565b604082019050919050565b6000614040601c8361488d565b915061404b82614d5a565b602082019050919050565b6000614063601e8361488d565b915061406e82614d83565b602082019050919050565b600061408660248361488d565b915061409182614dac565b604082019050919050565b60006140a960198361488d565b91506140b482614dfb565b602082019050919050565b60006140cc60148361488d565b91506140d782614e24565b602082019050919050565b60006140ef60298361488d565b91506140fa82614e4d565b604082019050919050565b6000614112602e8361488d565b915061411d82614e9c565b604082019050919050565b6000614135603e8361488d565b915061414082614eeb565b604082019050919050565b600061415860208361488d565b915061416382614f3a565b602082019050919050565b600061417b60148361488d565b915061418682614f63565b602082019050919050565b600061419e60208361488d565b91506141a982614f8c565b602082019050919050565b60006141c160188361488d565b91506141cc82614fb5565b602082019050919050565b60006141e460218361488d565b91506141ef82614fde565b604082019050919050565b6000614207602c8361488d565b91506142128261502d565b604082019050919050565b600061422a602e8361488d565b91506142358261507c565b604082019050919050565b600061424d60298361488d565b9150614258826150cb565b604082019050919050565b600061427060118361488d565b915061427b8261511a565b602082019050919050565b60408201600082015161429c6000850182613e79565b5060208201516142af602085018261434c565b50505050565b6040820160008201516142cb6000850182613e79565b5060208201516142de602085018261434c565b50505050565b60c0820160008201516142fa600085018261434c565b50602082015161430d602085018261434c565b506040820151614320604085018261434c565b506060820151614333606085018261434c565b5060808201516143466080850182614286565b50505050565b61435581614a28565b82525050565b61436481614a28565b82525050565b60006143768285613f76565b91506143828284613f76565b91508190509392505050565b60006020820190506143a36000830184613e88565b92915050565b60006080820190506143be6000830187613e88565b6143cb6020830186613e88565b6143d8604083018561435b565b81810360608301526143ea8184613f04565b905095945050505050565b600060408201905061440a6000830185613e88565b614417602083018461435b565b9392505050565b600060208201905081810360008301526144388184613e97565b905092915050565b60006020820190506144556000830184613ef5565b92915050565b600060208201905081810360008301526144758184613f3d565b905092915050565b6000602082019050818103600083015261449681613fa7565b9050919050565b600060208201905081810360008301526144b681613fca565b9050919050565b600060208201905081810360008301526144d681613fed565b9050919050565b600060208201905081810360008301526144f681614010565b9050919050565b6000602082019050818103600083015261451681614033565b9050919050565b6000602082019050818103600083015261453681614056565b9050919050565b6000602082019050818103600083015261455681614079565b9050919050565b600060208201905081810360008301526145768161409c565b9050919050565b60006020820190508181036000830152614596816140bf565b9050919050565b600060208201905081810360008301526145b6816140e2565b9050919050565b600060208201905081810360008301526145d681614105565b9050919050565b600060208201905081810360008301526145f681614128565b9050919050565b600060208201905081810360008301526146168161414b565b9050919050565b600060208201905081810360008301526146368161416e565b9050919050565b6000602082019050818103600083015261465681614191565b9050919050565b60006020820190508181036000830152614676816141b4565b9050919050565b60006020820190508181036000830152614696816141d7565b9050919050565b600060208201905081810360008301526146b6816141fa565b9050919050565b600060208201905081810360008301526146d68161421d565b9050919050565b600060208201905081810360008301526146f681614240565b9050919050565b6000602082019050818103600083015261471681614263565b9050919050565b600060c08201905061473260008301846142e4565b92915050565b600060208201905061474d600083018461435b565b92915050565b600060c082019050614768600083018861435b565b614775602083018761435b565b614782604083018661435b565b61478f606083018561435b565b61479c60808301846142b5565b9695505050505050565b60006147b06147c1565b90506147bc8282614aa6565b919050565b6000604051905090565b600067ffffffffffffffff8211156147e6576147e5614bde565b5b6147ef82614c0d565b9050602081019050919050565b600067ffffffffffffffff82111561481757614816614bde565b5b61482082614c0d565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b60006148b482614a28565b91506148bf83614a28565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156148f4576148f3614b51565b5b828201905092915050565b600061490a82614a28565b915061491583614a28565b92508261492557614924614b80565b5b828204905092915050565b600061493b82614a28565b915061494683614a28565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561497f5761497e614b51565b5b828202905092915050565b600061499582614a28565b91506149a083614a28565b9250828210156149b3576149b2614b51565b5b828203905092915050565b60006149c982614a08565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b83811015614a5f578082015181840152602081019050614a44565b83811115614a6e576000848401525b50505050565b60006002820490506001821680614a8c57607f821691505b60208210811415614aa057614a9f614baf565b5b50919050565b614aaf82614c0d565b810181811067ffffffffffffffff82111715614ace57614acd614bde565b5b80604052505050565b6000614ae282614a28565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415614b1557614b14614b51565b5b600182019050919050565b6000614b2b82614a28565b9150614b3683614a28565b925082614b4657614b45614b80565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b7f596f7520646f6e2774206861766520656e6f75676820536d757a7a6965730000600082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f5363656e6520646f6573206e6f74206578697374000000000000000000000000600082015250565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b7f45524337323155524953746f726167653a2055524920736574206f66206e6f6e60008201527f6578697374656e7420746f6b656e000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000602082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f5363656e6520616c726561647920657869737473000000000000000000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206e6f7220617070726f766564000000000000000000000000000000000000602082015250565b7f416d6f756e74206f6620536d757a7a696573206d75737420626520677265617460008201527f6572207468616e20300000000000000000000000000000000000000000000000602082015250565b7f4e6f7420656e6f756768742066756e6473000000000000000000000000000000600082015250565b61514c816149be565b811461515757600080fd5b50565b615163816149d0565b811461516e57600080fd5b50565b61517a816149dc565b811461518557600080fd5b50565b61519181614a28565b811461519c57600080fd5b5056fea2646970667358221220b8e7afd4557fa469f879ac642bc13bbd9052c14c6929dfc4f3e37ff3753b2ff564736f6c63430008040033