VeChain
Explorer
Mainnet
Search
Networks
Main
Test
Contract
0xA40111…b43f
Summary
Transactions
Transfers
Address
0xA401117cCDaCF1d9c1a32F47Bde1bE1B2FB2b43f
VET
0.00
VET
VTHO
193.84
VTHO
Master
0x67523EDDb879f8D9232Ca40A11823d95Eac1C66C
Deployer
0x67523EDDb879f8D9232Ca40A11823d95Eac1C66C
Code
0x6080604052600436106102935760003560e01c806370a082311161015a578063b88d4fde116100c1578063d0eb26b01161007a578063d0eb26b014610a45578063d5abeb0114610a6e578063e985e9c514610a99578063ed88ed9f14610ad6578063edec5f2714610b01578063f2fde38b14610b2a57610293565b8063b88d4fde14610921578063ba4e5c491461094a578063ba7d2c7614610987578063bfb6939c146109b2578063c6682862146109dd578063c87b56dd14610a0857610293565b80638dc251e3116101135780638dc251e31461083457806395d89b411461085d5780639c70b51214610888578063a0712d68146108b3578063a22cb465146108cf578063a9b7f448146108f857610293565b806370a0823114610724578063715018a6146107615780637f00c7a614610778578063833d6907146107a15780638a1a5414146107de5780638da5cb5b1461080957610293565b80632a55205a116101fe578063438b6300116101b7578063438b6300146105ee5780634f6ccce71461062b57806355f804b3146106685780635c975abb146106915780636352211e146106bc5780636c0360eb146106f957610293565b80632a55205a146104bb5780632f745c59146104f95780633af32abf146105365780633c9527641461057357806342842e0e1461059c57806342966c68146105c557610293565b80630e1cbef6116102505780630e1cbef6146103ba57806318160ddd146103e357806318cae2691461040e5780631aa7534f1461044b578063239c70ae1461046757806323b872dd1461049257610293565b806301ffc9a71461029857806302329a29146102d5578063047fc9aa146102fe57806306fdde0314610329578063081812fc14610354578063095ea7b314610391575b600080fd5b3480156102a457600080fd5b506102bf60048036038101906102ba9190614041565b610b53565b6040516102cc919061486d565b60405180910390f35b3480156102e157600080fd5b506102fc60048036038101906102f79190614014565b610b65565b005b34801561030a57600080fd5b50610313610b8a565b6040516103209190614c0a565b60405180910390f35b34801561033557600080fd5b5061033e610b90565b60405161034b9190614888565b60405180910390f35b34801561036057600080fd5b5061037b600480360381019061037691906140e4565b610c22565b60405161038891906147bb565b60405180910390f35b34801561039d57600080fd5b506103b860048036038101906103b39190613f87565b610c68565b005b3480156103c657600080fd5b506103e160048036038101906103dc91906140e4565b610d80565b005b3480156103ef57600080fd5b506103f8610dc0565b6040516104059190614c0a565b60405180910390f35b34801561041a57600080fd5b5061043560048036038101906104309190613e04565b610dcd565b6040516104429190614c0a565b60405180910390f35b61046560048036038101906104609190613e04565b610de5565b005b34801561047357600080fd5b5061047c610e9d565b6040516104899190614c0a565b60405180910390f35b34801561049e57600080fd5b506104b960048036038101906104b49190613e71565b610ea3565b005b3480156104c757600080fd5b506104e260048036038101906104dd9190614111565b610f03565b6040516104f0929190614822565b60405180910390f35b34801561050557600080fd5b50610520600480360381019061051b9190613f87565b6110ee565b60405161052d9190614c0a565b60405180910390f35b34801561054257600080fd5b5061055d60048036038101906105589190613e04565b611193565b60405161056a919061486d565b60405180910390f35b34801561057f57600080fd5b5061059a60048036038101906105959190614014565b611242565b005b3480156105a857600080fd5b506105c360048036038101906105be9190613e71565b61129b565b005b3480156105d157600080fd5b506105ec60048036038101906105e791906140e4565b6112bb565b005b3480156105fa57600080fd5b5061061560048036038101906106109190613e04565b611317565b604051610622919061484b565b60405180910390f35b34801561063757600080fd5b50610652600480360381019061064d91906140e4565b6113c5565b60405161065f9190614c0a565b60405180910390f35b34801561067457600080fd5b5061068f600480360381019061068a919061409b565b611436565b005b34801561069d57600080fd5b506106a6611458565b6040516106b3919061486d565b60405180910390f35b3480156106c857600080fd5b506106e360048036038101906106de91906140e4565b61146b565b6040516106f091906147bb565b60405180910390f35b34801561070557600080fd5b5061070e61151d565b60405161071b9190614888565b60405180910390f35b34801561073057600080fd5b5061074b60048036038101906107469190613e04565b6115ab565b6040516107589190614c0a565b60405180910390f35b34801561076d57600080fd5b50610776611663565b005b34801561078457600080fd5b5061079f600480360381019061079a91906140e4565b611677565b005b3480156107ad57600080fd5b506107c860048036038101906107c39190613f87565b611689565b6040516107d59190614c0a565b60405180910390f35b3480156107ea57600080fd5b506107f36117dc565b6040516108009190614c0a565b60405180910390f35b34801561081557600080fd5b5061081e6117e2565b60405161082b91906147bb565b60405180910390f35b34801561084057600080fd5b5061085b60048036038101906108569190613e04565b61180c565b005b34801561086957600080fd5b50610872611886565b60405161087f9190614888565b60405180910390f35b34801561089457600080fd5b5061089d611918565b6040516108aa919061486d565b60405180910390f35b6108cd60048036038101906108c891906140e4565b61192b565b005b3480156108db57600080fd5b506108f660048036038101906108f19190613f47565b611ceb565b005b34801561090457600080fd5b5061091f600480360381019061091a91906140e4565b611d01565b005b34801561092d57600080fd5b5061094860048036038101906109439190613ec4565b611d13565b005b34801561095657600080fd5b50610971600480360381019061096c91906140e4565b611d75565b60405161097e91906147bb565b60405180910390f35b34801561099357600080fd5b5061099c611db4565b6040516109a99190614c0a565b60405180910390f35b3480156109be57600080fd5b506109c7611dba565b6040516109d49190614c0a565b60405180910390f35b3480156109e957600080fd5b506109f2611dc0565b6040516109ff9190614888565b60405180910390f35b348015610a1457600080fd5b50610a2f6004803603810190610a2a91906140e4565b611e4e565b604051610a3c9190614888565b60405180910390f35b348015610a5157600080fd5b50610a6c6004803603810190610a6791906140e4565b611ef8565b005b348015610a7a57600080fd5b50610a83611f0a565b604051610a909190614c0a565b60405180910390f35b348015610aa557600080fd5b50610ac06004803603810190610abb9190613e31565b611f10565b604051610acd919061486d565b60405180910390f35b348015610ae257600080fd5b50610aeb611fa4565b604051610af89190614c0a565b60405180910390f35b348015610b0d57600080fd5b50610b286004803603810190610b239190613fc7565b611faa565b005b348015610b3657600080fd5b50610b516004803603810190610b4c9190613e04565b611fd6565b005b6000610b5e8261205a565b9050919050565b610b6d61206c565b80600f60006101000a81548160ff02191690831515021790555050565b601b5481565b606060028054610b9f90614f13565b80601f0160208091040260200160405190810160405280929190818152602001828054610bcb90614f13565b8015610c185780601f10610bed57610100808354040283529160200191610c18565b820191906000526020600020905b815481529060010190602001808311610bfb57829003601f168201915b5050505050905090565b6000610c2d826120ea565b6006600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610c738261146b565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ce4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdb90614b0a565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610d03612135565b73ffffffffffffffffffffffffffffffffffffffff161480610d325750610d3181610d2c612135565b611f10565b5b610d71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6890614a2a565b60405180910390fd5b610d7b838361213d565b505050565b610d8861206c565b80601a81905550610dbd601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601a546121f6565b50565b6000600a80549050905090565b601c6020528060005260406000206000915090505481565b610ded61206c565b60008173ffffffffffffffffffffffffffffffffffffffff1647604051610e1390614758565b60006040518083038185875af1925050503d8060008114610e50576040519150601f19603f3d011682016040523d82523d6000602084013e610e55565b606091505b5050905080610e99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e90906148aa565b60405180910390fd5b5050565b60175481565b610eb4610eae612135565b8261238b565b610ef3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eea90614baa565b60405180910390fd5b610efe838383612420565b505050565b6000806000600160008681526020019081526020016000206040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff16815250509050600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff1614156110995760006040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff168152505090505b60006110a3612687565b6bffffffffffffffffffffffff1682602001516bffffffffffffffffffffffff16866110cf9190614dcf565b6110d99190614d9e565b90508160000151819350935050509250929050565b60006110f9836115ab565b821061113a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611131906148ca565b60405180910390fd5b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b600080600090505b601380549050811015611237578273ffffffffffffffffffffffffffffffffffffffff16601382815481106111d3576111d26150da565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561122457600191505061123d565b808061122f90614f76565b91505061119b565b50600090505b919050565b61124a61206c565b80601260006101000a81548160ff02191690831515021790555060011515601260009054906101000a900460ff161515141561128e57601454601181905550611298565b6015546011819055505b50565b6112b683838360405180602001604052806000815250611d13565b505050565b6112cc6112c6612135565b8261238b565b61130b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161130290614baa565b60405180910390fd5b61131481612691565b50565b60606000611324836115ab565b905060008167ffffffffffffffff81111561134257611341615109565b5b6040519080825280602002602001820160405280156113705781602001602082028036833780820191505090505b50905060005b828110156113ba5761138885826110ee565b82828151811061139b5761139a6150da565b5b60200260200101818152505080806113b290614f76565b915050611376565b508092505050919050565b60006113cf610dc0565b8210611410576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140790614b4a565b60405180910390fd5b600a8281548110611424576114236150da565b5b90600052602060002001549050919050565b61143e61206c565b80600d9080519060200190611454929190613b01565b5050565b600f60009054906101000a900460ff1681565b6000806004600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611514576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150b90614aea565b60405180910390fd5b80915050919050565b600d805461152a90614f13565b80601f016020809104026020016040519081016040528092919081815260200182805461155690614f13565b80156115a35780601f10611578576101008083540402835291602001916115a3565b820191906000526020600020905b81548152906001019060200180831161158657829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561161c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611613906149ca565b60405180910390fd5b600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61166b61206c565b61167560006126ef565b565b61167f61206c565b8060178190555050565b6000611693610dc0565b601b8190555060165482601b546116aa9190614d48565b11156116eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116e2906149ea565b60405180910390fd5b60008267ffffffffffffffff81111561170757611706615109565b5b6040519080825280602002602001820160405280156117355781602001602082028036833780820191505090505b5090506117438460006127b5565b81600081518110611757576117566150da565b5b6020026020010181815250506000600190505b838110156117d4576117a285836001846117849190614e29565b81518110611795576117946150da565b5b60200260200101516127b5565b8282815181106117b5576117b46150da565b5b60200260200101818152505080806117cc90614f76565b91505061176a565b505092915050565b60155481565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61181461206c565b80601960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611883601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601a546121f6565b50565b60606003805461189590614f13565b80601f01602080910402602001604051908101604052809291908181526020018280546118c190614f13565b801561190e5780601f106118e35761010080835404028352916020019161190e565b820191906000526020600020905b8154815290600101906020018083116118f157829003601f168201915b5050505050905090565b601260009054906101000a900460ff1681565b600f60009054906101000a900460ff161561197b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197290614a8a565b60405180910390fd5b611983610dc0565b601b81905550600081116119cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c390614bea565b60405180910390fd5b601754811115611a11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0890614a0a565b60405180910390fd5b60165481601b54611a229190614d48565b1115611a63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5a906149ea565b60405180910390fd5b611a6b6117e2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611bff5760011515601260009054906101000a900460ff1615151415611ba457611ac233611193565b611b01576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af890614b8a565b60405180910390fd5b6000601c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506018548282611b549190614d48565b1115611b95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b8c9061496a565b60405180910390fd5b60145460118190555050611bae565b6015546011819055505b80601154611bbc9190614dcf565b341015611bfe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bf590614b2a565b60405180910390fd5b5b60008167ffffffffffffffff811115611c1b57611c1a615109565b5b604051908082528060200260200182016040528015611c495781602001602082028036833780820191505090505b509050611c5660006128ee565b81600081518110611c6a57611c696150da565b5b6020026020010181815250506000600190505b82811015611ce657611cb482600183611c969190614e29565b81518110611ca757611ca66150da565b5b60200260200101516128ee565b828281518110611cc757611cc66150da565b5b6020026020010181815250508080611cde90614f76565b915050611c7d565b505050565b611cfd611cf6612135565b8383612a26565b5050565b611d0961206c565b8060158190555050565b611d24611d1e612135565b8361238b565b611d63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5a90614baa565b60405180910390fd5b611d6f84848484612b93565b50505050565b60138181548110611d8557600080fd5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60185481565b60115481565b600e8054611dcd90614f13565b80601f0160208091040260200160405190810160405280929190818152602001828054611df990614f13565b8015611e465780601f10611e1b57610100808354040283529160200191611e46565b820191906000526020600020905b815481529060010190602001808311611e2957829003601f168201915b505050505081565b6060611e5982612bef565b611e98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e8f90614aca565b60405180910390fd5b6000611ea2612c5b565b90506000815111611ec25760405180602001604052806000815250611ef0565b80611ecc84612ced565b600e604051602001611ee093929190614727565b6040516020818303038152906040525b915050919050565b611f0061206c565b8060188190555050565b60165481565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60145481565b611fb261206c565b60136000611fc09190613b87565b818160139190611fd1929190613ba8565b505050565b611fde61206c565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561204e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120459061490a565b60405180910390fd5b612057816126ef565b50565b600061206582612e4e565b9050919050565b612074612135565b73ffffffffffffffffffffffffffffffffffffffff166120926117e2565b73ffffffffffffffffffffffffffffffffffffffff16146120e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120df90614a6a565b60405180910390fd5b565b6120f381612bef565b612132576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161212990614aea565b60405180910390fd5b50565b600033905090565b816006600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166121b08361146b565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6121fe612687565b6bffffffffffffffffffffffff16816bffffffffffffffffffffffff16111561225c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161225390614b6a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156122cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122c390614bca565b60405180910390fd5b60405180604001604052808373ffffffffffffffffffffffffffffffffffffffff168152602001826bffffffffffffffffffffffff168152506000808201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160000160146101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055509050505050565b6000806123978361146b565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806123d957506123d88185611f10565b5b8061241757508373ffffffffffffffffffffffffffffffffffffffff166123ff84610c22565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166124408261146b565b73ffffffffffffffffffffffffffffffffffffffff1614612496576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161248d9061492a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612506576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124fd9061498a565b60405180910390fd5b612511838383612ec8565b61251c60008261213d565b6001600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461256c9190614e29565b925050819055506001600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546125c39190614d48565b92505081905550816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612682838383612ed8565b505050565b6000612710905090565b600061269c8261146b565b90506126a782612edd565b8073ffffffffffffffffffffffffffffffffffffffff16827f41b05bf655882bc27017be44e8216d1059cbc6b9668d754f5a745dcce690a9d460405160405180910390a35050565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008060165490506000806000905060006127d08487612ef2565b90508092505b838311612806576127e683612bef565b6127f35760019150612806565b82806127fe90614f76565b9350506127d6565b8161284257600192505b808310156128415761282183612bef565b61282e5760019150612841565b828061283990614f76565b935050612810565b5b81612882576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161287990614aaa565b60405180910390fd5b601c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906128d290614f76565b91905055506128e18784612f93565b8294505050505092915050565b60008060165490506000806000905060006129098487612ef2565b90508092505b83831161293f5761291f83612bef565b61292c576001915061293f565b828061293790614f76565b93505061290f565b8161297b57600192505b8083101561297a5761295a83612bef565b612967576001915061297a565b828061297290614f76565b935050612949565b5b816129bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129b290614aaa565b60405180910390fd5b601c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190612a0b90614f76565b9190505550612a1a3384612f93565b82945050505050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612a95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a8c906149aa565b60405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051612b86919061486d565b60405180910390a3505050565b612b9e848484612420565b612baa84848484612fb1565b612be9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612be0906148ea565b60405180910390fd5b50505050565b60008073ffffffffffffffffffffffffffffffffffffffff166004600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6060600d8054612c6a90614f13565b80601f0160208091040260200160405190810160405280929190818152602001828054612c9690614f13565b8015612ce35780601f10612cb857610100808354040283529160200191612ce3565b820191906000526020600020905b815481529060010190602001808311612cc657829003601f168201915b5050505050905090565b60606000821415612d35576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612e49565b600082905060005b60008214612d67578080612d5090614f76565b915050600a82612d609190614d9e565b9150612d3d565b60008167ffffffffffffffff811115612d8357612d82615109565b5b6040519080825280601f01601f191660200182016040528015612db55781602001600182028036833780820191505090505b5090505b60008514612e4257600182612dce9190614e29565b9150600a85612ddd9190614fed565b6030612de99190614d48565b60f81b818381518110612dff57612dfe6150da565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85612e3b9190614d9e565b9450612db9565b8093505050505b919050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612ec15750612ec082613148565b5b9050919050565b612ed383838361322a565b505050565b505050565b612ee68161333e565b612eef8161345b565b50565b600080434060001c90506000600190505b60098111612f32578043612f179190614e29565b4060001c821891508080612f2a90614f76565b915050612f03565b5082601054612f419190614d48565b448233604051602001612f57949392919061476d565b6040516020818303038152906040528051906020012060001c905060018482612f809190614fed565b612f8a9190614d48565b91505092915050565b612fad8282604051806020016040528060008152506134ba565b5050565b6000612fd28473ffffffffffffffffffffffffffffffffffffffff16613515565b1561313b578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612ffb612135565b8786866040518563ffffffff1660e01b815260040161301d94939291906147d6565b602060405180830381600087803b15801561303757600080fd5b505af192505050801561306857506040513d601f19601f82011682018060405250810190613065919061406e565b60015b6130eb573d8060008114613098576040519150601f19603f3d011682016040523d82523d6000602084013e61309d565b606091505b506000815114156130e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130da906148ea565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050613140565b600190505b949350505050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061321357507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80613223575061322282613538565b5b9050919050565b6132358383836135b2565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561327857613273816135b7565b6132b7565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146132b6576132b58382613600565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156132fa576132f58161376d565b613339565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461333857613337828261383e565b5b5b505050565b60006133498261146b565b905061335781600084612ec8565b61336260008361213d565b6001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546133b29190614e29565b925050819055506004600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461345781600084612ed8565b5050565b60016000828152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556000820160146101000a8154906bffffffffffffffffffffffff0219169055505050565b6134c483836138bd565b6134d16000848484612fb1565b613510576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613507906148ea565b60405180910390fd5b505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60007f2a55205a000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806135ab57506135aa82613a97565b5b9050919050565b505050565b600a80549050600b600083815260200190815260200160002081905550600a81908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000600161360d846115ab565b6136179190614e29565b90506000600960008481526020019081526020016000205490508181146136fc576000600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816009600083815260200190815260200160002081905550505b6009600084815260200190815260200160002060009055600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b60006001600a805490506137819190614e29565b90506000600b60008481526020019081526020016000205490506000600a83815481106137b1576137b06150da565b5b9060005260206000200154905080600a83815481106137d3576137d26150da565b5b906000526020600020018190555081600b600083815260200190815260200160002081905550600b600085815260200190815260200160002060009055600a805480613822576138216150ab565b5b6001900381819060005260206000200160009055905550505050565b6000613849836115ab565b905081600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806009600084815260200190815260200160002081905550505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561392d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161392490614a4a565b60405180910390fd5b61393681612bef565b15613976576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161396d9061494a565b60405180910390fd5b61398260008383612ec8565b6001600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546139d29190614d48565b92505081905550816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4613a9360008383612ed8565b5050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b828054613b0d90614f13565b90600052602060002090601f016020900481019282613b2f5760008555613b76565b82601f10613b4857805160ff1916838001178555613b76565b82800160010185558215613b76579182015b82811115613b75578251825591602001919060010190613b5a565b5b509050613b839190613c48565b5090565b5080546000825590600052602060002090810190613ba59190613c48565b50565b828054828255906000526020600020908101928215613c37579160200282015b82811115613c3657823573ffffffffffffffffffffffffffffffffffffffff168260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190613bc8565b5b509050613c449190613c48565b5090565b5b80821115613c61576000816000905550600101613c49565b5090565b6000613c78613c7384614c4a565b614c25565b905082815260208101848484011115613c9457613c93615147565b5b613c9f848285614ed1565b509392505050565b6000613cba613cb584614c7b565b614c25565b905082815260208101848484011115613cd657613cd5615147565b5b613ce1848285614ed1565b509392505050565b600081359050613cf8816157b8565b92915050565b60008083601f840112613d1457613d1361513d565b5b8235905067ffffffffffffffff811115613d3157613d30615138565b5b602083019150836020820283011115613d4d57613d4c615142565b5b9250929050565b600081359050613d63816157cf565b92915050565b600081359050613d78816157e6565b92915050565b600081519050613d8d816157e6565b92915050565b600082601f830112613da857613da761513d565b5b8135613db8848260208601613c65565b91505092915050565b600082601f830112613dd657613dd561513d565b5b8135613de6848260208601613ca7565b91505092915050565b600081359050613dfe816157fd565b92915050565b600060208284031215613e1a57613e19615151565b5b6000613e2884828501613ce9565b91505092915050565b60008060408385031215613e4857613e47615151565b5b6000613e5685828601613ce9565b9250506020613e6785828601613ce9565b9150509250929050565b600080600060608486031215613e8a57613e89615151565b5b6000613e9886828701613ce9565b9350506020613ea986828701613ce9565b9250506040613eba86828701613def565b9150509250925092565b60008060008060808587031215613ede57613edd615151565b5b6000613eec87828801613ce9565b9450506020613efd87828801613ce9565b9350506040613f0e87828801613def565b925050606085013567ffffffffffffffff811115613f2f57613f2e61514c565b5b613f3b87828801613d93565b91505092959194509250565b60008060408385031215613f5e57613f5d615151565b5b6000613f6c85828601613ce9565b9250506020613f7d85828601613d54565b9150509250929050565b60008060408385031215613f9e57613f9d615151565b5b6000613fac85828601613ce9565b9250506020613fbd85828601613def565b9150509250929050565b60008060208385031215613fde57613fdd615151565b5b600083013567ffffffffffffffff811115613ffc57613ffb61514c565b5b61400885828601613cfe565b92509250509250929050565b60006020828403121561402a57614029615151565b5b600061403884828501613d54565b91505092915050565b60006020828403121561405757614056615151565b5b600061406584828501613d69565b91505092915050565b60006020828403121561408457614083615151565b5b600061409284828501613d7e565b91505092915050565b6000602082840312156140b1576140b0615151565b5b600082013567ffffffffffffffff8111156140cf576140ce61514c565b5b6140db84828501613dc1565b91505092915050565b6000602082840312156140fa576140f9615151565b5b600061410884828501613def565b91505092915050565b6000806040838503121561412857614127615151565b5b600061413685828601613def565b925050602061414785828601613def565b9150509250929050565b600061415d83836146f2565b60208301905092915050565b61417281614e5d565b82525050565b61418961418482614e5d565b614fbf565b82525050565b600061419a82614cd1565b6141a48185614cff565b93506141af83614cac565b8060005b838110156141e05781516141c78882614151565b97506141d283614cf2565b9250506001810190506141b3565b5085935050505092915050565b6141f681614e6f565b82525050565b600061420782614cdc565b6142118185614d10565b9350614221818560208601614ee0565b61422a81615156565b840191505092915050565b600061424082614ce7565b61424a8185614d2c565b935061425a818560208601614ee0565b61426381615156565b840191505092915050565b600061427982614ce7565b6142838185614d3d565b9350614293818560208601614ee0565b80840191505092915050565b600081546142ac81614f13565b6142b68186614d3d565b945060018216600081146142d157600181146142e257614315565b60ff19831686528186019350614315565b6142eb85614cbc565b60005b8381101561430d578154818901526001820191506020810190506142ee565b838801955050505b50505092915050565b600061432b601383614d2c565b915061433682615174565b602082019050919050565b600061434e602b83614d2c565b91506143598261519d565b604082019050919050565b6000614371603283614d2c565b915061437c826151ec565b604082019050919050565b6000614394602683614d2c565b915061439f8261523b565b604082019050919050565b60006143b7602583614d2c565b91506143c28261528a565b604082019050919050565b60006143da601c83614d2c565b91506143e5826152d9565b602082019050919050565b60006143fd601c83614d2c565b915061440882615302565b602082019050919050565b6000614420602483614d2c565b915061442b8261532b565b604082019050919050565b6000614443601983614d2c565b915061444e8261537a565b602082019050919050565b6000614466602983614d2c565b9150614471826153a3565b604082019050919050565b6000614489601683614d2c565b9150614494826153f2565b602082019050919050565b60006144ac602483614d2c565b91506144b78261541b565b604082019050919050565b60006144cf603e83614d2c565b91506144da8261546a565b604082019050919050565b60006144f2602083614d2c565b91506144fd826154b9565b602082019050919050565b6000614515602083614d2c565b9150614520826154e2565b602082019050919050565b6000614538601683614d2c565b91506145438261550b565b602082019050919050565b600061455b601483614d2c565b915061456682615534565b602082019050919050565b600061457e602f83614d2c565b91506145898261555d565b604082019050919050565b60006145a1601883614d2c565b91506145ac826155ac565b602082019050919050565b60006145c4602183614d2c565b91506145cf826155d5565b604082019050919050565b60006145e7600083614d21565b91506145f282615624565b600082019050919050565b600061460a601283614d2c565b915061461582615627565b602082019050919050565b600061462d602c83614d2c565b915061463882615650565b604082019050919050565b6000614650602a83614d2c565b915061465b8261569f565b604082019050919050565b6000614673601783614d2c565b915061467e826156ee565b602082019050919050565b6000614696602e83614d2c565b91506146a182615717565b604082019050919050565b60006146b9601983614d2c565b91506146c482615766565b602082019050919050565b60006146dc601b83614d2c565b91506146e78261578f565b602082019050919050565b6146fb81614ec7565b82525050565b61470a81614ec7565b82525050565b61472161471c82614ec7565b614fe3565b82525050565b6000614733828661426e565b915061473f828561426e565b915061474b828461429f565b9150819050949350505050565b6000614763826145da565b9150819050919050565b60006147798287614710565b6020820191506147898286614710565b6020820191506147998285614710565b6020820191506147a98284614178565b60148201915081905095945050505050565b60006020820190506147d06000830184614169565b92915050565b60006080820190506147eb6000830187614169565b6147f86020830186614169565b6148056040830185614701565b818103606083015261481781846141fc565b905095945050505050565b60006040820190506148376000830185614169565b6148446020830184614701565b9392505050565b60006020820190508181036000830152614865818461418f565b905092915050565b600060208201905061488260008301846141ed565b92915050565b600060208201905081810360008301526148a28184614235565b905092915050565b600060208201905081810360008301526148c38161431e565b9050919050565b600060208201905081810360008301526148e381614341565b9050919050565b6000602082019050818103600083015261490381614364565b9050919050565b6000602082019050818103600083015261492381614387565b9050919050565b60006020820190508181036000830152614943816143aa565b9050919050565b60006020820190508181036000830152614963816143cd565b9050919050565b60006020820190508181036000830152614983816143f0565b9050919050565b600060208201905081810360008301526149a381614413565b9050919050565b600060208201905081810360008301526149c381614436565b9050919050565b600060208201905081810360008301526149e381614459565b9050919050565b60006020820190508181036000830152614a038161447c565b9050919050565b60006020820190508181036000830152614a238161449f565b9050919050565b60006020820190508181036000830152614a43816144c2565b9050919050565b60006020820190508181036000830152614a63816144e5565b9050919050565b60006020820190508181036000830152614a8381614508565b9050919050565b60006020820190508181036000830152614aa38161452b565b9050919050565b60006020820190508181036000830152614ac38161454e565b9050919050565b60006020820190508181036000830152614ae381614571565b9050919050565b60006020820190508181036000830152614b0381614594565b9050919050565b60006020820190508181036000830152614b23816145b7565b9050919050565b60006020820190508181036000830152614b43816145fd565b9050919050565b60006020820190508181036000830152614b6381614620565b9050919050565b60006020820190508181036000830152614b8381614643565b9050919050565b60006020820190508181036000830152614ba381614666565b9050919050565b60006020820190508181036000830152614bc381614689565b9050919050565b60006020820190508181036000830152614be3816146ac565b9050919050565b60006020820190508181036000830152614c03816146cf565b9050919050565b6000602082019050614c1f6000830184614701565b92915050565b6000614c2f614c40565b9050614c3b8282614f45565b919050565b6000604051905090565b600067ffffffffffffffff821115614c6557614c64615109565b5b614c6e82615156565b9050602081019050919050565b600067ffffffffffffffff821115614c9657614c95615109565b5b614c9f82615156565b9050602081019050919050565b6000819050602082019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600081905092915050565b6000614d5382614ec7565b9150614d5e83614ec7565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614d9357614d9261501e565b5b828201905092915050565b6000614da982614ec7565b9150614db483614ec7565b925082614dc457614dc361504d565b5b828204905092915050565b6000614dda82614ec7565b9150614de583614ec7565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614e1e57614e1d61501e565b5b828202905092915050565b6000614e3482614ec7565b9150614e3f83614ec7565b925082821015614e5257614e5161501e565b5b828203905092915050565b6000614e6882614ea7565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b83811015614efe578082015181840152602081019050614ee3565b83811115614f0d576000848401525b50505050565b60006002820490506001821680614f2b57607f821691505b60208210811415614f3f57614f3e61507c565b5b50919050565b614f4e82615156565b810181811067ffffffffffffffff82111715614f6d57614f6c615109565b5b80604052505050565b6000614f8182614ec7565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415614fb457614fb361501e565b5b600182019050919050565b6000614fca82614fd1565b9050919050565b6000614fdc82615167565b9050919050565b6000819050919050565b6000614ff882614ec7565b915061500383614ec7565b9250826150135761501261504d565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f4661696c656420746f2077697468647261772100000000000000000000000000600082015250565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b7f6d6178204e465420706572206164647265737320657863656564656400000000600082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b7f6d6178204e4654206c696d697420657863656564656400000000000000000000600082015250565b7f6d6178206d696e7420616d6f756e74207065722073657373696f6e206578636560008201527f6564656400000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000602082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f74686520636f6e74726163742069732070617573656400000000000000000000600082015250565b7f206e6f20617661696c61626c6520746f6b656e73000000000000000000000000600082015250565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b50565b7f696e73756666696369656e742066756e64730000000000000000000000000000600082015250565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b7f455243323938313a20726f79616c7479206665652077696c6c2065786365656460008201527f2073616c65507269636500000000000000000000000000000000000000000000602082015250565b7f75736572206973206e6f742077686974656c6973746564000000000000000000600082015250565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206e6f7220617070726f766564000000000000000000000000000000000000602082015250565b7f455243323938313a20696e76616c696420726563656976657200000000000000600082015250565b7f6e65656420746f206d696e74206174206c656173742031204e46540000000000600082015250565b6157c181614e5d565b81146157cc57600080fd5b50565b6157d881614e6f565b81146157e357600080fd5b50565b6157ef81614e7b565b81146157fa57600080fd5b50565b61580681614ec7565b811461581157600080fd5b5056fea26469706673582212201213ea636483b6af912b08ecff6b7b04f44e9352fd69ced80b6e71e39b4b8b4164736f6c63430008050033