VeChain
Explorer
Mainnet
Search
Networks
Main
Test
Contract
0x2A7Bc6…30c3
Summary
Transactions
Transfers
Address
0x2A7Bc6E39bCf51f5c55E7FC779E6b4DA30be30c3
VET
0.00
VET
VTHO
0.00
VTHO
Master
0x6806C9E4D3f30051E05A416c7226918BC749Fed5
Deployer
0x6806C9E4D3f30051E05A416c7226918BC749Fed5
Code
0x6080604052600436106103355760003560e01c8063752312a9116101ab578063c87b56dd116100f7578063ee147dd111610095578063f45664ee1161006f578063f45664ee14610bf3578063f48c767314610c1e578063f5b541a614610c49578063fc78fa2214610c7457610335565b8063ee147dd114610b74578063f18d20be14610bb1578063f2894cae14610bc857610335565b8063ce9252f8116100d1578063ce9252f814610ab8578063d547741f14610ae3578063e36d649814610b0c578063e985e9c514610b3757610335565b8063c87b56dd14610a25578063ca51a69714610a62578063cb774d4714610a8d57610335565b806395d89b4111610164578063a22cb4651161013e578063a22cb4651461097d578063a5d256b3146109a6578063b86920ff146109d1578063b88d4fde146109fc57610335565b806395d89b41146108ea578063a019947a14610915578063a217fddf1461095257610335565b8063752312a9146107f95780638456cb591461081557806384970d2b1461082c5780638a1442d91461085757806391d1485414610882578063946807fd146108bf57610335565b80632f2ff15d1161028557806342842e0e116102235780636352211e116101fd5780636352211e1461073d57806370a082311461077a5780637393e704146107b757806374df39c9146107e257610335565b806342842e0e146106d25780634e7933b5146106fb5780635425e82a1461072657610335565b806335f8b4c01161025f57806335f8b4c01461062c57806336568abe146106555780633e976df51461067e5780633f4ba83a146106bb57610335565b80632f2ff15d1461059b5780632f745c59146105c457806332cb6b0c1461060157610335565b806313ca1941116102f257806323b872dd116102cc57806323b872dd146104df578063248a9ca3146105085780632858349d146105455780632b1df2e01461057057610335565b806313ca19411461045e57806318160ddd1461048957806318e20a38146104b457610335565b806301ffc9a71461033a57806302d81a121461037757806306fdde03146103a2578063081812fc146103cd5780630878c0881461040a578063095ea7b314610435575b600080fd5b34801561034657600080fd5b50610361600480360381019061035c9190613fe2565b610c9f565b60405161036e9190614d11565b60405180910390f35b34801561038357600080fd5b5061038c610d81565b6040516103999190615189565b60405180910390f35b3480156103ae57600080fd5b506103b7610d8e565b6040516103c49190614d47565b60405180910390f35b3480156103d957600080fd5b506103f460048036038101906103ef9190614075565b610e20565b6040516104019190614c81565b60405180910390f35b34801561041657600080fd5b5061041f610ea5565b60405161042c9190615189565b60405180910390f35b34801561044157600080fd5b5061045c60048036038101906104579190613f18565b610eab565b005b34801561046a57600080fd5b50610473610fc3565b6040516104809190614d11565b60405180910390f35b34801561049557600080fd5b5061049e610fd6565b6040516104ab9190615189565b60405180910390f35b3480156104c057600080fd5b506104c9610fe7565b6040516104d69190615189565b60405180910390f35b3480156104eb57600080fd5b5061050660048036038101906105019190613e12565b610fed565b005b34801561051457600080fd5b5061052f600480360381019061052a9190613f7d565b61109d565b60405161053c9190614d2c565b60405180910390f35b34801561055157600080fd5b5061055a6110bc565b60405161056791906151a4565b60405180910390f35b34801561057c57600080fd5b506105856110c1565b6040516105929190615189565b60405180910390f35b3480156105a757600080fd5b506105c260048036038101906105bd9190613fa6565b6110c6565b005b3480156105d057600080fd5b506105eb60048036038101906105e69190613f18565b61112c565b6040516105f89190615189565b60405180910390f35b34801561060d57600080fd5b50610616611187565b6040516106239190615189565b60405180910390f35b34801561063857600080fd5b50610653600480360381019061064e9190613d84565b61118d565b005b34801561066157600080fd5b5061067c60048036038101906106779190613fa6565b61123a565b005b34801561068a57600080fd5b506106a560048036038101906106a09190614034565b6112bd565b6040516106b29190614d47565b60405180910390f35b3480156106c757600080fd5b506106d0611408565b005b3480156106de57600080fd5b506106f960048036038101906106f49190613e12565b6114dd565b005b34801561070757600080fd5b506107106114fd565b60405161071d91906151a4565b60405180910390f35b34801561073257600080fd5b5061073b611502565b005b34801561074957600080fd5b50610764600480360381019061075f9190614075565b611588565b6040516107719190614c81565b60405180910390f35b34801561078657600080fd5b506107a1600480360381019061079c9190613d84565b61161a565b6040516107ae9190615189565b60405180910390f35b3480156107c357600080fd5b506107cc6116d9565b6040516107d99190615189565b60405180910390f35b3480156107ee57600080fd5b506107f76116df565b005b610813600480360381019061080e91906140c7565b611859565b005b34801561082157600080fd5b5061082a612027565b005b34801561083857600080fd5b506108416120fd565b60405161084e9190615189565b60405180910390f35b34801561086357600080fd5b5061086c612102565b60405161087991906151a4565b60405180910390f35b34801561088e57600080fd5b506108a960048036038101906108a49190613fa6565b612107565b6040516108b69190614d11565b60405180910390f35b3480156108cb57600080fd5b506108d4612171565b6040516108e19190615189565b60405180910390f35b3480156108f657600080fd5b506108ff612177565b60405161090c9190614d47565b60405180910390f35b34801561092157600080fd5b5061093c6004803603810190610937919061411b565b612209565b6040516109499190614d11565b60405180910390f35b34801561095e57600080fd5b50610967612265565b6040516109749190614d2c565b60405180910390f35b34801561098957600080fd5b506109a4600480360381019061099f9190613edc565b61226c565b005b3480156109b257600080fd5b506109bb6123ed565b6040516109c89190615189565b60405180910390f35b3480156109dd57600080fd5b506109e66123f3565b6040516109f39190615189565b60405180910390f35b348015610a0857600080fd5b50610a236004803603810190610a1e9190613e61565b612400565b005b348015610a3157600080fd5b50610a4c6004803603810190610a479190614075565b6124b2565b604051610a599190614d47565b60405180910390f35b348015610a6e57600080fd5b50610a7761255a565b604051610a849190615189565b60405180910390f35b348015610a9957600080fd5b50610aa2612560565b604051610aaf9190615189565b60405180910390f35b348015610ac457600080fd5b50610acd612566565b604051610ada9190615189565b60405180910390f35b348015610aef57600080fd5b50610b0a6004803603810190610b059190613fa6565b61256c565b005b348015610b1857600080fd5b50610b216125d2565b604051610b2e9190615189565b60405180910390f35b348015610b4357600080fd5b50610b5e6004803603810190610b599190613dd6565b6125d8565b604051610b6b9190614d11565b60405180910390f35b348015610b8057600080fd5b50610b9b6004803603810190610b96919061411b565b61266c565b604051610ba89190615189565b60405180910390f35b348015610bbd57600080fd5b50610bc6612756565b005b348015610bd457600080fd5b50610bdd6129d5565b604051610bea91906151a4565b60405180910390f35b348015610bff57600080fd5b50610c086129da565b604051610c159190615189565b60405180910390f35b348015610c2a57600080fd5b50610c336129e0565b604051610c409190615189565b60405180910390f35b348015610c5557600080fd5b50610c5e6129ed565b604051610c6b9190614d2c565b60405180910390f35b348015610c8057600080fd5b50610c89612a11565b604051610c9691906151a4565b60405180910390f35b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610d6a57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610d7a5750610d7982612a16565b5b9050919050565b6897c9ce4cf6d5c0000081565b606060068054610d9d90615430565b80601f0160208091040260200160405190810160405280929190818152602001828054610dc990615430565b8015610e165780601f10610deb57610100808354040283529160200191610e16565b820191906000526020600020905b815481529060010190602001808311610df957829003601f168201915b5050505050905090565b6000610e2b82612a90565b610e6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6190615049565b60405180910390fd5b6010600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6105a881565b6000610eb682611588565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610f27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1e90615029565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610f46612aad565b73ffffffffffffffffffffffffffffffffffffffff161480610f755750610f7481610f6f612aad565b6125d8565b5b610fb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fab90614e69565b60405180910390fd5b610fbe8383612ab5565b505050565b600360009054906101000a900460ff1681565b6000610fe2600a612b6e565b905090565b60025481565b601360149054906101000a900460ff161561103d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161103490614e09565b60405180910390fd5b61104e611048612aad565b82612b83565b61108d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108490614dc9565b60405180910390fd5b611098838383612c61565b505050565b6000806000838152602001908152602001600020600101549050919050565b600a81565b600081565b6110df6110d28361109d565b6110da612aad565b612107565b61111e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111590614da9565b60405180910390fd5b6111288282612e78565b5050565b600061117f82600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020612f5890919063ffffffff16565b905092915050565b61271081565b6111b77f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92933612107565b6111f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ed906150c9565b60405180910390fd5b80601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b611242612aad565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146112af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a690615169565b60405180910390fd5b6112b98282612f72565b5050565b60606112e97f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92933612107565b611328576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131f90614e89565b60405180910390fd5b816008908051906020019061133e929190613b54565b507fdca754e79a89ba1cac3b53e14e9a25d9c20773f49910b1ac05c97745901b2ddc8260405161136e9190614d47565b60405180910390a16008805461138390615430565b80601f01602080910402602001604051908101604052809291908181526020018280546113af90615430565b80156113fc5780601f106113d1576101008083540402835291602001916113fc565b820191906000526020600020905b8154815290600101906020018083116113df57829003601f168201915b50505050509050919050565b6114327f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92933612107565b611471576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146890614e89565b60405180910390fd5b601360149054906101000a900460ff166114c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b7906150a9565b60405180910390fd5b6000601360146101000a81548160ff021916908315150217905550565b6114f883838360405180602001604052806000815250612400565b505050565b600581565b61152c7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92933612107565b61156b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156290615069565b60405180910390fd5b6000600360006101000a81548160ff021916908315150217905550565b60008061159f83600a61305390919063ffffffff16565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611611576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160890614fc9565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561168b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168290615089565b60405180910390fd5b6116d2600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020613070565b9050919050565b6103b481565b600060055414611724576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171b90614e49565b60405180910390fd5b6000600454141561176a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176190614fe9565b60405180910390fd5b6117947f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92933612107565b6117d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117ca90615069565b60405180910390fd5b6127106004544060001c6117e791906154ab565b60058190555060ff6118046004544361308590919063ffffffff16565b111561182f5761271060014361181a919061532f565b4060001c61182891906154ab565b6005819055505b6000600554141561185757611850600160055461309b90919063ffffffff16565b6005819055505b565b601360149054906101000a900460ff16156118a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118a090614e09565b60405180910390fd5b6001544210156118ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e590615109565b60405180910390fd5b6127106118f9610fd6565b10611939576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161193090614f09565b60405180910390fd5b60405160200161194890614c57565b604051602081830303815290604052805190602001208160405160200161196f9190614c1c565b6040516020818303038152906040528051906020012014806119da575060405160200161199b90614c6c565b60405160208183030381529060405280519060200120816040516020016119c29190614c1c565b60405160208183030381529060405280519060200120145b611a19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a1090614f09565b60405180910390fd5b6000604051602001611a2a90614c57565b6040516020818303038152906040528051906020012082604051602001611a519190614c1c565b60405160208183030381529060405280519060200120148015611a87575060011515600360009054906101000a900460ff161515145b15611c8a5734682b5e3af16b1880000014611ad7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ace90614e29565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636352211e856040518263ffffffff1660e01b8152600401611b499190615189565b602060405180830381600087803b158015611b6357600080fd5b505af1158015611b77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b9b9190613dad565b73ffffffffffffffffffffffffffffffffffffffff1614611bf1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611be890614f49565b60405180910390fd5b600e600084815260200190815260200160002060009054906101000a900460ff1615611c52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c4990614d89565b60405180910390fd5b6001600e600085815260200190815260200160002060006101000a81548160ff021916908315150217905550600160ff169050611f21565b604051602001611c9990614c6c565b6040516020818303038152906040528051906020012082604051602001611cc09190614c1c565b60405160208183030381529060405280519060200120148015611cf6575060011515600360009054906101000a900460ff161515145b15611eb3573373ffffffffffffffffffffffffffffffffffffffff16601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636352211e856040518263ffffffff1660e01b8152600401611d6d9190615189565b602060405180830381600087803b158015611d8757600080fd5b505af1158015611d9b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dbf9190613dad565b73ffffffffffffffffffffffffffffffffffffffff1614611e15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0c90614f49565b60405180910390fd5b600f600084815260200190815260200160002060009054906101000a900460ff1615611e76576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6d90614d89565b60405180910390fd5b6001600f600085815260200190815260200160002060006101000a81548160ff021916908315150217905550611eac833461266c565b9050611f20565b60001515600360009054906101000a900460ff1615151415611f1f57346897c9ce4cf6d5c0000014611f1a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f1190614e29565b60405180910390fd5b600190505b5b5b612710611f3e82611f30610fd6565b61309b90919063ffffffff16565b1115611f7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f7690614f09565b60405180910390fd5b60005b81811015611fed576000611f94610fd6565b9050611fa033826130b1565b7f424fd5d39a3c2d2c3a40d21b2f3a01a56799dcb73fa30b8f160d7d69f7d4f2c93382604051611fd1929190614ce8565b60405180910390a1508080611fe590615462565b915050611f82565b5060006004541480156120155750612710612006610fd6565b148061201457506002544210155b5b1561202257436004819055505b505050565b6120517f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92933612107565b612090576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161208790614e89565b60405180910390fd5b601360149054906101000a900460ff16156120e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120d790614fa9565b60405180910390fd5b6001601360146101000a81548160ff021916908315150217905550565b600081565b600681565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60015481565b60606007805461218690615430565b80601f01602080910402602001604051908101604052809291908181526020018280546121b290615430565b80156121ff5780601f106121d4576101008083540402835291602001916121ff565b820191906000526020600020905b8154815290600101906020018083116121e257829003601f168201915b5050505050905090565b60008082141561223b57600e600084815260200190815260200160002060009054906101000a900460ff16905061225f565b600f600084815260200190815260200160002060009054906101000a900460ff1690505b92915050565b6000801b81565b612274612aad565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156122e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122d990614f29565b60405180910390fd5b80601160006122ef612aad565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff1661239c612aad565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516123e19190614d11565b60405180910390a35050565b61041881565b682b5e3af16b1880000081565b601360149054906101000a900460ff1615612450576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161244790614e09565b60405180910390fd5b61246161245b612aad565b83612b83565b6124a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161249790614dc9565b60405180910390fd5b6124ac848484846130cf565b50505050565b60606124bd82612a90565b6124fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124f390615149565b60405180910390fd5b60006008805461250b90615430565b9050116125275760405180602001604052806000815250612553565b60086125328361312b565b604051602001612543929190614c33565b6040516020818303038152906040525b9050919050565b61044a81565b60055481565b6103e681565b6125856125788361109d565b612580612aad565b612107565b6125c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125bb90614f89565b60405180910390fd5b6125ce8282612f72565b5050565b60045481565b6000601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60006105a883106126ce5781686194049f30f7200000146126c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126b990614e29565b60405180910390fd5b600160ff169050612750565b61047c83106126e357600160ff169050612750565b61044a83106126f857600660ff169050612750565b610418831061270d57600260ff169050612750565b6103e6831061272257600560ff169050612750565b6103b4831061273757600a60ff169050612750565b6000831061274b57600160ff169050612750565b600090505b92915050565b601360149054906101000a900460ff16156127a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161279d90614e09565b60405180910390fd5b6127d07f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92933612107565b61280f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161280690615069565b60405180910390fd5b6000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161286c9190614c81565b60206040518083038186803b15801561288457600080fd5b505afa158015612898573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128bc919061409e565b9050601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b815260040161291b929190614ce8565b602060405180830381600087803b15801561293557600080fd5b505af1158015612949573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061296d9190613f54565b5060003073ffffffffffffffffffffffffffffffffffffffff163190503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156129d0573d6000803e3d6000fd5b505050565b600181565b61047c81565b686194049f30f720000081565b7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92981565b600281565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612a895750612a88826132d8565b5b9050919050565b6000612aa682600a61334290919063ffffffff16565b9050919050565b600033905090565b816010600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16612b2883611588565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000612b7c8260000161335c565b9050919050565b6000612b8e82612a90565b612bcd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bc490615049565b60405180910390fd5b6000612bd883611588565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480612c4757508373ffffffffffffffffffffffffffffffffffffffff16612c2f84610e20565b73ffffffffffffffffffffffffffffffffffffffff16145b80612c585750612c5781856125d8565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16612c8182611588565b73ffffffffffffffffffffffffffffffffffffffff1614612cd7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cce90614ee9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612d47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d3e90614ea9565b60405180910390fd5b612d52838383613371565b612d5d600082612ab5565b612dae81600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002061337690919063ffffffff16565b50612e0081600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002061339090919063ffffffff16565b50612e178183600a6133aa9092919063ffffffff16565b50808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b612e828282612107565b612f5457600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550612ef9612aad565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6000612f6783600001836133df565b60001c905092915050565b612f7c8282612107565b1561304f57600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550612ff4612aad565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b6000613065836000018360001b613479565b60001c905092915050565b600061307e826000016134f5565b9050919050565b60008183613093919061532f565b905092915050565b600081836130a991906152a8565b905092915050565b6130cb828260405180602001604052806000815250613506565b5050565b6130da848484612c61565b6130e684848484613561565b613125576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161311c90615129565b60405180910390fd5b50505050565b60606000821415613173576040518060400160405280600181526020017f300000000000000000000000000000000000000000000000000000000000000081525090506132d3565b600082905060005b600082146131a557808061318e90615462565b915050600a8261319e91906152fe565b915061317b565b60008167ffffffffffffffff8111156131e7577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280601f01601f1916602001820160405280156132195781602001600182028036833780820191505090505b5090505b600085146132cc57600182613232919061532f565b9150600a8561324191906154ab565b603061324d91906152a8565b60f81b818381518110613289577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a856132c591906152fe565b945061321d565b8093505050505b919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6000613354836000018360001b6136f8565b905092915050565b600061336a82600001613718565b9050919050565b505050565b6000613388836000018360001b61372d565b905092915050565b60006133a2836000018360001b6138b7565b905092915050565b60006133d6846000018460001b8473ffffffffffffffffffffffffffffffffffffffff1660001b613927565b90509392505050565b60008183600001805490501161342a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161342190614d69565b60405180910390fd5b826000018281548110613466577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154905092915050565b6000808360020160008481526020019081526020016000205490506000801b811415806134ac57506134ab84846136f8565b5b6134eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134e2906150e9565b60405180910390fd5b8091505092915050565b600081600001805490509050919050565b6135108383613962565b61351d6000848484613561565b61355c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161355390614ec9565b60405180910390fd5b505050565b60006135828473ffffffffffffffffffffffffffffffffffffffff16613af0565b156136eb578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026135ab612aad565b8786866040518563ffffffff1660e01b81526004016135cd9493929190614c9c565b602060405180830381600087803b1580156135e757600080fd5b505af192505050801561361857506040513d601f19601f82011682018060405250810190613615919061400b565b60015b61369b573d8060008114613648576040519150601f19603f3d011682016040523d82523d6000602084013e61364d565b606091505b50600081511415613693576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161368a90614f69565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506136f0565b600190505b949350505050565b60006137108284600001613b0390919063ffffffff16565b905092915050565b6000613726826000016134f5565b9050919050565b600080836001016000848152602001908152602001600020549050600081146138ab57600060018261375f919061532f565b9050600060018660000180549050613777919061532f565b905060008660000182815481106137b7577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154905080876000018481548110613801577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020018190555060018361381c91906152a8565b876001016000838152602001908152602001600020819055508660000180548061386f577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506138b1565b60009150505b92915050565b60006138c38383613b1a565b61391c578260000182908060018154018082558091505060019003906000526020600020016000909190919091505582600001805490508360010160008481526020019081526020016000208190555060019050613921565b600090505b92915050565b600081846002016000858152602001908152602001600020819055506139598385600001613b3d90919063ffffffff16565b90509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156139d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016139c990615009565b60405180910390fd5b6139db81612a90565b15613a1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a1290614de9565b60405180910390fd5b613a2760008383613371565b613a7881600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002061339090919063ffffffff16565b50613a8f8183600a6133aa9092919063ffffffff16565b50808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b600080823b905060008111915050919050565b6000613b128360000183613b1a565b905092915050565b600080836001016000848152602001908152602001600020541415905092915050565b6000613b4c83600001836138b7565b905092915050565b828054613b6090615430565b90600052602060002090601f016020900481019282613b825760008555613bc9565b82601f10613b9b57805160ff1916838001178555613bc9565b82800160010185558215613bc9579182015b82811115613bc8578251825591602001919060010190613bad565b5b509050613bd69190613bda565b5090565b5b80821115613bf3576000816000905550600101613bdb565b5090565b6000613c0a613c05846151f0565b6151bf565b905082815260208101848484011115613c2257600080fd5b613c2d8482856153ee565b509392505050565b6000613c48613c4384615220565b6151bf565b905082815260208101848484011115613c6057600080fd5b613c6b8482856153ee565b509392505050565b600081359050613c82816155a9565b92915050565b600081519050613c97816155a9565b92915050565b600081359050613cac816155c0565b92915050565b600081519050613cc1816155c0565b92915050565b600081359050613cd6816155d7565b92915050565b600081359050613ceb816155ee565b92915050565b600081519050613d00816155ee565b92915050565b600082601f830112613d1757600080fd5b8135613d27848260208601613bf7565b91505092915050565b600082601f830112613d4157600080fd5b8135613d51848260208601613c35565b91505092915050565b600081359050613d6981615605565b92915050565b600081519050613d7e81615605565b92915050565b600060208284031215613d9657600080fd5b6000613da484828501613c73565b91505092915050565b600060208284031215613dbf57600080fd5b6000613dcd84828501613c88565b91505092915050565b60008060408385031215613de957600080fd5b6000613df785828601613c73565b9250506020613e0885828601613c73565b9150509250929050565b600080600060608486031215613e2757600080fd5b6000613e3586828701613c73565b9350506020613e4686828701613c73565b9250506040613e5786828701613d5a565b9150509250925092565b60008060008060808587031215613e7757600080fd5b6000613e8587828801613c73565b9450506020613e9687828801613c73565b9350506040613ea787828801613d5a565b925050606085013567ffffffffffffffff811115613ec457600080fd5b613ed087828801613d06565b91505092959194509250565b60008060408385031215613eef57600080fd5b6000613efd85828601613c73565b9250506020613f0e85828601613c9d565b9150509250929050565b60008060408385031215613f2b57600080fd5b6000613f3985828601613c73565b9250506020613f4a85828601613d5a565b9150509250929050565b600060208284031215613f6657600080fd5b6000613f7484828501613cb2565b91505092915050565b600060208284031215613f8f57600080fd5b6000613f9d84828501613cc7565b91505092915050565b60008060408385031215613fb957600080fd5b6000613fc785828601613cc7565b9250506020613fd885828601613c73565b9150509250929050565b600060208284031215613ff457600080fd5b600061400284828501613cdc565b91505092915050565b60006020828403121561401d57600080fd5b600061402b84828501613cf1565b91505092915050565b60006020828403121561404657600080fd5b600082013567ffffffffffffffff81111561406057600080fd5b61406c84828501613d30565b91505092915050565b60006020828403121561408757600080fd5b600061409584828501613d5a565b91505092915050565b6000602082840312156140b057600080fd5b60006140be84828501613d6f565b91505092915050565b600080604083850312156140da57600080fd5b60006140e885828601613d5a565b925050602083013567ffffffffffffffff81111561410557600080fd5b61411185828601613d30565b9150509250929050565b6000806040838503121561412e57600080fd5b600061413c85828601613d5a565b925050602061414d85828601613d5a565b9150509250929050565b61416081615363565b82525050565b61416f81615375565b82525050565b61417e81615381565b82525050565b600061418f82615265565b614199818561527b565b93506141a98185602086016153fd565b6141b281615598565b840191505092915050565b60006141c882615270565b6141d2818561528c565b93506141e28185602086016153fd565b6141eb81615598565b840191505092915050565b600061420182615270565b61420b818561529d565b935061421b8185602086016153fd565b80840191505092915050565b6000815461423481615430565b61423e818661529d565b94506001821660008114614259576001811461426a5761429d565b60ff1983168652818601935061429d565b61427385615250565b60005b8381101561429557815481890152600182019150602081019050614276565b838801955050505b50505092915050565b60006142b360228361528c565b91507f456e756d657261626c655365743a20696e646578206f7574206f6620626f756e60008301527f64730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061431960158361528c565b91507f746f6b656e20616c726561647920636c61696d656400000000000000000000006000830152602082019050919050565b6000614359602f8361528c565b91507f416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e60008301527f2061646d696e20746f206772616e7400000000000000000000000000000000006020830152604082019050919050565b60006143bf60078361529d565b91507f67656e65736973000000000000000000000000000000000000000000000000006000830152600782019050919050565b60006143ff60158361528c565b91507f213d206f776e6572206e6f7220617070726f76656400000000000000000000006000830152602082019050919050565b600061443f60148361528c565b91507f546f6b656e20616c7265616479206d696e7465640000000000000000000000006000830152602082019050919050565b600061447f60168361528c565b91507f54686520636f6e747261637420697320706175736564000000000000000000006000830152602082019050919050565b60006144bf60108361528c565b91507f61646a757374205645542076616c7565000000000000000000000000000000006000830152602082019050919050565b60006144ff600c8361528c565b91507f696e6465782069732073657400000000000000000000000000000000000000006000830152602082019050919050565b600061453f60078361529d565b91507f7370656369616c000000000000000000000000000000000000000000000000006000830152600782019050919050565b600061457f601d8361528c565b91507f213d206f776e6572206e6f7220617070726f76656420666f7220616c6c0000006000830152602082019050919050565b60006145bf600a8361528c565b91507f213d20616c6c6f776564000000000000000000000000000000000000000000006000830152602082019050919050565b60006145ff60158361528c565b91507f5472616e7366657220746f2074686520302061646400000000000000000000006000830152602082019050919050565b600061463f60168361528c565b91507f5472616e7366657220746f206e6f6e20564950313831000000000000000000006000830152602082019050919050565b600061467f60218361528c565b91507f5472616e73666572206f6620746f6b656e2074686174206973206e6f74206f7760008301527f6e000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006146e5600f8361528c565b91507f737570706c79206f766572666c6f7700000000000000000000000000000000006000830152602082019050919050565b600061472560118361528c565b91507f417070726f766520746f2063616c6c65720000000000000000000000000000006000830152602082019050919050565b600061476560158361528c565b91507f596f7520617265206e6f7420746865206f776e657200000000000000000000006000830152602082019050919050565b60006147a5601d8361528c565b91507f5472616e7366657220746f206e6f6e20564950313831522e20696d706c0000006000830152602082019050919050565b60006147e560308361528c565b91507f416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e60008301527f2061646d696e20746f207265766f6b65000000000000000000000000000000006020830152604082019050919050565b600061484b601e8361528c565b91507f54686520636f6e747261637420697320616c72656164792070617573656400006000830152602082019050919050565b600061488b60088361528c565b91507f6e6f20746f6b656e0000000000000000000000000000000000000000000000006000830152602082019050919050565b60006148cb60178361528c565b91507f696e64657820626c6f636b206d757374206265207365740000000000000000006000830152602082019050919050565b600061490b600d8361528c565b91507f4d696e7420746f203020616464000000000000000000000000000000000000006000830152602082019050919050565b600061494b600d8361528c565b91507f63757272656e74206f776e6572000000000000000000000000000000000000006000830152602082019050919050565b600061498b60118361528c565b91507f6e6f6e6578697374656e7420746f6b656e0000000000000000000000000000006000830152602082019050919050565b60006149cb60118361528c565b91507f43616c6c657220213d20616c6c6f7765640000000000000000000000000000006000830152602082019050919050565b6000614a0b600c8361528c565b91507f7a65726f206164647265737300000000000000000000000000000000000000006000830152602082019050919050565b6000614a4b60208361528c565b91507f54686520636f6e747261637420697320616c726561647920756e7061757365646000830152602082019050919050565b6000614a8b60008361528c565b9150600082019050919050565b6000614aa5601e8361528c565b91507f456e756d657261626c654d61703a206e6f6e6578697374656e74206b657900006000830152602082019050919050565b6000614ae5600b8361528c565b91507f6e6f7420737461727465640000000000000000000000000000000000000000006000830152602082019050919050565b6000614b2560168361528c565b91507f5472616e7366657220746f206e6f6e20455243373231000000000000000000006000830152602082019050919050565b6000614b65600c8361528c565b91507f555249206e6f20746f6b656e00000000000000000000000000000000000000006000830152602082019050919050565b6000614ba5602f8361528c565b91507f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008301527f20726f6c657320666f722073656c6600000000000000000000000000000000006020830152604082019050919050565b614c07816153d7565b82525050565b614c16816153e1565b82525050565b6000614c2882846141f6565b915081905092915050565b6000614c3f8285614227565b9150614c4b82846141f6565b91508190509392505050565b6000614c62826143b2565b9150819050919050565b6000614c7782614532565b9150819050919050565b6000602082019050614c966000830184614157565b92915050565b6000608082019050614cb16000830187614157565b614cbe6020830186614157565b614ccb6040830185614bfe565b8181036060830152614cdd8184614184565b905095945050505050565b6000604082019050614cfd6000830185614157565b614d0a6020830184614bfe565b9392505050565b6000602082019050614d266000830184614166565b92915050565b6000602082019050614d416000830184614175565b92915050565b60006020820190508181036000830152614d6181846141bd565b905092915050565b60006020820190508181036000830152614d82816142a6565b9050919050565b60006020820190508181036000830152614da28161430c565b9050919050565b60006020820190508181036000830152614dc28161434c565b9050919050565b60006020820190508181036000830152614de2816143f2565b9050919050565b60006020820190508181036000830152614e0281614432565b9050919050565b60006020820190508181036000830152614e2281614472565b9050919050565b60006020820190508181036000830152614e42816144b2565b9050919050565b60006020820190508181036000830152614e62816144f2565b9050919050565b60006020820190508181036000830152614e8281614572565b9050919050565b60006020820190508181036000830152614ea2816145b2565b9050919050565b60006020820190508181036000830152614ec2816145f2565b9050919050565b60006020820190508181036000830152614ee281614632565b9050919050565b60006020820190508181036000830152614f0281614672565b9050919050565b60006020820190508181036000830152614f22816146d8565b9050919050565b60006020820190508181036000830152614f4281614718565b9050919050565b60006020820190508181036000830152614f6281614758565b9050919050565b60006020820190508181036000830152614f8281614798565b9050919050565b60006020820190508181036000830152614fa2816147d8565b9050919050565b60006020820190508181036000830152614fc28161483e565b9050919050565b60006020820190508181036000830152614fe28161487e565b9050919050565b60006020820190508181036000830152615002816148be565b9050919050565b60006020820190508181036000830152615022816148fe565b9050919050565b600060208201905081810360008301526150428161493e565b9050919050565b600060208201905081810360008301526150628161497e565b9050919050565b60006020820190508181036000830152615082816149be565b9050919050565b600060208201905081810360008301526150a2816149fe565b9050919050565b600060208201905081810360008301526150c281614a3e565b9050919050565b600060208201905081810360008301526150e281614a7e565b9050919050565b6000602082019050818103600083015261510281614a98565b9050919050565b6000602082019050818103600083015261512281614ad8565b9050919050565b6000602082019050818103600083015261514281614b18565b9050919050565b6000602082019050818103600083015261516281614b58565b9050919050565b6000602082019050818103600083015261518281614b98565b9050919050565b600060208201905061519e6000830184614bfe565b92915050565b60006020820190506151b96000830184614c0d565b92915050565b6000604051905081810181811067ffffffffffffffff821117156151e6576151e5615569565b5b8060405250919050565b600067ffffffffffffffff82111561520b5761520a615569565b5b601f19601f8301169050602081019050919050565b600067ffffffffffffffff82111561523b5761523a615569565b5b601f19601f8301169050602081019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b60006152b3826153d7565b91506152be836153d7565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156152f3576152f26154dc565b5b828201905092915050565b6000615309826153d7565b9150615314836153d7565b9250826153245761532361550b565b5b828204905092915050565b600061533a826153d7565b9150615345836153d7565b925082821015615358576153576154dc565b5b828203905092915050565b600061536e826153b7565b9050919050565b60008115159050919050565b6000819050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b8381101561541b578082015181840152602081019050615400565b8381111561542a576000848401525b50505050565b6000600282049050600182168061544857607f821691505b6020821081141561545c5761545b61553a565b5b50919050565b600061546d826153d7565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156154a05761549f6154dc565b5b600182019050919050565b60006154b6826153d7565b91506154c1836153d7565b9250826154d1576154d061550b565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b6155b281615363565b81146155bd57600080fd5b50565b6155c981615375565b81146155d457600080fd5b50565b6155e081615381565b81146155eb57600080fd5b50565b6155f78161538b565b811461560257600080fd5b50565b61560e816153d7565b811461561957600080fd5b5056fea26469706673582212201b3b610593a0f9c1013523567887785dccce33746410797a686f87a37741a3ee64736f6c63430008000033