VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0x4478fc…b4b2
Summary
Transactions
Transfers
Address
0x4478fc4E8aA2B888c6b458c1bD334cC4Aaa3b4b2
VET
0.00
VET
VTHO
0.00
VTHO
Master
0x21fB2DBe1eAC92D0a910315d42A50FABD4C82113
Deployer
0x51bfd481CfAc64bEe25acd448fe1F5e08b93d325
Code
0x608060405234801561001057600080fd5b50600436106101125760003560e01c80630dfe1681146101175780631a68650214610154578063252c09d71461017f57806332148f67146101b95780633850c7bd146101ce5780633c8a7d8d1461024d57806346141319146102755780634a1823921461028c5780634f1eb3d81461029f578063514ea4bf146102d25780635339c296146103535780636a234ae914610373578063883bdbfd14610386578063a34123a7146103a6578063c45a0155146103b9578063d0c93a7c146103e0578063d21220a71461041b578063dd5a12d814610442578063ddca3f4314610455578063f30583991461047c578063f30dba9314610485578063fe4b84df1461050e575b600080fd5b61013e7f000000000000000000000000a71aaa5f69d6baf47c6aa2a55fdbd253c525c08481565b60405161014b9190613f3b565b60405180910390f35b600354610167906001600160801b031681565b6040516001600160801b03909116815260200161014b565b61019261018d366004613f4f565b610521565b6040805163ffffffff909416845260069290920b602084015215159082015260600161014b565b6101cc6101c7366004613f68565b610555565b005b6002805461020f916001600160a01b03821691600160a01b810490910b9061ffff600160b81b8204811691600160c81b8104821691600160d81b9091041685565b604080516001600160a01b03909616865260029490940b602086015261ffff928316938501939093528116606084015216608082015260a00161014b565b61026061025b366004614015565b6105e5565b6040805192835260208301919091520161014b565b61027e60015481565b60405190815260200161014b565b6101cc61029a36600461409c565b610822565b6102b26102ad3660046140ee565b610cd6565b604080516001600160801b0393841681529290911660208301520161014b565b61031d6102e0366004613f4f565b60066020526000908152604090208054600182015460028301546003909301546001600160801b0392831693919281811691600160801b90041685565b604080516001600160801b039687168152602081019590955284019290925283166060830152909116608082015260a00161014b565b61027e610361366004614155565b60056020526000908152604090205481565b610260610381366004614178565b610f70565b6103996103943660046141bf565b61102c565b60405161014b9190614233565b6102606103b436600461427a565b61109c565b61013e7f00000000000000000000000021fb2dbe1eac92d0a910315d42a50fabd4c8211381565b6104077f000000000000000000000000000000000000000000000000000000000000000a81565b60405162ffffff909116815260200161014b565b61013e7f000000000000000000000000cecf1c10c2f21392f1a23716ef1a7cf44388ff3c81565b6102606104503660046142bd565b6111d7565b6104077f00000000000000000000000000000000000000000000000000000000000001f481565b61027e60005481565b6104d361049336600461430d565b600460205260009081526040902080546001820154600283015460039093015460ff8316936101009093046001600160801b031692600f9290920b919085565b6040805195151586526001600160801b039094166020860152600f9290920b928401929092526060830191909152608082015260a00161014b565b6101cc61051c366004613f4f565b611a9f565b60078161ffff811061053257600080fd5b015463ffffffff81169150600160201b810460060b90600160581b900460ff1683565b600254600160d81b900461ffff16600061057160078385611bc9565b90508161ffff168161ffff16146105e0576002805461ffff60d81b1916600160d81b61ffff8481169182029290921790925560408051918516825260208201929092527fac49e518f90a358f652e4400164f05a5d8f7e35e7747279bc3a93dbf584e125a910160405180910390a15b505050565b6000808560020b8760020b1215806106045750620d89e719600288900b125b806106205750610617620d89e71961433e565b60020b8660020b135b1561063d576040516264847d60e41b815260040160405180910390fd5b846001600160801b031660000361066757604051630200e8a960e31b815260040160405180910390fd5b6000806106a560405180608001604052808c6001600160a01b031681526020018b60020b81526020018a60020b815260200189600f0b815250611c43565b925092505081935080925060008060008611156106c7576106c4611ec7565b91505b84156106d8576106d5611f5e565b90505b60405163d348799760e01b8152339063d34879979061070190899089908d908d90600401614389565b600060405180830381600087803b15801561071b57600080fd5b505af115801561072f573d6000803e3d6000fd5b505050506000861180156107525750610746611ec7565b61075087846143a9565b115b156107705760405163098fb56160e01b815260040160405180910390fd5b60008511801561078f5750610783611f5e565b61078d86836143a9565b115b156107ad5760405163098fb56160e01b815260040160405180910390fd5b604080513381526001600160801b038b1660208201529081018790526060810186905260028b810b91908d900b906001600160a01b038f16907f7a53080ba414158be7ec69b987b5fb7d07dee101fe85488f0853ae16239d0bde9060800160405180910390a450505050965096945050505050565b6000610857857f00000000000000000000000000000000000000000000000000000000000001f462ffffff16620f4240611fad565b9050600061088e857f00000000000000000000000000000000000000000000000000000000000001f462ffffff16620f4240611fad565b905060007f000000000000000000000000a71aaa5f69d6baf47c6aa2a55fdbd253c525c0846001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016108de9190613f3b565b6020604051808303816000875af11580156108fd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092191906143c1565b905060007f000000000000000000000000cecf1c10c2f21392f1a23716ef1a7cf44388ff3c6001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016109719190613f3b565b6020604051808303816000875af1158015610990573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b491906143c1565b90508715610a3d5760405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000a71aaa5f69d6baf47c6aa2a55fdbd253c525c084169063a9059cbb90610a0a9033908c906004016143da565b600060405180830381600087803b158015610a2457600080fd5b505af1158015610a38573d6000803e3d6000fd5b505050505b8615610ac45760405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000cecf1c10c2f21392f1a23716ef1a7cf44388ff3c169063a9059cbb90610a919033908b906004016143da565b600060405180830381600087803b158015610aab57600080fd5b505af1158015610abf573d6000803e3d6000fd5b505050505b604051630e9cbafb60e41b8152339063e9cbafb090610aed90879087908b908b90600401614389565b600060405180830381600087803b158015610b0757600080fd5b505af1158015610b1b573d6000803e3d6000fd5b505050508382610b2b91906143a9565b6040516370a0823160e01b81526001600160a01b037f000000000000000000000000a71aaa5f69d6baf47c6aa2a55fdbd253c525c08416906370a0823190610b77903090600401613f3b565b6020604051808303816000875af1158015610b96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bba91906143c1565b1015610bd957604051637bc35e0560e01b815260040160405180910390fd5b610be383826143a9565b6040516370a0823160e01b81526001600160a01b037f000000000000000000000000cecf1c10c2f21392f1a23716ef1a7cf44388ff3c16906370a0823190610c2f903090600401613f3b565b6020604051808303816000875af1158015610c4e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c7291906143c1565b1015610c9157604051637bc35e0560e01b815260040160405180910390fd5b604080518981526020810189905233917f1c1db1f1d6a01e51fec24bb54087b65fe5430f692280e70d92f718eb72ae76b7910160405180910390a25050505050505050565b60008080610ce76006338989611ff6565b60038101549091506001600160801b0390811690861611610d085784610d17565b60038101546001600160801b03165b60038201549093506001600160801b03600160801b909104811690851611610d3f5783610d55565b6003810154600160801b90046001600160801b03165b91506001600160801b03831615610e2b57600381018054849190600090610d869084906001600160801b03166143f3565b92506101000a8154816001600160801b0302191690836001600160801b031602179055507f000000000000000000000000a71aaa5f69d6baf47c6aa2a55fdbd253c525c0846001600160a01b031663a9059cbb89856040518363ffffffff1660e01b8152600401610df892919061441b565b600060405180830381600087803b158015610e1257600080fd5b505af1158015610e26573d6000803e3d6000fd5b505050505b6001600160801b03821615610f0557818160030160108282829054906101000a90046001600160801b0316610e6091906143f3565b92506101000a8154816001600160801b0302191690836001600160801b031602179055507f000000000000000000000000cecf1c10c2f21392f1a23716ef1a7cf44388ff3c6001600160a01b031663a9059cbb89846040518363ffffffff1660e01b8152600401610ed292919061441b565b600060405180830381600087803b158015610eec57600080fd5b505af1158015610f00573d6000803e3d6000fd5b505050505b604080516001600160a01b038a1681526001600160801b0385811660208301528416818301529051600288810b92908a900b9133917fa89c1c8a741251492622c95237828c75d1dbb03ea956f09e3792ff2a14f4fe62919081900360600190a4509550959350505050565b6040805160a081018252600280546001600160a01b0381168352600160a01b810490910b602083015261ffff600160b81b8204811693830193909352600160c81b810483166060830152600160d81b90049091166080820152600080546001549192839290919083610fe56006888b8b611ff6565b905060008061100a8b8b88602001518888600461204e9095949392919063ffffffff16565b909250905061101a838383612138565b909c909b509950505050505050505050565b6060611093428484808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152505060028054600795949350600160a01b810490910b915061ffff600160b81b8204811691600160c81b90041661222a565b90505b92915050565b60008060008060006110e76040518060800160405280336001600160a01b031681526020018a60020b81526020018960020b8152602001886110dd9061443d565b600f0b9052611c43565b925092509250816110f790614457565b945061110281614457565b935060008511806111135750600084115b156111755760038301546111319086906001600160801b0316614473565b6003840154611151908690600160801b90046001600160801b0316614473565b6001600160801b039182169116600160801b026001600160801b0319161760038401555b604080516001600160801b038816815260208101879052908101859052600288810b91908a900b9033907f0c396cd989a39f4459b5fa1aed6a9a8dcdbc45908acfd67e028cd568da98982c9060600160405180910390a4505050935093915050565b6040805160a081018252600280546001600160a01b0381168352600160a01b810490910b602083015261ffff600160b81b8204811693830193909352600160c81b810483166060830152600160d81b9004909116608082015260035460009182916001600160801b03168861128b5781600001516001600160a01b0316876001600160a01b03161080611286575073fffd8963efd1fc6a506488495d951d5263988d266001600160a01b038816115b6112bc565b81600001516001600160a01b0316876001600160a01b031611806112bc57506401000276a36001600160a01b038816105b156112da57604051632d4eeeb360e21b815260040160405180910390fd5b60006040518060c001604052808a81526020016000815260200184600001516001600160a01b03168152602001846020015160020b81526020018b61132157600154611325565b6000545b8152602001836001600160801b031681525090505b8051158015906113605750876001600160a01b031681604001516001600160a01b031614155b15611645576040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915260408201516001600160a01b0316815260608201516113e1906005907f000000000000000000000000000000000000000000000000000000000000000a8e6122e8565b5060020b602082018190526113f5906124a5565b6001600160a01b031660608201526040820151611486908c61142f578a6001600160a01b031683606001516001600160a01b031611611449565b8a6001600160a01b031683606001516001600160a01b0316105b611457578260600151611459565b8a5b60a085015185517f00000000000000000000000000000000000000000000000000000000000001f46128c1565b60c0850190815260a0850191909152608084019182526001600160a01b039092166040850152905190516114ba91906143a9565b825183906114c990839061449e565b90525060a08101516020830180516114e29083906143a9565b90525060a08201516001600160801b03161561152d576115188160c00151600160801b8460a001516001600160801b03166129f4565b8260800181815161152991906143a9565b9052505b80606001516001600160a01b031682604001516001600160a01b03160361160857600061158882602001518d6115655760005461156b565b84608001515b8e61157a57856080015161157e565b6001545b6004929190612ac1565b90508b1561159c576115998161443d565b90505b6115aa8360a0015182612b0e565b6001600160801b031660a084018190526000036115da57604051634323a55560e01b815260040160405180910390fd5b8b6115e95781602001516115fa565b600182602001516115fa91906144b5565b60020b60608401525061163f565b80600001516001600160a01b031682604001516001600160a01b03161461163f576116368260400151612b3f565b60020b60608301525b5061133a565b826020015160020b816060015160020b1461170357600080611687856040015161166c4290565b6020880151606089015160808a015160079493929190612e77565b604085015160608601516002805463ffffffff60b81b1916600160c81b61ffff9586160261ffff60b81b191617600160b81b9590941694909402929092176001600160b81b031916600160a01b62ffffff909316929092026001600160a01b031916919091176001600160a01b03909116179055506117289050565b6040810151600280546001600160a01b0319166001600160a01b039092169190911790555b8060a001516001600160801b0316826001600160801b03161461176a5760a0810151600380546001600160801b0319166001600160801b039092169190911790555b891561177d576080810151600055611786565b60808101516001555b896117aa57806020015161179990614457565b81516117a5908b61449e565b6117c4565b80516117b6908a61449e565b81602001516117c490614457565b909550935089156118f6576001600160a01b037f000000000000000000000000cecf1c10c2f21392f1a23716ef1a7cf44388ff3c1663a9059cbb8c61180887614457565b6040518363ffffffff1660e01b81526004016118259291906143da565b600060405180830381600087803b15801561183f57600080fd5b505af1158015611853573d6000803e3d6000fd5b505050506000611861611ec7565b60405163fa461e3360e01b8152909150339063fa461e339061188d90899089908d908d90600401614389565b600060405180830381600087803b1580156118a757600080fd5b505af11580156118bb573d6000803e3d6000fd5b505050506118c7611ec7565b6118d187836143a9565b11156118f05760405163098fb56160e01b815260040160405180910390fd5b50611a19565b6001600160a01b037f000000000000000000000000a71aaa5f69d6baf47c6aa2a55fdbd253c525c0841663a9059cbb8c61192f88614457565b6040518363ffffffff1660e01b815260040161194c9291906143da565b600060405180830381600087803b15801561196657600080fd5b505af115801561197a573d6000803e3d6000fd5b505050506000611988611f5e565b60405163fa461e3360e01b8152909150339063fa461e33906119b490899089908d908d90600401614389565b600060405180830381600087803b1580156119ce57600080fd5b505af11580156119e2573d6000803e3d6000fd5b505050506119ee611f5e565b6119f886836143a9565b1115611a175760405163098fb56160e01b815260040160405180910390fd5b505b6002805460a083810151604080518a8152602081018a90526001600160a01b03808616828401526001600160801b039093166060820152600160a01b90940490940b60808401529251928e169233927fc42079f94a6350d7e6235f29174924f928cc2ac818eb64fed8004e115fbcca6792908290030190a3505050965096945050505050565b6002546001600160a01b031615611ac85760405162dc149f60e41b815260040160405180910390fd5b6000611ad382612fb8565b90506000611ae082612b3f565b9050600080611b2d426007906040805160608101825263ffffffff929092168083526000602084015260019290910182905282546001600160601b03191617600160581b17909155908190565b6040805160a0810182526001600160a01b0397909716808852600287810b60208a015260009289019290925261ffff9384166060890181905292909316608090970187905280546001600160b81b031916909217600160a01b62ffffff909616959095029490941765ffffffffffff60b81b1916600160c81b90940261ffff60d81b191693909317600160d81b90940293909317909155505050565b60008261ffff168261ffff1611611be1575081611c3c565b825b8261ffff168161ffff161015611c37576001858261ffff1661ffff8110611c0c57611c0c6144fd565b01805463ffffffff191663ffffffff9290921691909117905580611c2f81614513565b915050611be3565b508190505b9392505050565b6040805160a081018252600280546001600160a01b0381168352600160a01b810490910b60208084019190915261ffff600160b81b8304811684860152600160c81b830481166060850152600160d81b909204909116608083015260008054600154865193870151958701519295869586959094611cc49260069291611ff6565b6020808901519085015160608a0151929850600092611cea926004929091878787612fe5565b6040890151602086015160608b0151929350600092611d1192600492909188886001612fe5565b90508115611d4b576020890151611d4b906005907f000000000000000000000000000000000000000000000000000000000000000a6130e3565b8015611d83576040890151611d83906005907f000000000000000000000000000000000000000000000000000000000000000a6130e3565b6020808a015160408b0151918701516000928392611da692600492908a8a61204e565b60608d01519193509150611dbd908b908484613178565b8a6020015160020b876020015160020b1215611e0157611dfa611de38c602001516124a5565b611df08d604001516124a5565b8d606001516132ad565b9850611eb9565b8a6040015160020b876020015160020b1215611e8f57611e2c8760000151611df08d604001516124a5565b9850611e4a611e3e8c602001516124a5565b885160608e01516132e9565b60035460608d0151919950611e6a916001600160801b0390911690612b0e565b600380546001600160801b0319166001600160801b0392909216919091179055611eb9565b611eb6611e9f8c602001516124a5565b611eac8d604001516124a5565b8d606001516132e9565b97505b505050505050509193909250565b6040516370a0823160e01b81526000906001600160a01b037f000000000000000000000000a71aaa5f69d6baf47c6aa2a55fdbd253c525c08416906370a0823190611f16903090600401613f3b565b6020604051808303816000875af1158015611f35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f5991906143c1565b905090565b6040516370a0823160e01b81526000906001600160a01b037f000000000000000000000000cecf1c10c2f21392f1a23716ef1a7cf44388ff3c16906370a0823190611f16903090600401613f3b565b6000611fba8484846129f4565b905060008280611fcc57611fcc614534565b8486091115611c3c576000198110611fe357600080fd5b80611fed8161454a565b95945050505050565b6040805160609490941b6001600160601b03191660208086019190915260e893841b60348601529190921b60378401528151601a818503018152603a9093018252825192810192909220600090815292909152902090565b600285810b60008181526020899052604080822088850b83529082209193849391929184918291908a900b1261208f575050600282015460038301546120b3565b600284015461209e908961449e565b91508360030154876120b0919061449e565b90505b6000808b60020b8b60020b12156120d5575050600283015460038401546120f9565b60028501546120e4908b61449e565b91508460030154896120f6919061449e565b90505b81612104858c61449e565b61210e919061449e565b97508061211b848b61449e565b612125919061449e565b9650505050505050965096945050505050565b6000806000612165866001015486612150919061449e565b87546001600160801b0316600160801b6129f4565b9050600061219187600201548661217c919061449e565b88546001600160801b0316600160801b6129f4565b90506000826001600160801b031611806121b457506000816001600160801b0316115b156122075760038701546121d29083906001600160801b0316614473565b60038801546001600160801b0391821695506121f7918391600160801b900416614473565b6001600160801b03169250612220565b816001600160801b03169350806001600160801b031692505b5050935093915050565b606084516001600160401b0381111561224557612245614563565b60405190808252806020026020018201604052801561226e578160200160208202803683370190505b50905060005b85518110156122dd576122a48888888481518110612294576122946144fd565b6020026020010151888888613317565b8282815181106122b6576122b66144fd565b602002602001019060060b908160060b8152505080806122d59061454a565b915050612274565b509695505050505050565b600080806122f68587614579565b905060008660020b128015612316575061231085876145b3565b60020b15155b156123295780612325816145d5565b9150505b83156123d65760008061233b8361348b565b90925090506000600160ff831681901b90612356908261449e565b61236091906143a9565b600184900b600090815260208c9052604090205481168015159650909150856123a0578861239160ff8516876144b5565b61239b91906145f8565b6123cb565b886123aa826134a8565b6123b49085614685565b6123c19060ff16876144b5565b6123cb91906145f8565b96505050505061249b565b6000806123ec6123e78460016146a8565b61348b565b90925090506000612404600160ff841681901b61449e565b600184900b600090815260208c90526040902054901990811680151596509091508561245d57886124368460ff614685565b60ff166124448760016146a8565b61244e91906146a8565b61245891906145f8565b612494565b88836124688361359a565b6124729190614685565b60ff166124808760016146a8565b61248a91906146a8565b61249491906145f8565b9650505050505b5094509492505050565b60008060008360020b126124bc578260020b6124c9565b8260020b6124c990614457565b90506124d8620d89e71961433e565b62ffffff168111156125155760405162461bcd60e51b81526020600482015260016024820152601560fa1b60448201526064015b60405180910390fd5b60008160011660000361252c57600160801b61253e565b6ffffcb933bd6fad37aa2d162d1a5940015b6001600160881b03169050600282161561257357608061256e826ffff97272373d413259a46990580e213a6146ef565b901c90505b600482161561259d576080612598826ffff2e50f5f656932ef12357cf3c7fdcc6146ef565b901c90505b60088216156125c75760806125c2826fffe5caca7e10e4e61c3624eaa0941cd06146ef565b901c90505b60108216156125f15760806125ec826fffcb9843d60f6159c9db58835c9266446146ef565b901c90505b602082161561261b576080612616826fff973b41fa98c081472e6896dfb254c06146ef565b901c90505b6040821615612645576080612640826fff2ea16466c96a3843ec78b326b528616146ef565b901c90505b608082161561266f57608061266a826ffe5dee046a99a2a811c461f1969c30536146ef565b901c90505b61010082161561269a576080612695826ffcbe86c7900a88aedcffc83b479aa3a46146ef565b901c90505b6102008216156126c55760806126c0826ff987a7253ac413176f2b074cf7815e546146ef565b901c90505b6104008216156126f05760806126eb826ff3392b0822b70005940c7a398e4b70f36146ef565b901c90505b61080082161561271b576080612716826fe7159475a2c29b7443b29c7fa6e889d96146ef565b901c90505b611000821615612746576080612741826fd097f3bdfd2022b8845ad8f792aa58256146ef565b901c90505b61200082161561277157608061276c826fa9f746462d870fdf8a65dc1f90e061e56146ef565b901c90505b61400082161561279c576080612797826f70d869a156d2a1b890bb3df62baf32f76146ef565b901c90505b6180008216156127c75760806127c2826f31be135f97d08fd981231505542fcfa66146ef565b901c90505b620100008216156127f35760806127ee826f09aa508b5b7a84e1c677de54f3e99bc96146ef565b901c90505b6202000082161561281e576080612819826e5d6af8dedb81196699c329225ee6046146ef565b901c90505b62040000821615612848576080612843826d2216e584f5fa1ea926041bedfe986146ef565b901c90505b6208000082161561287057608061286b826b048a170391f7dc42444e8fa26146ef565b901c90505b60008460020b131561288b576128888160001961470e565b90505b612899600160201b82614722565b156128a55760016128a8565b60005b6128b99060ff16602083901c6143a9565b949350505050565b60008080806001600160a01b03808916908a161015816128f6886128e889620f4240614736565b62ffffff16620f42406129f4565b90508161290f5761290a8b8b8b60016136c4565b61291c565b61291c8b8b8b6001613745565b945084811061292d5789955061293c565b6129398b8a8385613811565b95505b6001600160a01b03868116908b161482156129805780612968576129638c888c6001613745565b61296a565b855b95506129798c888c60006136c4565b94506129ab565b80612997576129928c888c60016136c4565b612999565b855b95506129a88c888c6000613745565b94505b806129c1576129ba868a61449e565b93506129e5565b6129e28662ffffff8a166129d88b620f4240614736565b62ffffff16611fad565b93505b50505095509550955095915050565b6000808060001985870985870292508281108382030391505080600003612a2e57838281612a2457612a24614534565b0492505050611c3c565b838110612a5857604051631dcf306360e21b8152600481018290526024810185905260440161250c565b60008486880960026001871981018816978890046003810283188082028403028082028403028082028403028082028403028082028403029081029092039091026000889003889004909101858311909403939093029303949094049190911702949350505050565b600283810b600090815260208690526040812091820154909190612ae5908561449e565b60028201556003810154612af9908461449e565b600382015560010154600f0b95945050505050565b60008082600f0b1215612b3557612b248261443d565b612b2e90846143f3565b9050611096565b6110938284614473565b60006401000276a36001600160a01b03831610801590612b7b575073fffd8963efd1fc6a506488495d951d5263988d266001600160a01b038316105b612bab5760405162461bcd60e51b81526020600482015260016024820152602960f91b604482015260640161250c565b600160201b600160c01b03602083901b166001600160801b03811160071b81811c6001600160401b03811160061b90811c63ffffffff811160051b90811c61ffff811160041b90811c60ff8111600390811b91821c600f811160021b90811c918211600190811b92831c97908811961790941790921717909117171760808110612c4457612c3a607f8261449e565b83901c9150612c55565b612c4f81607f61449e565b83901b91505b60006040612c64608084614752565b901b9050828302607f1c92508260801c80603f1b8217915083811c935050828302607f1c92508260801c80603e1b8217915083811c935050828302607f1c92508260801c80603d1b8217915083811c935050828302607f1c92508260801c80603c1b8217915083811c935050828302607f1c92508260801c80603b1b8217915083811c935050828302607f1c92508260801c80603a1b8217915083811c935050828302607f1c92508260801c8060391b8217915083811c935050828302607f1c92508260801c8060381b8217915083811c935050828302607f1c92508260801c8060371b8217915083811c935050828302607f1c92508260801c8060361b8217915083811c935050828302607f1c92508260801c8060351b8217915083811c935050828302607f1c92508260801c8060341b8217915083811c935050828302607f1c92508260801c8060331b8217915083811c935050828302607f1c92508260801c8060321b8217915050600081693627a301d71055774c85612de79190614791565b905060006080612e076f028f6481ab7f045a5af012a19d003aaa84614752565b901d905060006080612e29846fdb2df09e81959a81455e260799a0632f614816565b901d90508060020b8260020b14612e6857886001600160a01b0316612e4d826124a5565b6001600160a01b03161115612e625781612e6a565b80612e6a565b815b9998505050505050505050565b6000806000888861ffff1661ffff8110612e9357612e936144fd565b60408051606081018252919092015463ffffffff808216808452600160201b830460060b6020850152600160581b90920460ff161515938301939093529092509088169003612ee85787859250925050612fad565b8461ffff168461ffff16118015612f105750612f05600186614857565b61ffff168861ffff16145b15612f1d57839150612f21565b8491505b81612f2d896001614872565b612f37919061488f565b9250612f44818888613833565b898461ffff1661ffff8110612f5b57612f5b6144fd565b82519101805460208401516040909401511515600160581b0260ff60581b1966ffffffffffffff909516600160201b026001600160581b031990921663ffffffff909416939093171792909216179055505b965096945050505050565b6000612fc660406060614685565b60ff16612fd6604084901b61389d565b600f0b901b600f0b9050919050565b600286900b6000908152602088905260408120805461010090046001600160801b0316826130138289612b0e565b6001600160801b038082161590841680159190911415955090915060000361305d578860020b8a60020b136130515760028301879055600383018690555b825460ff191660011783555b8254610100600160881b0319166101006001600160801b038316021783558461309b57600183015461309690600f8a810b91900b614816565b6130b1565b60018301546130b190600f8a810b91900b614752565b60019390930180546001600160801b0319166001600160801b0390941693909317909255509098975050505050505050565b6130ed81836145b3565b60020b1561313c5760405162461bcd60e51b815260206004820152601c60248201527b151a58dac81a5cc81b9bdd0818dbdc9c9958dd1b1e481cdc1858d95960221b604482015260640161250c565b60008061314c6123e78486614579565b600191820b60009081526020979097526040909620805460ff9097169190911b90951890945550505050565b60006131a285600101548461318d919061449e565b86546001600160801b0316600160801b6129f4565b905060006131b9866002015484612150919061449e565b86549091506131d1906001600160801b031686612b0e565b86546001600160801b0319166001600160801b039182161787556001870185905560028701849055821615158061321157506000816001600160801b0316115b156132a5576003860180548391906000906132369084906001600160801b0316614473565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550808660030160108282829054906101000a90046001600160801b03166132809190614473565b92506101000a8154816001600160801b0302191690836001600160801b031602179055505b505050505050565b60008082600f0b126132cb576132c68484846001613745565b6128b9565b6132e084846132d98561443d565b6000613745565b6128b990614457565b60008082600f0b12613302576132c684848460016136c4565b6132e084846133108561443d565b60006136c4565b60008463ffffffff166000036133a1576000878461ffff1661ffff8110613340576133406144fd565b60408051606081018252919092015463ffffffff808216808452600160201b830460060b6020850152600160581b90920460ff161515938301939093529092509088161461339657613393818887613833565b90505b602001519050613481565b60006133ad86886148b0565b90506000806133c08a8a858a8a8a6138bf565b91509150816000015163ffffffff168363ffffffff16036133e957506020015191506134819050565b806000015163ffffffff168363ffffffff160361340e57602001519250613481915050565b8151815160009161341e916148b0565b63ffffffff169050600083600001518561343891906148b0565b63ffffffff16905080828560200151856020015161345691906148cd565b6134609190614913565b61346a9190614948565b8460200151613479919061499b565b955050505050505b9695505050505050565b600281900b60081d60006134a1610100846145b3565b9050915091565b60008082116134b657600080fd5b600160801b82106134d457608091821c916134d190826149e1565b90505b600160401b82106134f257604091821c916134ef90826149e1565b90505b600160201b821061351057602091821c9161350d90826149e1565b90505b62010000821061352d57601091821c9161352a90826149e1565b90505b610100821061354957600891821c9161354690826149e1565b90505b6010821061356457600491821c9161356190826149e1565b90505b6004821061357f57600291821c9161357c90826149e1565b90505b60028210613595576135926001826149e1565b90505b919050565b60008082116135a857600080fd5b5060ff6001600160801b038216156135cc576135c5608082614685565b90506135d4565b608082901c91505b6001600160401b038216156135f5576135ee604082614685565b90506135fd565b604082901c91505b63ffffffff82161561361b57613614602082614685565b9050613623565b602082901c91505b61ffff82161561363f57613638601082614685565b9050613647565b601082901c91505b60ff8216156136625761365b600882614685565b905061366a565b600882901c91505b600f8216156136855761367e600482614685565b905061368d565b600482901c91505b60038216156136a8576136a1600282614685565b90506136b0565b600282901c91505b600182161561359557613592600182614685565b6000836001600160a01b0316856001600160a01b031611156136e4579293925b811561371b576137146001600160801b0384166137018787614a06565b6001600160a01b0316600160601b611fad565b90506128b9565b611fed6001600160801b0384166137328787614a06565b6001600160a01b0316600160601b6129f4565b6000836001600160a01b0316856001600160a01b03161115613765579293925b6000856001600160a01b03161161377b57600080fd5b600160601b600160e01b03606084901b1660006137988787614a06565b6001600160a01b0316905083156137dc576137d56137c08383896001600160a01b0316611fad565b886001600160a01b0316808204910615150190565b9250613807565b866001600160a01b03166137fa8383896001600160a01b03166129f4565b613804919061470e565b92505b5050949350505050565b60008161382857613823858585613a5d565b611fed565b611fed858585613a8a565b61383b613f1b565b835160009061384a90856148b0565b63ffffffff16905060405180606001604052808563ffffffff168152602001828560020b6138789190614948565b8760200151613887919061499b565b60060b8152600160209091015295945050505050565b60008082600f0b12156138af57600080fd5b613592604083600f0b901b613b2e565b6138c7613f1b565b6138cf613f1b565b878461ffff1661ffff81106138e6576138e66144fd565b60408051606081018252919092015463ffffffff8116808352600160201b820460060b6020840152600160581b90910460ff16151592820192909252925061393090889088613c9e565b1561395b57815163ffffffff878116911614612fad5781613952838888613833565b91509150612fad565b8783613968866001614872565b613972919061488f565b61ffff1661ffff8110613987576139876144fd565b60408051606081018252919092015463ffffffff81168252600160201b810460060b6020830152600160581b900460ff1615159181018290529250613a005760408051606081018252895463ffffffff81168252600160201b810460060b6020830152600160581b900460ff1615159181019190915291505b613a0f87836000015188613c9e565b613a415760405162461bcd60e51b815260206004820152600360248201526213d31160ea1b604482015260640161250c565b613a4e8888888787613d6d565b91509150965096945050505050565b6000613a7782600160601b856001600160801b03166129f4565b6128b9906001600160a01b0386166143a9565b6000600160601b600160e01b03606084901b1681613ab16001600160a01b038716856146ef565b90506001600160a01b038616613ac7858361470e565b03613b01576000613ad882846143a9565b9050828110613aff57613af583886001600160a01b031683611fad565b9350505050611c3c565b505b6134818285613b196001600160a01b038a168361470e565b613b2391906143a9565b808204910615150190565b600081600003613b4057506000919050565b816001600160801b8210613b595760809190911c9060401b5b600160401b8210613b6f5760409190911c9060201b5b600160201b8210613b855760209190911c9060101b5b620100008210613b9a5760109190911c9060081b5b6101008210613bae5760089190911c9060041b5b60108210613bc15760049190911c9060021b5b60048210613bcd5760011b5b6001818581613bde57613bde614534565b048201901c90506001818581613bf657613bf6614534565b048201901c90506001818581613c0e57613c0e614534565b048201901c90506001818581613c2657613c26614534565b048201901c90506001818581613c3e57613c3e614534565b048201901c90506001818581613c5657613c56614534565b048201901c90506001818581613c6e57613c6e614534565b048201901c90506000818581613c8657613c86614534565b049050808210613c965780611fed565b509392505050565b60008363ffffffff168363ffffffff1611158015613cc857508363ffffffff168263ffffffff1611155b15613ce4578163ffffffff168363ffffffff1611159050611c3c565b60008463ffffffff168463ffffffff1611613d1257613d0d63ffffffff8516600160201b614a26565b613d1a565b8363ffffffff165b64ffffffffff16905060008563ffffffff168463ffffffff1611613d5157613d4c63ffffffff8516600160201b614a26565b613d59565b8363ffffffff165b64ffffffffff169091111595945050505050565b613d75613f1b565b613d7d613f1b565b600083613d8b866001614872565b613d95919061488f565b61ffff169050600060018561ffff1683613daf91906143a9565b613db9919061449e565b905060005b6002613dca83856143a9565b613dd4919061470e565b905089613de561ffff881683614722565b61ffff8110613df657613df66144fd565b60408051606081018252919092015463ffffffff81168252600160201b810460060b6020830152600160581b900460ff1615159181018290529550613e4757613e408160016143a9565b9250613dbe565b8961ffff8716613e588360016143a9565b613e629190614722565b61ffff8110613e7357613e736144fd565b60408051606081018252929091015463ffffffff81168352600160201b810460060b602084015260ff600160581b909104161515908201528551909450600090613ebf908b908b613c9e565b9050808015613ed85750613ed88a8a8760000151613c9e565b15613ee35750613f0e565b80613efa57613ef360018361449e565b9250613f08565b613f058260016143a9565b93505b50613dbe565b5050509550959350505050565b604080516060810182526000808252602082018190529181019190915290565b6001600160a01b0391909116815260200190565b600060208284031215613f6157600080fd5b5035919050565b600060208284031215613f7a57600080fd5b813561ffff81168114611c3c57600080fd5b6001600160a01b0381168114613fa157600080fd5b50565b8035600281900b811461359557600080fd5b80356001600160801b038116811461359557600080fd5b60008083601f840112613fdf57600080fd5b5081356001600160401b03811115613ff657600080fd5b60208301915083602082850101111561400e57600080fd5b9250929050565b60008060008060008060a0878903121561402e57600080fd5b863561403981613f8c565b955061404760208801613fa4565b945061405560408801613fa4565b935061406360608801613fb6565b925060808701356001600160401b0381111561407e57600080fd5b61408a89828a01613fcd565b979a9699509497509295939492505050565b600080600080606085870312156140b257600080fd5b843593506020850135925060408501356001600160401b038111156140d657600080fd5b6140e287828801613fcd565b95989497509550505050565b600080600080600060a0868803121561410657600080fd5b853561411181613f8c565b945061411f60208701613fa4565b935061412d60408701613fa4565b925061413b60608701613fb6565b915061414960808701613fb6565b90509295509295909350565b60006020828403121561416757600080fd5b81358060010b8114611c3c57600080fd5b60008060006060848603121561418d57600080fd5b61419684613fa4565b92506141a460208501613fa4565b915060408401356141b481613f8c565b809150509250925092565b600080602083850312156141d257600080fd5b82356001600160401b03808211156141e957600080fd5b818501915085601f8301126141fd57600080fd5b81358181111561420c57600080fd5b8660208260051b850101111561422157600080fd5b60209290920196919550909350505050565b6020808252825182820181905260009190848201906040850190845b8181101561426e57835160060b8352928401929184019160010161424f565b50909695505050505050565b60008060006060848603121561428f57600080fd5b61429884613fa4565b92506142a660208501613fa4565b91506142b460408501613fb6565b90509250925092565b60008060008060008060a087890312156142d657600080fd5b86356142e181613f8c565b9550602087013580151581146142f657600080fd5b945060408701359350606087013561406381613f8c565b60006020828403121561431f57600080fd5b61109382613fa4565b634e487b7160e01b600052601160045260246000fd5b60008160020b627fffff19810361435757614357614328565b60000392915050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b848152836020820152606060408201526000613481606083018486614360565b600082198211156143bc576143bc614328565b500190565b6000602082840312156143d357600080fd5b5051919050565b6001600160a01b03929092168252602082015260400190565b60006001600160801b038381169083168181101561441357614413614328565b039392505050565b6001600160a01b039290921682526001600160801b0316602082015260400190565b6000600f82900b6001607f1b810161435757614357614328565b6000600160ff1b820161446c5761446c614328565b5060000390565b60006001600160801b0382811684821680830382111561449557614495614328565b01949350505050565b6000828210156144b0576144b0614328565b500390565b60008160020b8360020b6000811281627fffff19018312811516156144dc576144dc614328565b81627fffff0183138116156144f3576144f3614328565b5090039392505050565b634e487b7160e01b600052603260045260246000fd5b600061ffff80831681810361452a5761452a614328565b6001019392505050565b634e487b7160e01b600052601260045260246000fd5b60006001820161455c5761455c614328565b5060010190565b634e487b7160e01b600052604160045260246000fd5b60008160020b8360020b8061459057614590614534565b627fffff198214600019821416156145aa576145aa614328565b90059392505050565b60008260020b806145c6576145c6614534565b808360020b0791505092915050565b60008160020b627fffff1981036145ee576145ee614328565b6000190192915050565b60008160020b8360020b627fffff60008213600084138383048511828216161561462457614624614328565b627fffff19600085128281168783058712161561464357614643614328565b6000871292508582058712848416161561465f5761465f614328565b8585058712818416161561467557614675614328565b5050509290910295945050505050565b600060ff821660ff84168082101561469f5761469f614328565b90039392505050565b60008160020b8360020b6000821282627fffff038213811516156146ce576146ce614328565b82627fffff190382128116156146e6576146e6614328565b50019392505050565b600081600019048311821515161561470957614709614328565b500290565b60008261471d5761471d614534565b500490565b60008261473157614731614534565b500690565b600062ffffff8381169083168181101561441357614413614328565b60008083128015600160ff1b85018412161561477057614770614328565b6001600160ff1b038401831381161561478b5761478b614328565b50500390565b60006001600160ff1b03818413828413808216868404861116156147b7576147b7614328565b600160ff1b60008712828116878305891216156147d6576147d6614328565b600087129250878205871284841616156147f2576147f2614328565b8785058712818416161561480857614808614328565b505050929093029392505050565b600080821280156001600160ff1b038490038513161561483857614838614328565b600160ff1b839003841281161561485157614851614328565b50500190565b600061ffff8381169083168181101561441357614413614328565b600061ffff80831681851680830382111561449557614495614328565b600061ffff808416806148a4576148a4614534565b92169190910692915050565b600063ffffffff8381169083168181101561441357614413614328565b60008160060b8360060b6000811281667fffffffffffff19018312811516156148f8576148f8614328565b81667fffffffffffff0183138116156144f3576144f3614328565b60008160060b8360060b8061492a5761492a614534565b667fffffffffffff198214600019821416156145aa576145aa614328565b60008160060b8360060b667fffffffffffff60008213600084138383048511828216161561497857614978614328565b667fffffffffffff19600085128281168783058712161561464357614643614328565b60008160060b8360060b6000821282667fffffffffffff038213811516156149c5576149c5614328565b82667fffffffffffff190382128116156146e6576146e6614328565b600060ff821660ff84168060ff038211156149fe576149fe614328565b019392505050565b60006001600160a01b038381169083168181101561441357614413614328565b600064ffffffffff8083168185168083038211156144955761449561432856fea2646970667358221220d1b2410ca7b3b0afed7a22a79e2fd9d9012b2dc0e13a9901bdd0791901ec2e3864736f6c634300080e0033