VeChain
Explorer
Mainnet
Search
Networks
Main
Test
Contract
0xcb831E…0c89
Summary
Transactions
Transfers
Address
0xcb831E98A3Ae13b4a124ef8D0088edFee3de0c89
VET
0.00
VET
VTHO
0.00
VTHO
Master
0x67523EDDb879f8D9232Ca40A11823d95Eac1C66C
Deployer
0x67523EDDb879f8D9232Ca40A11823d95Eac1C66C
Code
0x6080604052600436106102ae5760003560e01c80636f8b44b011610175578063a9b7f448116100dc578063c87b56dd11610095578063e985e9c51161006f578063e985e9c514610add578063ed88ed9f14610b1a578063edec5f2714610b45578063f2fde38b14610b6e576102ae565b8063c87b56dd14610a4c578063d0eb26b014610a89578063d5abeb0114610ab2576102ae565b8063a9b7f4481461093c578063b88d4fde14610965578063ba4e5c491461098e578063ba7d2c76146109cb578063bfb6939c146109f6578063c668286214610a21576102ae565b80638da5cb5b1161012e5780638da5cb5b1461084d5780638dc251e31461087857806395d89b41146108a15780639c70b512146108cc578063a0712d68146108f7578063a22cb46514610913576102ae565b80636f8b44b01461073f57806370a0823114610768578063715018a6146107a55780637f00c7a6146107bc578063833d6907146107e55780638a1a541414610822576102ae565b80632a55205a11610219578063438b6300116101d2578063438b6300146106095780634f6ccce71461064657806355f804b3146106835780635c975abb146106ac5780636352211e146106d75780636c0360eb14610714576102ae565b80632a55205a146104d65780632f745c59146105145780633af32abf146105515780633c9527641461058e57806342842e0e146105b757806342966c68146105e0576102ae565b80630e1cbef61161026b5780630e1cbef6146103d557806318160ddd146103fe57806318cae269146104295780631aa7534f14610466578063239c70ae1461048257806323b872dd146104ad576102ae565b806301ffc9a7146102b357806302329a29146102f0578063047fc9aa1461031957806306fdde0314610344578063081812fc1461036f578063095ea7b3146103ac575b600080fd5b3480156102bf57600080fd5b506102da60048036038101906102d591906140e0565b610b97565b6040516102e7919061492f565b60405180910390f35b3480156102fc57600080fd5b50610317600480360381019061031291906140b3565b610ba9565b005b34801561032557600080fd5b5061032e610bce565b60405161033b9190614cec565b60405180910390f35b34801561035057600080fd5b50610359610bd4565b604051610366919061494a565b60405180910390f35b34801561037b57600080fd5b5061039660048036038101906103919190614183565b610c66565b6040516103a3919061487d565b60405180910390f35b3480156103b857600080fd5b506103d360048036038101906103ce9190614026565b610cac565b005b3480156103e157600080fd5b506103fc60048036038101906103f79190614183565b610dc4565b005b34801561040a57600080fd5b50610413610e04565b6040516104209190614cec565b60405180910390f35b34801561043557600080fd5b50610450600480360381019061044b9190613ea3565b610e11565b60405161045d9190614cec565b60405180910390f35b610480600480360381019061047b9190613ea3565b610e29565b005b34801561048e57600080fd5b50610497610ee1565b6040516104a49190614cec565b60405180910390f35b3480156104b957600080fd5b506104d460048036038101906104cf9190613f10565b610ee7565b005b3480156104e257600080fd5b506104fd60048036038101906104f891906141b0565b610f47565b60405161050b9291906148e4565b60405180910390f35b34801561052057600080fd5b5061053b60048036038101906105369190614026565b611132565b6040516105489190614cec565b60405180910390f35b34801561055d57600080fd5b5061057860048036038101906105739190613ea3565b6111d7565b604051610585919061492f565b60405180910390f35b34801561059a57600080fd5b506105b560048036038101906105b091906140b3565b611286565b005b3480156105c357600080fd5b506105de60048036038101906105d99190613f10565b6112df565b005b3480156105ec57600080fd5b5061060760048036038101906106029190614183565b6112ff565b005b34801561061557600080fd5b50610630600480360381019061062b9190613ea3565b61135b565b60405161063d919061490d565b60405180910390f35b34801561065257600080fd5b5061066d60048036038101906106689190614183565b611409565b60405161067a9190614cec565b60405180910390f35b34801561068f57600080fd5b506106aa60048036038101906106a5919061413a565b61147a565b005b3480156106b857600080fd5b506106c161149c565b6040516106ce919061492f565b60405180910390f35b3480156106e357600080fd5b506106fe60048036038101906106f99190614183565b6114af565b60405161070b919061487d565b60405180910390f35b34801561072057600080fd5b50610729611561565b604051610736919061494a565b60405180910390f35b34801561074b57600080fd5b5061076660048036038101906107619190614183565b6115ef565b005b34801561077457600080fd5b5061078f600480360381019061078a9190613ea3565b61164a565b60405161079c9190614cec565b60405180910390f35b3480156107b157600080fd5b506107ba611702565b005b3480156107c857600080fd5b506107e360048036038101906107de9190614183565b611716565b005b3480156107f157600080fd5b5061080c60048036038101906108079190614026565b611728565b6040516108199190614cec565b60405180910390f35b34801561082e57600080fd5b5061083761187b565b6040516108449190614cec565b60405180910390f35b34801561085957600080fd5b50610862611881565b60405161086f919061487d565b60405180910390f35b34801561088457600080fd5b5061089f600480360381019061089a9190613ea3565b6118ab565b005b3480156108ad57600080fd5b506108b6611925565b6040516108c3919061494a565b60405180910390f35b3480156108d857600080fd5b506108e16119b7565b6040516108ee919061492f565b60405180910390f35b610911600480360381019061090c9190614183565b6119ca565b005b34801561091f57600080fd5b5061093a60048036038101906109359190613fe6565b611d8a565b005b34801561094857600080fd5b50610963600480360381019061095e9190614183565b611da0565b005b34801561097157600080fd5b5061098c60048036038101906109879190613f63565b611db2565b005b34801561099a57600080fd5b506109b560048036038101906109b09190614183565b611e14565b6040516109c2919061487d565b60405180910390f35b3480156109d757600080fd5b506109e0611e53565b6040516109ed9190614cec565b60405180910390f35b348015610a0257600080fd5b50610a0b611e59565b604051610a189190614cec565b60405180910390f35b348015610a2d57600080fd5b50610a36611e5f565b604051610a43919061494a565b60405180910390f35b348015610a5857600080fd5b50610a736004803603810190610a6e9190614183565b611eed565b604051610a80919061494a565b60405180910390f35b348015610a9557600080fd5b50610ab06004803603810190610aab9190614183565b611f97565b005b348015610abe57600080fd5b50610ac7611fa9565b604051610ad49190614cec565b60405180910390f35b348015610ae957600080fd5b50610b046004803603810190610aff9190613ed0565b611faf565b604051610b11919061492f565b60405180910390f35b348015610b2657600080fd5b50610b2f612043565b604051610b3c9190614cec565b60405180910390f35b348015610b5157600080fd5b50610b6c6004803603810190610b679190614066565b612049565b005b348015610b7a57600080fd5b50610b956004803603810190610b909190613ea3565b612075565b005b6000610ba2826120f9565b9050919050565b610bb161210b565b80600f60006101000a81548160ff02191690831515021790555050565b601b5481565b606060028054610be390614ff5565b80601f0160208091040260200160405190810160405280929190818152602001828054610c0f90614ff5565b8015610c5c5780601f10610c3157610100808354040283529160200191610c5c565b820191906000526020600020905b815481529060010190602001808311610c3f57829003601f168201915b5050505050905090565b6000610c7182612189565b6006600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610cb7826114af565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d1f90614bcc565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610d476121d4565b73ffffffffffffffffffffffffffffffffffffffff161480610d765750610d7581610d706121d4565b611faf565b5b610db5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dac90614aec565b60405180910390fd5b610dbf83836121dc565b505050565b610dcc61210b565b80601a81905550610e01601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601a54612295565b50565b6000600a80549050905090565b601c6020528060005260406000206000915090505481565b610e3161210b565b60008173ffffffffffffffffffffffffffffffffffffffff1647604051610e579061481a565b60006040518083038185875af1925050503d8060008114610e94576040519150601f19603f3d011682016040523d82523d6000602084013e610e99565b606091505b5050905080610edd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed49061496c565b60405180910390fd5b5050565b60175481565b610ef8610ef26121d4565b8261242a565b610f37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2e90614c6c565b60405180910390fd5b610f428383836124bf565b505050565b6000806000600160008681526020019081526020016000206040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff16815250509050600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff1614156110dd5760006040518060400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff168152505090505b60006110e7612726565b6bffffffffffffffffffffffff1682602001516bffffffffffffffffffffffff16866111139190614eb1565b61111d9190614e80565b90508160000151819350935050509250929050565b600061113d8361164a565b821061117e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111759061498c565b60405180910390fd5b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b600080600090505b60138054905081101561127b578273ffffffffffffffffffffffffffffffffffffffff1660138281548110611217576112166151bc565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611268576001915050611281565b808061127390615058565b9150506111df565b50600090505b919050565b61128e61210b565b80601260006101000a81548160ff02191690831515021790555060011515601260009054906101000a900460ff16151514156112d2576014546011819055506112dc565b6015546011819055505b50565b6112fa83838360405180602001604052806000815250611db2565b505050565b61131061130a6121d4565b8261242a565b61134f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134690614c6c565b60405180910390fd5b61135881612730565b50565b606060006113688361164a565b905060008167ffffffffffffffff811115611386576113856151eb565b5b6040519080825280602002602001820160405280156113b45781602001602082028036833780820191505090505b50905060005b828110156113fe576113cc8582611132565b8282815181106113df576113de6151bc565b5b60200260200101818152505080806113f690615058565b9150506113ba565b508092505050919050565b6000611413610e04565b8210611454576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144b90614c0c565b60405180910390fd5b600a8281548110611468576114676151bc565b5b90600052602060002001549050919050565b61148261210b565b80600d9080519060200190611498929190613ba0565b5050565b600f60009054906101000a900460ff1681565b6000806004600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611558576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154f90614bac565b60405180910390fd5b80915050919050565b600d805461156e90614ff5565b80601f016020809104026020016040519081016040528092919081815260200182805461159a90614ff5565b80156115e75780601f106115bc576101008083540402835291602001916115e7565b820191906000526020600020905b8154815290600101906020018083116115ca57829003601f168201915b505050505081565b6115f761210b565b6115ff610e04565b8111611640576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163790614c8c565b60405180910390fd5b8060168190555050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156116bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b290614a8c565b60405180910390fd5b600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61170a61210b565b611714600061278e565b565b61171e61210b565b8060178190555050565b6000611732610e04565b601b8190555060165482601b546117499190614e2a565b111561178a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178190614aac565b60405180910390fd5b60008267ffffffffffffffff8111156117a6576117a56151eb565b5b6040519080825280602002602001820160405280156117d45781602001602082028036833780820191505090505b5090506117e2846000612854565b816000815181106117f6576117f56151bc565b5b6020026020010181815250506000600190505b838110156118735761184185836001846118239190614f0b565b81518110611834576118336151bc565b5b6020026020010151612854565b828281518110611854576118536151bc565b5b602002602001018181525050808061186b90615058565b915050611809565b505092915050565b60155481565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6118b361210b565b80601960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611922601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601a54612295565b50565b60606003805461193490614ff5565b80601f016020809104026020016040519081016040528092919081815260200182805461196090614ff5565b80156119ad5780601f10611982576101008083540402835291602001916119ad565b820191906000526020600020905b81548152906001019060200180831161199057829003601f168201915b5050505050905090565b601260009054906101000a900460ff1681565b600f60009054906101000a900460ff1615611a1a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a1190614b4c565b60405180910390fd5b611a22610e04565b601b8190555060008111611a6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6290614ccc565b60405180910390fd5b601754811115611ab0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa790614acc565b60405180910390fd5b60165481601b54611ac19190614e2a565b1115611b02576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af990614aac565b60405180910390fd5b611b0a611881565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c9e5760011515601260009054906101000a900460ff1615151415611c4357611b61336111d7565b611ba0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9790614c4c565b60405180910390fd5b6000601c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506018548282611bf39190614e2a565b1115611c34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2b90614a2c565b60405180910390fd5b60145460118190555050611c4d565b6015546011819055505b80601154611c5b9190614eb1565b341015611c9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c9490614bec565b60405180910390fd5b5b60008167ffffffffffffffff811115611cba57611cb96151eb565b5b604051908082528060200260200182016040528015611ce85781602001602082028036833780820191505090505b509050611cf5600061298d565b81600081518110611d0957611d086151bc565b5b6020026020010181815250506000600190505b82811015611d8557611d5382600183611d359190614f0b565b81518110611d4657611d456151bc565b5b602002602001015161298d565b828281518110611d6657611d656151bc565b5b6020026020010181815250508080611d7d90615058565b915050611d1c565b505050565b611d9c611d956121d4565b8383612ac5565b5050565b611da861210b565b8060158190555050565b611dc3611dbd6121d4565b8361242a565b611e02576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611df990614c6c565b60405180910390fd5b611e0e84848484612c32565b50505050565b60138181548110611e2457600080fd5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60185481565b60115481565b600e8054611e6c90614ff5565b80601f0160208091040260200160405190810160405280929190818152602001828054611e9890614ff5565b8015611ee55780601f10611eba57610100808354040283529160200191611ee5565b820191906000526020600020905b815481529060010190602001808311611ec857829003601f168201915b505050505081565b6060611ef882612c8e565b611f37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f2e90614b8c565b60405180910390fd5b6000611f41612cfa565b90506000815111611f615760405180602001604052806000815250611f8f565b80611f6b84612d8c565b600e604051602001611f7f939291906147e9565b6040516020818303038152906040525b915050919050565b611f9f61210b565b8060188190555050565b60165481565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60145481565b61205161210b565b6013600061205f9190613c26565b818160139190612070929190613c47565b505050565b61207d61210b565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156120ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120e4906149cc565b60405180910390fd5b6120f68161278e565b50565b600061210482612eed565b9050919050565b6121136121d4565b73ffffffffffffffffffffffffffffffffffffffff16612131611881565b73ffffffffffffffffffffffffffffffffffffffff1614612187576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161217e90614b2c565b60405180910390fd5b565b61219281612c8e565b6121d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121c890614bac565b60405180910390fd5b50565b600033905090565b816006600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661224f836114af565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b61229d612726565b6bffffffffffffffffffffffff16816bffffffffffffffffffffffff1611156122fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122f290614c2c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561236b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161236290614cac565b60405180910390fd5b60405180604001604052808373ffffffffffffffffffffffffffffffffffffffff168152602001826bffffffffffffffffffffffff168152506000808201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160000160146101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055509050505050565b600080612436836114af565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061247857506124778185611faf565b5b806124b657508373ffffffffffffffffffffffffffffffffffffffff1661249e84610c66565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166124df826114af565b73ffffffffffffffffffffffffffffffffffffffff1614612535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161252c906149ec565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156125a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161259c90614a4c565b60405180910390fd5b6125b0838383612f67565b6125bb6000826121dc565b6001600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461260b9190614f0b565b925050819055506001600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546126629190614e2a565b92505081905550816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612721838383612f77565b505050565b6000612710905090565b600061273b826114af565b905061274682612f7c565b8073ffffffffffffffffffffffffffffffffffffffff16827f41b05bf655882bc27017be44e8216d1059cbc6b9668d754f5a745dcce690a9d460405160405180910390a35050565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080601654905060008060009050600061286f8487612f91565b90508092505b8383116128a55761288583612c8e565b61289257600191506128a5565b828061289d90615058565b935050612875565b816128e157600192505b808310156128e0576128c083612c8e565b6128cd57600191506128e0565b82806128d890615058565b9350506128af565b5b81612921576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161291890614b6c565b60405180910390fd5b601c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919061297190615058565b91905055506129808784613032565b8294505050505092915050565b60008060165490506000806000905060006129a88487612f91565b90508092505b8383116129de576129be83612c8e565b6129cb57600191506129de565b82806129d690615058565b9350506129ae565b81612a1a57600192505b80831015612a19576129f983612c8e565b612a065760019150612a19565b8280612a1190615058565b9350506129e8565b5b81612a5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a5190614b6c565b60405180910390fd5b601c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190612aaa90615058565b9190505550612ab93384613032565b82945050505050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612b34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b2b90614a6c565b60405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051612c25919061492f565b60405180910390a3505050565b612c3d8484846124bf565b612c4984848484613050565b612c88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c7f906149ac565b60405180910390fd5b50505050565b60008073ffffffffffffffffffffffffffffffffffffffff166004600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6060600d8054612d0990614ff5565b80601f0160208091040260200160405190810160405280929190818152602001828054612d3590614ff5565b8015612d825780601f10612d5757610100808354040283529160200191612d82565b820191906000526020600020905b815481529060010190602001808311612d6557829003601f168201915b5050505050905090565b60606000821415612dd4576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612ee8565b600082905060005b60008214612e06578080612def90615058565b915050600a82612dff9190614e80565b9150612ddc565b60008167ffffffffffffffff811115612e2257612e216151eb565b5b6040519080825280601f01601f191660200182016040528015612e545781602001600182028036833780820191505090505b5090505b60008514612ee157600182612e6d9190614f0b565b9150600a85612e7c91906150cf565b6030612e889190614e2a565b60f81b818381518110612e9e57612e9d6151bc565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85612eda9190614e80565b9450612e58565b8093505050505b919050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612f605750612f5f826131e7565b5b9050919050565b612f728383836132c9565b505050565b505050565b612f85816133dd565b612f8e816134fa565b50565b600080434060001c90506000600190505b60098111612fd1578043612fb69190614f0b565b4060001c821891508080612fc990615058565b915050612fa2565b5082601054612fe09190614e2a565b448233604051602001612ff6949392919061482f565b6040516020818303038152906040528051906020012060001c90506001848261301f91906150cf565b6130299190614e2a565b91505092915050565b61304c828260405180602001604052806000815250613559565b5050565b60006130718473ffffffffffffffffffffffffffffffffffffffff166135b4565b156131da578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261309a6121d4565b8786866040518563ffffffff1660e01b81526004016130bc9493929190614898565b602060405180830381600087803b1580156130d657600080fd5b505af192505050801561310757506040513d601f19601f82011682018060405250810190613104919061410d565b60015b61318a573d8060008114613137576040519150601f19603f3d011682016040523d82523d6000602084013e61313c565b606091505b50600081511415613182576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613179906149ac565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506131df565b600190505b949350505050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806132b257507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806132c257506132c1826135d7565b5b9050919050565b6132d4838383613651565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156133175761331281613656565b613356565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161461335557613354838261369f565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415613399576133948161380c565b6133d8565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146133d7576133d682826138dd565b5b5b505050565b60006133e8826114af565b90506133f681600084612f67565b6134016000836121dc565b6001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546134519190614f0b565b925050819055506004600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46134f681600084612f77565b5050565b60016000828152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556000820160146101000a8154906bffffffffffffffffffffffff0219169055505050565b613563838361395c565b6135706000848484613050565b6135af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016135a6906149ac565b60405180910390fd5b505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60007f2a55205a000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061364a575061364982613b36565b5b9050919050565b505050565b600a80549050600b600083815260200190815260200160002081905550600a81908060018154018082558091505060019003906000526020600020016000909190919091505550565b600060016136ac8461164a565b6136b69190614f0b565b905060006009600084815260200190815260200160002054905081811461379b576000600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816009600083815260200190815260200160002081905550505b6009600084815260200190815260200160002060009055600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b60006001600a805490506138209190614f0b565b90506000600b60008481526020019081526020016000205490506000600a83815481106138505761384f6151bc565b5b9060005260206000200154905080600a8381548110613872576138716151bc565b5b906000526020600020018190555081600b600083815260200190815260200160002081905550600b600085815260200190815260200160002060009055600a8054806138c1576138c061518d565b5b6001900381819060005260206000200160009055905550505050565b60006138e88361164a565b905081600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806009600084815260200190815260200160002081905550505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156139cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016139c390614b0c565b60405180910390fd5b6139d581612c8e565b15613a15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a0c90614a0c565b60405180910390fd5b613a2160008383612f67565b6001600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254613a719190614e2a565b92505081905550816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4613b3260008383612f77565b5050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b828054613bac90614ff5565b90600052602060002090601f016020900481019282613bce5760008555613c15565b82601f10613be757805160ff1916838001178555613c15565b82800160010185558215613c15579182015b82811115613c14578251825591602001919060010190613bf9565b5b509050613c229190613ce7565b5090565b5080546000825590600052602060002090810190613c449190613ce7565b50565b828054828255906000526020600020908101928215613cd6579160200282015b82811115613cd557823573ffffffffffffffffffffffffffffffffffffffff168260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190613c67565b5b509050613ce39190613ce7565b5090565b5b80821115613d00576000816000905550600101613ce8565b5090565b6000613d17613d1284614d2c565b614d07565b905082815260208101848484011115613d3357613d32615229565b5b613d3e848285614fb3565b509392505050565b6000613d59613d5484614d5d565b614d07565b905082815260208101848484011115613d7557613d74615229565b5b613d80848285614fb3565b509392505050565b600081359050613d97816158e9565b92915050565b60008083601f840112613db357613db261521f565b5b8235905067ffffffffffffffff811115613dd057613dcf61521a565b5b602083019150836020820283011115613dec57613deb615224565b5b9250929050565b600081359050613e0281615900565b92915050565b600081359050613e1781615917565b92915050565b600081519050613e2c81615917565b92915050565b600082601f830112613e4757613e4661521f565b5b8135613e57848260208601613d04565b91505092915050565b600082601f830112613e7557613e7461521f565b5b8135613e85848260208601613d46565b91505092915050565b600081359050613e9d8161592e565b92915050565b600060208284031215613eb957613eb8615233565b5b6000613ec784828501613d88565b91505092915050565b60008060408385031215613ee757613ee6615233565b5b6000613ef585828601613d88565b9250506020613f0685828601613d88565b9150509250929050565b600080600060608486031215613f2957613f28615233565b5b6000613f3786828701613d88565b9350506020613f4886828701613d88565b9250506040613f5986828701613e8e565b9150509250925092565b60008060008060808587031215613f7d57613f7c615233565b5b6000613f8b87828801613d88565b9450506020613f9c87828801613d88565b9350506040613fad87828801613e8e565b925050606085013567ffffffffffffffff811115613fce57613fcd61522e565b5b613fda87828801613e32565b91505092959194509250565b60008060408385031215613ffd57613ffc615233565b5b600061400b85828601613d88565b925050602061401c85828601613df3565b9150509250929050565b6000806040838503121561403d5761403c615233565b5b600061404b85828601613d88565b925050602061405c85828601613e8e565b9150509250929050565b6000806020838503121561407d5761407c615233565b5b600083013567ffffffffffffffff81111561409b5761409a61522e565b5b6140a785828601613d9d565b92509250509250929050565b6000602082840312156140c9576140c8615233565b5b60006140d784828501613df3565b91505092915050565b6000602082840312156140f6576140f5615233565b5b600061410484828501613e08565b91505092915050565b60006020828403121561412357614122615233565b5b600061413184828501613e1d565b91505092915050565b6000602082840312156141505761414f615233565b5b600082013567ffffffffffffffff81111561416e5761416d61522e565b5b61417a84828501613e60565b91505092915050565b60006020828403121561419957614198615233565b5b60006141a784828501613e8e565b91505092915050565b600080604083850312156141c7576141c6615233565b5b60006141d585828601613e8e565b92505060206141e685828601613e8e565b9150509250929050565b60006141fc83836147b4565b60208301905092915050565b61421181614f3f565b82525050565b61422861422382614f3f565b6150a1565b82525050565b600061423982614db3565b6142438185614de1565b935061424e83614d8e565b8060005b8381101561427f57815161426688826141f0565b975061427183614dd4565b925050600181019050614252565b5085935050505092915050565b61429581614f51565b82525050565b60006142a682614dbe565b6142b08185614df2565b93506142c0818560208601614fc2565b6142c981615238565b840191505092915050565b60006142df82614dc9565b6142e98185614e0e565b93506142f9818560208601614fc2565b61430281615238565b840191505092915050565b600061431882614dc9565b6143228185614e1f565b9350614332818560208601614fc2565b80840191505092915050565b6000815461434b81614ff5565b6143558186614e1f565b945060018216600081146143705760018114614381576143b4565b60ff198316865281860193506143b4565b61438a85614d9e565b60005b838110156143ac5781548189015260018201915060208101905061438d565b838801955050505b50505092915050565b60006143ca601383614e0e565b91506143d582615256565b602082019050919050565b60006143ed602b83614e0e565b91506143f88261527f565b604082019050919050565b6000614410603283614e0e565b915061441b826152ce565b604082019050919050565b6000614433602683614e0e565b915061443e8261531d565b604082019050919050565b6000614456602583614e0e565b91506144618261536c565b604082019050919050565b6000614479601c83614e0e565b9150614484826153bb565b602082019050919050565b600061449c601c83614e0e565b91506144a7826153e4565b602082019050919050565b60006144bf602483614e0e565b91506144ca8261540d565b604082019050919050565b60006144e2601983614e0e565b91506144ed8261545c565b602082019050919050565b6000614505602983614e0e565b915061451082615485565b604082019050919050565b6000614528601683614e0e565b9150614533826154d4565b602082019050919050565b600061454b602483614e0e565b9150614556826154fd565b604082019050919050565b600061456e603e83614e0e565b91506145798261554c565b604082019050919050565b6000614591602083614e0e565b915061459c8261559b565b602082019050919050565b60006145b4602083614e0e565b91506145bf826155c4565b602082019050919050565b60006145d7601683614e0e565b91506145e2826155ed565b602082019050919050565b60006145fa601483614e0e565b915061460582615616565b602082019050919050565b600061461d602f83614e0e565b91506146288261563f565b604082019050919050565b6000614640601883614e0e565b915061464b8261568e565b602082019050919050565b6000614663602183614e0e565b915061466e826156b7565b604082019050919050565b6000614686600083614e03565b915061469182615706565b600082019050919050565b60006146a9601283614e0e565b91506146b482615709565b602082019050919050565b60006146cc602c83614e0e565b91506146d782615732565b604082019050919050565b60006146ef602a83614e0e565b91506146fa82615781565b604082019050919050565b6000614712601783614e0e565b915061471d826157d0565b602082019050919050565b6000614735602e83614e0e565b9150614740826157f9565b604082019050919050565b6000614758603c83614e0e565b915061476382615848565b604082019050919050565b600061477b601983614e0e565b915061478682615897565b602082019050919050565b600061479e601b83614e0e565b91506147a9826158c0565b602082019050919050565b6147bd81614fa9565b82525050565b6147cc81614fa9565b82525050565b6147e36147de82614fa9565b6150c5565b82525050565b60006147f5828661430d565b9150614801828561430d565b915061480d828461433e565b9150819050949350505050565b600061482582614679565b9150819050919050565b600061483b82876147d2565b60208201915061484b82866147d2565b60208201915061485b82856147d2565b60208201915061486b8284614217565b60148201915081905095945050505050565b60006020820190506148926000830184614208565b92915050565b60006080820190506148ad6000830187614208565b6148ba6020830186614208565b6148c760408301856147c3565b81810360608301526148d9818461429b565b905095945050505050565b60006040820190506148f96000830185614208565b61490660208301846147c3565b9392505050565b60006020820190508181036000830152614927818461422e565b905092915050565b6000602082019050614944600083018461428c565b92915050565b6000602082019050818103600083015261496481846142d4565b905092915050565b60006020820190508181036000830152614985816143bd565b9050919050565b600060208201905081810360008301526149a5816143e0565b9050919050565b600060208201905081810360008301526149c581614403565b9050919050565b600060208201905081810360008301526149e581614426565b9050919050565b60006020820190508181036000830152614a0581614449565b9050919050565b60006020820190508181036000830152614a258161446c565b9050919050565b60006020820190508181036000830152614a458161448f565b9050919050565b60006020820190508181036000830152614a65816144b2565b9050919050565b60006020820190508181036000830152614a85816144d5565b9050919050565b60006020820190508181036000830152614aa5816144f8565b9050919050565b60006020820190508181036000830152614ac58161451b565b9050919050565b60006020820190508181036000830152614ae58161453e565b9050919050565b60006020820190508181036000830152614b0581614561565b9050919050565b60006020820190508181036000830152614b2581614584565b9050919050565b60006020820190508181036000830152614b45816145a7565b9050919050565b60006020820190508181036000830152614b65816145ca565b9050919050565b60006020820190508181036000830152614b85816145ed565b9050919050565b60006020820190508181036000830152614ba581614610565b9050919050565b60006020820190508181036000830152614bc581614633565b9050919050565b60006020820190508181036000830152614be581614656565b9050919050565b60006020820190508181036000830152614c058161469c565b9050919050565b60006020820190508181036000830152614c25816146bf565b9050919050565b60006020820190508181036000830152614c45816146e2565b9050919050565b60006020820190508181036000830152614c6581614705565b9050919050565b60006020820190508181036000830152614c8581614728565b9050919050565b60006020820190508181036000830152614ca58161474b565b9050919050565b60006020820190508181036000830152614cc58161476e565b9050919050565b60006020820190508181036000830152614ce581614791565b9050919050565b6000602082019050614d0160008301846147c3565b92915050565b6000614d11614d22565b9050614d1d8282615027565b919050565b6000604051905090565b600067ffffffffffffffff821115614d4757614d466151eb565b5b614d5082615238565b9050602081019050919050565b600067ffffffffffffffff821115614d7857614d776151eb565b5b614d8182615238565b9050602081019050919050565b6000819050602082019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600081905092915050565b6000614e3582614fa9565b9150614e4083614fa9565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614e7557614e74615100565b5b828201905092915050565b6000614e8b82614fa9565b9150614e9683614fa9565b925082614ea657614ea561512f565b5b828204905092915050565b6000614ebc82614fa9565b9150614ec783614fa9565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614f0057614eff615100565b5b828202905092915050565b6000614f1682614fa9565b9150614f2183614fa9565b925082821015614f3457614f33615100565b5b828203905092915050565b6000614f4a82614f89565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b83811015614fe0578082015181840152602081019050614fc5565b83811115614fef576000848401525b50505050565b6000600282049050600182168061500d57607f821691505b602082108114156150215761502061515e565b5b50919050565b61503082615238565b810181811067ffffffffffffffff8211171561504f5761504e6151eb565b5b80604052505050565b600061506382614fa9565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561509657615095615100565b5b600182019050919050565b60006150ac826150b3565b9050919050565b60006150be82615249565b9050919050565b6000819050919050565b60006150da82614fa9565b91506150e583614fa9565b9250826150f5576150f461512f565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f4661696c656420746f2077697468647261772100000000000000000000000000600082015250565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b7f6d6178204e465420706572206164647265737320657863656564656400000000600082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b7f6d6178204e4654206c696d697420657863656564656400000000000000000000600082015250565b7f6d6178206d696e7420616d6f756e74207065722073657373696f6e206578636560008201527f6564656400000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000602082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f74686520636f6e74726163742069732070617573656400000000000000000000600082015250565b7f206e6f20617661696c61626c6520746f6b656e73000000000000000000000000600082015250565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b50565b7f696e73756666696369656e742066756e64730000000000000000000000000000600082015250565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b7f455243323938313a20726f79616c7479206665652077696c6c2065786365656460008201527f2073616c65507269636500000000000000000000000000000000000000000000602082015250565b7f75736572206973206e6f742077686974656c6973746564000000000000000000600082015250565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206e6f7220617070726f766564000000000000000000000000000000000000602082015250565b7f4e6577206d617820737570706c79206d7573742062652067726561746572207460008201527f68616e207468652063757272656e7420746f74616c20737570706c7900000000602082015250565b7f455243323938313a20696e76616c696420726563656976657200000000000000600082015250565b7f6e65656420746f206d696e74206174206c656173742031204e46540000000000600082015250565b6158f281614f3f565b81146158fd57600080fd5b50565b61590981614f51565b811461591457600080fd5b50565b61592081614f5d565b811461592b57600080fd5b50565b61593781614fa9565b811461594257600080fd5b5056fea2646970667358221220d959ac277ec982aaaff1799af3bdb39327598c06ce2de553ab52f5da34494f6564736f6c63430008050033