VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0xbb16eC…7C55
Summary
Transactions
Transfers
Address
0xbb16eCD433a348e61eA40133F6e01e2A173f7C55
VET
0.00
VET
VTHO
0.00
VTHO
Master
0xD14B014F7563F406059E70F9C720bae18023F26C
Deployer
0xD14B014F7563F406059E70F9C720bae18023F26C
Code
0x6080604052600436106101e35760003560e01c806370a0823111610102578063b66a0e5d11610095578063e14ca35311610064578063e14ca353146106f7578063e985e9c514610722578063f2fde38b1461075f578063f6cea05514610788576101e3565b8063b66a0e5d1461064f578063b88d4fde14610666578063c87b56dd1461068f578063cfcb51ec146106cc576101e3565b806395d89b41116100d157806395d89b41146105b45780639f181b5e146105df578063a0712d681461060a578063a22cb46514610626576101e3565b806370a082311461050c578063715018a614610549578063767b3b49146105605780638da5cb5b14610589576101e3565b80633ccfd60b1161017a5780634f6ccce7116101495780634f6ccce71461043e57806355f804b31461047b5780635c474f9e146104a45780636352211e146104cf576101e3565b80633ccfd60b1461038457806342842e0e1461039b578063438b6300146103c45780634d4f4cb514610401576101e3565b80630b635b8c116101b65780630b635b8c146102b657806318160ddd146102f357806323b872dd1461031e5780632f745c5914610347576101e3565b806301ffc9a7146101e857806306fdde0314610225578063081812fc14610250578063095ea7b31461028d575b600080fd5b3480156101f457600080fd5b5061020f600480360381019061020a9190613a17565b6107c8565b60405161021c9190614181565b60405180910390f35b34801561023157600080fd5b5061023a610842565b60405161024791906141fc565b60405180910390f35b34801561025c57600080fd5b5061027760048036038101906102729190613b38565b6108d4565b60405161028491906140f8565b60405180910390f35b34801561029957600080fd5b506102b460048036038101906102af9190613983565b610959565b005b3480156102c257600080fd5b506102dd60048036038101906102d89190613abb565b610a71565b6040516102ea919061453e565b60405180910390f35b3480156102ff57600080fd5b50610308610a96565b604051610315919061453e565b60405180910390f35b34801561032a57600080fd5b506103456004803603810190610340919061387d565b610aa5565b005b34801561035357600080fd5b5061036e60048036038101906103699190613983565b610b05565b60405161037b919061453e565b60405180910390f35b34801561039057600080fd5b50610399610baa565b005b3480156103a757600080fd5b506103c260048036038101906103bd919061387d565b610d71565b005b3480156103d057600080fd5b506103eb60048036038101906103e69190613818565b610d91565b6040516103f8919061415f565b60405180910390f35b34801561040d57600080fd5b5061042860048036038101906104239190613818565b610e8b565b604051610435919061453e565b60405180910390f35b34801561044a57600080fd5b5061046560048036038101906104609190613b38565b610ea9565b604051610472919061453e565b60405180910390f35b34801561048757600080fd5b506104a2600480360381019061049d9190613af7565b610f40565b005b3480156104b057600080fd5b506104b9610fd6565b6040516104c69190614181565b60405180910390f35b3480156104db57600080fd5b506104f660048036038101906104f19190613b38565b610fe9565b60405161050391906140f8565b60405180910390f35b34801561051857600080fd5b50610533600480360381019061052e9190613818565b61109b565b604051610540919061453e565b60405180910390f35b34801561055557600080fd5b5061055e611153565b005b34801561056c57600080fd5b50610587600480360381019061058291906139bf565b6111db565b005b34801561059557600080fd5b5061059e61141c565b6040516105ab91906140f8565b60405180910390f35b3480156105c057600080fd5b506105c9611446565b6040516105d691906141fc565b60405180910390f35b3480156105eb57600080fd5b506105f46114d8565b604051610601919061453e565b60405180910390f35b610624600480360381019061061f9190613b38565b6114e9565b005b34801561063257600080fd5b5061064d60048036038101906106489190613947565b611a6f565b005b34801561065b57600080fd5b50610664611a85565b005b34801561067257600080fd5b5061068d600480360381019061068891906138cc565b611b25565b005b34801561069b57600080fd5b506106b660048036038101906106b19190613b38565b611b87565b6040516106c391906141fc565b60405180910390f35b3480156106d857600080fd5b506106e1611c2e565b6040516106ee919061419c565b60405180910390f35b34801561070357600080fd5b5061070c611ec6565b604051610719919061453e565b60405180910390f35b34801561072e57600080fd5b5061074960048036038101906107449190613841565b611ee7565b6040516107569190614181565b60405180910390f35b34801561076b57600080fd5b5061078660048036038101906107819190613818565b611f7b565b005b34801561079457600080fd5b506107af60048036038101906107aa9190613a69565b612073565b6040516107bf94939291906141b7565b60405180910390f35b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061083b575061083a826120b0565b5b9050919050565b6060600080546108519061485e565b80601f016020809104026020016040519081016040528092919081815260200182805461087d9061485e565b80156108ca5780601f1061089f576101008083540402835291602001916108ca565b820191906000526020600020905b8154815290600101906020018083116108ad57829003601f168201915b5050505050905090565b60006108df82612192565b61091e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109159061443e565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061096482610fe9565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156109d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109cc9061449e565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166109f46121fe565b73ffffffffffffffffffffffffffffffffffffffff161480610a235750610a2281610a1d6121fe565b611ee7565b5b610a62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a59906143be565b60405180910390fd5b610a6c8383612206565b505050565b6014602052816000526040600020602052806000526040600020600091509150505481565b6000610aa06122bf565b905090565b610ab6610ab06121fe565b826122c9565b610af5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aec906144be565b60405180910390fd5b610b008383836123a7565b505050565b6000610b108361109b565b8210610b51576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b489061425e565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b60005b6003811015610d205760158160038110610bf0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b0160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6103e847601b600060158760038110610c6d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b0160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154610cd791906146e3565b610ce191906146b2565b9081150290604051600060405180830381858888f19350505050158015610d0c573d6000803e3d6000fd5b508080610d18906148c1565b915050610bad565b50610d2961141c565b73ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610d6e573d6000803e3d6000fd5b50565b610d8c83838360405180602001604052806000815250611b25565b505050565b60606000610d9e8361109b565b905060008167ffffffffffffffff811115610de2577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051908082528060200260200182016040528015610e105781602001602082028036833780820191505090505b50905060005b82811015610e8057610e288582610b05565b828281518110610e61577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010181815250508080610e78906148c1565b915050610e16565b508092505050919050565b601b6020528060005260406000206000915090508060000154905081565b6000610eb361260e565b8210610ef4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eeb906144de565b60405180910390fd5b60088281548110610f2e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549050919050565b610f486121fe565b73ffffffffffffffffffffffffffffffffffffffff16610f6661141c565b73ffffffffffffffffffffffffffffffffffffffff1614610fbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fb39061445e565b60405180910390fd5b80600f9080519060200190610fd29291906135c8565b5050565b601060009054906101000a900460ff1681565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611092576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611089906143fe565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561110c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611103906143de565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61115b6121fe565b73ffffffffffffffffffffffffffffffffffffffff1661117961141c565b73ffffffffffffffffffffffffffffffffffffffff16146111cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111c69061445e565b60405180910390fd5b6111d9600061261b565b565b6111e36121fe565b73ffffffffffffffffffffffffffffffffffffffff1661120161141c565b73ffffffffffffffffffffffffffffffffffffffff1614611257576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124e9061445e565b60405180910390fd5b600060136000836002811115611296577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60028111156112ce577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b815260200190815260200160002060020154905060005b8484905081101561141557816014600085600281111561132e577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6002811115611366577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b815260200190815260200160002060008787858181106113af577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506020020160208101906113c49190613818565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550808061140d906148c1565b9150506112e5565b5050505050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600180546114559061485e565b80601f01602080910402602001604051908101604052809291908181526020018280546114819061485e565b80156114ce5780601f106114a3576101008083540402835291602001916114ce565b820191906000526020600020905b8154815290600101906020018083116114b157829003601f168201915b5050505050905090565b60006114e4600b6126e1565b905090565b80806114f3611ec6565b1015611534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152b906142fe565b60405180910390fd5b601060009054906101000a900460ff16611583576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161157a9061423e565b60405180910390fd5b6000601360003073ffffffffffffffffffffffffffffffffffffffff1663cfcb51ec6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115cf57600080fd5b505afa1580156115e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116079190613a92565b600281111561163f577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6002811115611677577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b81526020019081526020016000206040518060800160405290816000820160009054906101000a900460ff1660028111156116db577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6002811115611713577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b815260200160018201548152602001600282015481526020016003820154815250509050600280811115611770577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b816000015160028111156117ad577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b146119955760146000826000015160028111156117f3577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600281111561182b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548311156118b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b09061451e565b60405180910390fd5b8260146000836000015160028111156118fb577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6002811115611933577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461198d919061473d565b925050819055505b80604001518311156119dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d39061435e565b60405180910390fd5b600081606001519050600084826119f391906146e3565b905080341015611a38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2f9061421e565b60405180910390fd5b60005b85811015611a6757611a5433611a4f6126ef565b61287d565b8080611a5f906148c1565b915050611a3b565b505050505050565b611a81611a7a6121fe565b838361289b565b5050565b611a8d6121fe565b73ffffffffffffffffffffffffffffffffffffffff16611aab61141c565b73ffffffffffffffffffffffffffffffffffffffff1614611b01576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af89061445e565b60405180910390fd5b6001601060006101000a81548160ff02191690831515021790555042601181905550565b611b36611b306121fe565b836122c9565b611b75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6c906144be565b60405180910390fd5b611b8184848484612a08565b50505050565b6060611b9282612192565b611bd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bc89061447e565b60405180910390fd5b6000611bdb612a64565b90506000815111611bfb5760405180602001604052806000815250611c26565b80611c0584612af6565b604051602001611c169291906140d4565b6040516020818303038152906040525b915050919050565b6000601060009054906101000a900460ff16611c7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c76906144fe565b60405180910390fd5b600060115442611c8f919061473d565b905060005b601254811015611ebc57600060136000836002811115611cdd577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6002811115611d15577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6002811115611d4d577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b81526020019081526020016000206040518060800160405290816000820160009054906101000a900460ff166002811115611db1577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6002811115611de9577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b815260200160018201548152602001600282015481526020016003820154815250509050806020015183108015611e945750600280811115611e54577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b81600001516002811115611e91577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b14155b15611ea85780600001519350505050611ec3565b508080611eb4906148c1565b915050611c94565b5060029150505b90565b6000611ed06114d8565b611ed8610a96565b611ee2919061473d565b905090565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611f836121fe565b73ffffffffffffffffffffffffffffffffffffffff16611fa161141c565b73ffffffffffffffffffffffffffffffffffffffff1614611ff7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fee9061445e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612067576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161205e9061429e565b60405180910390fd5b6120708161261b565b50565b60136020528060005260406000206000915090508060000160009054906101000a900460ff16908060010154908060020154908060030154905084565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061217b57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061218b575061218a82612ca3565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661227983610fe9565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000600c54905090565b60006122d482612192565b612313576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161230a9061439e565b60405180910390fd5b600061231e83610fe9565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480612360575061235f8185611ee7565b5b8061239e57508373ffffffffffffffffffffffffffffffffffffffff16612386846108d4565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166123c782610fe9565b73ffffffffffffffffffffffffffffffffffffffff161461241d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612414906142be565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561248d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124849061431e565b60405180910390fd5b612498838383612d0d565b6124a3600082612206565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546124f3919061473d565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461254a919061465c565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612609838383612e21565b505050565b6000600880549050905090565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081600001549050919050565b6000806126fa611ec6565b1161273a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127319061437e565b60405180910390fd5b60006127446114d8565b61274c610a96565b612756919061473d565b90506000813341444542604051602001612774959493929190614075565b6040516020818303038152906040528051906020012060001c612797919061494a565b9050600080600d60008481526020019081526020016000205414156127be578190506127d5565b600d60008381526020019081526020016000205490505b6000600d60006001866127e8919061473d565b81526020019081526020016000205414156128265760018361280a919061473d565b600d60008481526020019081526020016000208190555061285e565b600d6000600185612837919061473d565b815260200190815260200160002054600d6000848152602001908152602001600020819055505b612866612e26565b50600e5481612875919061465c565b935050505090565b612897828260405180602001604052806000815250612e46565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561290a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129019061433e565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516129fb9190614181565b60405180910390a3505050565b612a138484846123a7565b612a1f84848484612ea1565b612a5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a559061427e565b60405180910390fd5b50505050565b6060600f8054612a739061485e565b80601f0160208091040260200160405190810160405280929190818152602001828054612a9f9061485e565b8015612aec5780601f10612ac157610100808354040283529160200191612aec565b820191906000526020600020905b815481529060010190602001808311612acf57829003601f168201915b5050505050905090565b60606000821415612b3e576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612c9e565b600082905060005b60008214612b70578080612b59906148c1565b915050600a82612b6991906146b2565b9150612b46565b60008167ffffffffffffffff811115612bb2577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280601f01601f191660200182016040528015612be45781602001600182028036833780820191505090505b5090505b60008514612c9757600182612bfd919061473d565b9150600a85612c0c919061494a565b6030612c18919061465c565b60f81b818381518110612c54577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85612c9091906146b2565b9450612be8565b8093505050505b919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b612d18838383613038565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612d5b57612d568161303d565b612d9a565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612d9957612d988382613086565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612ddd57612dd8816131f3565b612e1c565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614612e1b57612e1a8282613336565b5b5b505050565b505050565b600080612e33600b6126e1565b9050612e3f600b6133b5565b8091505090565b612e5083836133cb565b612e5d6000848484612ea1565b612e9c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e939061427e565b60405180910390fd5b505050565b6000612ec28473ffffffffffffffffffffffffffffffffffffffff166135a5565b1561302b578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612eeb6121fe565b8786866040518563ffffffff1660e01b8152600401612f0d9493929190614113565b602060405180830381600087803b158015612f2757600080fd5b505af1925050508015612f5857506040513d601f19601f82011682018060405250810190612f559190613a40565b60015b612fdb573d8060008114612f88576040519150601f19603f3d011682016040523d82523d6000602084013e612f8d565b606091505b50600081511415612fd3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fca9061427e565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050613030565b600190505b949350505050565b505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b600060016130938461109b565b61309d919061473d565b9050600060076000848152602001908152602001600020549050818114613182576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b60006001600880549050613207919061473d565b905060006009600084815260200190815260200160002054905060006008838154811061325d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154905080600883815481106132a5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055508160096000838152602001908152602001600020819055506009600085815260200190815260200160002060009055600880548061331a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6001900381819060005260206000200160009055905550505050565b60006133418361109b565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b6001816000016000828254019250508190555050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561343b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134329061441e565b60405180910390fd5b61344481612192565b15613484576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161347b906142de565b60405180910390fd5b61349060008383612d0d565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546134e0919061465c565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46135a160008383612e21565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b8280546135d49061485e565b90600052602060002090601f0160209004810192826135f6576000855561363d565b82601f1061360f57805160ff191683800117855561363d565b8280016001018555821561363d579182015b8281111561363c578251825591602001919060010190613621565b5b50905061364a919061364e565b5090565b5b8082111561366757600081600090555060010161364f565b5090565b600061367e6136798461457e565b614559565b90508281526020810184848401111561369657600080fd5b6136a184828561481c565b509392505050565b60006136bc6136b7846145af565b614559565b9050828152602081018484840111156136d457600080fd5b6136df84828561481c565b509392505050565b6000813590506136f681615145565b92915050565b60008083601f84011261370e57600080fd5b8235905067ffffffffffffffff81111561372757600080fd5b60208301915083602082028301111561373f57600080fd5b9250929050565b6000813590506137558161515c565b92915050565b60008135905061376a81615173565b92915050565b60008151905061377f81615173565b92915050565b600082601f83011261379657600080fd5b81356137a684826020860161366b565b91505092915050565b6000813590506137be8161518a565b92915050565b6000815190506137d38161518a565b92915050565b600082601f8301126137ea57600080fd5b81356137fa8482602086016136a9565b91505092915050565b6000813590506138128161519a565b92915050565b60006020828403121561382a57600080fd5b6000613838848285016136e7565b91505092915050565b6000806040838503121561385457600080fd5b6000613862858286016136e7565b9250506020613873858286016136e7565b9150509250929050565b60008060006060848603121561389257600080fd5b60006138a0868287016136e7565b93505060206138b1868287016136e7565b92505060406138c286828701613803565b9150509250925092565b600080600080608085870312156138e257600080fd5b60006138f0878288016136e7565b9450506020613901878288016136e7565b935050604061391287828801613803565b925050606085013567ffffffffffffffff81111561392f57600080fd5b61393b87828801613785565b91505092959194509250565b6000806040838503121561395a57600080fd5b6000613968858286016136e7565b925050602061397985828601613746565b9150509250929050565b6000806040838503121561399657600080fd5b60006139a4858286016136e7565b92505060206139b585828601613803565b9150509250929050565b6000806000604084860312156139d457600080fd5b600084013567ffffffffffffffff8111156139ee57600080fd5b6139fa868287016136fc565b93509350506020613a0d868287016137af565b9150509250925092565b600060208284031215613a2957600080fd5b6000613a378482850161375b565b91505092915050565b600060208284031215613a5257600080fd5b6000613a6084828501613770565b91505092915050565b600060208284031215613a7b57600080fd5b6000613a89848285016137af565b91505092915050565b600060208284031215613aa457600080fd5b6000613ab2848285016137c4565b91505092915050565b60008060408385031215613ace57600080fd5b6000613adc858286016137af565b9250506020613aed858286016136e7565b9150509250929050565b600060208284031215613b0957600080fd5b600082013567ffffffffffffffff811115613b2357600080fd5b613b2f848285016137d9565b91505092915050565b600060208284031215613b4a57600080fd5b6000613b5884828501613803565b91505092915050565b6000613b6d8383614040565b60208301905092915050565b613b8a613b8582614783565b61491c565b82525050565b613b9981614771565b82525050565b613bb0613bab82614771565b61490a565b82525050565b6000613bc1826145f0565b613bcb818561461e565b9350613bd6836145e0565b8060005b83811015613c07578151613bee8882613b61565b9750613bf983614611565b925050600181019050613bda565b5085935050505092915050565b613c1d81614795565b82525050565b6000613c2e826145fb565b613c38818561462f565b9350613c4881856020860161482b565b613c5181614a66565b840191505092915050565b613c658161480a565b82525050565b6000613c7682614606565b613c808185614640565b9350613c9081856020860161482b565b613c9981614a66565b840191505092915050565b6000613caf82614606565b613cb98185614651565b9350613cc981856020860161482b565b80840191505092915050565b6000613ce2602383614640565b9150613ced82614a84565b604082019050919050565b6000613d05601883614640565b9150613d1082614ad3565b602082019050919050565b6000613d28602b83614640565b9150613d3382614afc565b604082019050919050565b6000613d4b603283614640565b9150613d5682614b4b565b604082019050919050565b6000613d6e602683614640565b9150613d7982614b9a565b604082019050919050565b6000613d91602583614640565b9150613d9c82614be9565b604082019050919050565b6000613db4601c83614640565b9150613dbf82614c38565b602082019050919050565b6000613dd7602883614640565b9150613de282614c61565b604082019050919050565b6000613dfa602483614640565b9150613e0582614cb0565b604082019050919050565b6000613e1d601983614640565b9150613e2882614cff565b602082019050919050565b6000613e40602f83614640565b9150613e4b82614d28565b604082019050919050565b6000613e63601883614640565b9150613e6e82614d77565b602082019050919050565b6000613e86602c83614640565b9150613e9182614da0565b604082019050919050565b6000613ea9603883614640565b9150613eb482614def565b604082019050919050565b6000613ecc602a83614640565b9150613ed782614e3e565b604082019050919050565b6000613eef602983614640565b9150613efa82614e8d565b604082019050919050565b6000613f12602083614640565b9150613f1d82614edc565b602082019050919050565b6000613f35602c83614640565b9150613f4082614f05565b604082019050919050565b6000613f58602083614640565b9150613f6382614f54565b602082019050919050565b6000613f7b602f83614640565b9150613f8682614f7d565b604082019050919050565b6000613f9e602183614640565b9150613fa982614fcc565b604082019050919050565b6000613fc1603183614640565b9150613fcc8261501b565b604082019050919050565b6000613fe4602c83614640565b9150613fef8261506a565b604082019050919050565b6000614007601483614640565b9150614012826150b9565b602082019050919050565b600061402a604083614640565b9150614035826150e2565b604082019050919050565b61404981614800565b82525050565b61405881614800565b82525050565b61406f61406a82614800565b614940565b82525050565b60006140818288613b9f565b6014820191506140918287613b79565b6014820191506140a1828661405e565b6020820191506140b1828561405e565b6020820191506140c1828461405e565b6020820191508190509695505050505050565b60006140e08285613ca4565b91506140ec8284613ca4565b91508190509392505050565b600060208201905061410d6000830184613b90565b92915050565b60006080820190506141286000830187613b90565b6141356020830186613b90565b614142604083018561404f565b81810360608301526141548184613c23565b905095945050505050565b600060208201905081810360008301526141798184613bb6565b905092915050565b60006020820190506141966000830184613c14565b92915050565b60006020820190506141b16000830184613c5c565b92915050565b60006080820190506141cc6000830187613c5c565b6141d9602083018661404f565b6141e6604083018561404f565b6141f3606083018461404f565b95945050505050565b600060208201905081810360008301526142168184613c6b565b905092915050565b6000602082019050818103600083015261423781613cd5565b9050919050565b6000602082019050818103600083015261425781613cf8565b9050919050565b6000602082019050818103600083015261427781613d1b565b9050919050565b6000602082019050818103600083015261429781613d3e565b9050919050565b600060208201905081810360008301526142b781613d61565b9050919050565b600060208201905081810360008301526142d781613d84565b9050919050565b600060208201905081810360008301526142f781613da7565b9050919050565b6000602082019050818103600083015261431781613dca565b9050919050565b6000602082019050818103600083015261433781613ded565b9050919050565b6000602082019050818103600083015261435781613e10565b9050919050565b6000602082019050818103600083015261437781613e33565b9050919050565b6000602082019050818103600083015261439781613e56565b9050919050565b600060208201905081810360008301526143b781613e79565b9050919050565b600060208201905081810360008301526143d781613e9c565b9050919050565b600060208201905081810360008301526143f781613ebf565b9050919050565b6000602082019050818103600083015261441781613ee2565b9050919050565b6000602082019050818103600083015261443781613f05565b9050919050565b6000602082019050818103600083015261445781613f28565b9050919050565b6000602082019050818103600083015261447781613f4b565b9050919050565b6000602082019050818103600083015261449781613f6e565b9050919050565b600060208201905081810360008301526144b781613f91565b9050919050565b600060208201905081810360008301526144d781613fb4565b9050919050565b600060208201905081810360008301526144f781613fd7565b9050919050565b6000602082019050818103600083015261451781613ffa565b9050919050565b600060208201905081810360008301526145378161401d565b9050919050565b6000602082019050614553600083018461404f565b92915050565b6000614563614574565b905061456f8282614890565b919050565b6000604051905090565b600067ffffffffffffffff82111561459957614598614a37565b5b6145a282614a66565b9050602081019050919050565b600067ffffffffffffffff8211156145ca576145c9614a37565b5b6145d382614a66565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600061466782614800565b915061467283614800565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156146a7576146a661497b565b5b828201905092915050565b60006146bd82614800565b91506146c883614800565b9250826146d8576146d76149aa565b5b828204905092915050565b60006146ee82614800565b91506146f983614800565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156147325761473161497b565b5b828202905092915050565b600061474882614800565b915061475383614800565b9250828210156147665761476561497b565b5b828203905092915050565b600061477c826147e0565b9050919050565b600061478e826147e0565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b60008190506147db82615131565b919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000614815826147cd565b9050919050565b82818337600083830152505050565b60005b8381101561484957808201518184015260208101905061482e565b83811115614858576000848401525b50505050565b6000600282049050600182168061487657607f821691505b6020821081141561488a57614889614a08565b5b50919050565b61489982614a66565b810181811067ffffffffffffffff821117156148b8576148b7614a37565b5b80604052505050565b60006148cc82614800565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156148ff576148fe61497b565b5b600182019050919050565b60006149158261492e565b9050919050565b60006149278261492e565b9050919050565b600061493982614a77565b9050919050565b6000819050919050565b600061495582614800565b915061496083614800565b9250826149705761496f6149aa565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f43616e6e6f74206d696e74207769746820696e73756666696369656e7420667560008201527f6e64730000000000000000000000000000000000000000000000000000000000602082015250565b7f53616c6520686173206e6f742073746172746564207965740000000000000000600082015250565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b7f526571756573746564206e756d626572206f6620746f6b656e73206e6f74206160008201527f7661696c61626c65000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f43616e6e6f74206d696e74206d6f7265207468616e206d617820616c6c6f776560008201527f6420746f6b656e73207065722074780000000000000000000000000000000000602082015250565b7f4e6f206d6f726520746f6b656e7320617661696c61626c650000000000000000600082015250565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b7f53616c6520686173206e6f742073746172746564000000000000000000000000600082015250565b7f43616e6e6f74206d696e74206d6f7265207468616e206d617820616c6c6f776560008201527f6420746f6b656e732077686974656c697374656420666f722061646472657373602082015250565b60038110615142576151416149d9565b5b50565b61514e81614771565b811461515957600080fd5b50565b61516581614795565b811461517057600080fd5b50565b61517c816147a1565b811461518757600080fd5b50565b6003811061519757600080fd5b50565b6151a381614800565b81146151ae57600080fd5b5056fea2646970667358221220bc4ba5010f71dbb1330c0511498834d7d278708ba3d0d5138b7ea97bf75308e264736f6c63430008040033