VeChain
Explorer
Mainnet
Search
Networks
Main
Test
Contract
0x38CdF0…b886
Summary
Transactions
Transfers
Address
0x38CdF0389061D7D214A43d0C2B468449c44Cb886
VET
0.00
VET
VTHO
0.00
VTHO
Master
0xa3568b1f8Eb9E56A01beAcAD660244BF46be18F5
Deployer
0xa3568b1f8Eb9E56A01beAcAD660244BF46be18F5
Code
0x6080604052600436106101445760003560e01c80638fb36037116100c0578063c0c53b8b11610074578063e2ceba6411610059578063e2ceba6414610469578063ec35bef314610489578063fbca6ba6146104b657600080fd5b8063c0c53b8b14610429578063ddc632621461044957600080fd5b8063a694fc3a116100a5578063a694fc3a14610348578063ad3cb1cc14610368578063bf7e214f146103be57600080fd5b80638fb3603714610291578063a4fc5057146102d757600080fd5b80632ec09d39116101175780634f1ef286116100fc5780634f1ef2861461024957806352d1902d1461025c5780637a9e5e4b1461027157600080fd5b80632ec09d39146101fb57806332f266941461021b57600080fd5b80630121b93f1461014957806307920da81461016b57806323ab3828146101a05780632d29a47b146101db575b600080fd5b34801561015557600080fd5b50610169610164366004614e74565b6104d6565b005b34801561017757600080fd5b5061018b610186366004614e74565b610e69565b60405190151581526020015b60405180910390f35b3480156101ac57600080fd5b5061018b6101bb366004614e8d565b600260209081526000928352604080842090915290825290205460ff1681565b3480156101e757600080fd5b506101696101f6366004614eaf565b61172f565b34801561020757600080fd5b50610169610216366004614e74565b6122bd565b34801561022757600080fd5b5061023b610236366004614e74565b6128c3565b604051908152602001610197565b610169610257366004614fa4565b612a03565b34801561026857600080fd5b5061023b612a1e565b34801561027d57600080fd5b5061016961028c36600461506a565b612a4d565b34801561029d57600080fd5b506102a6612b7a565b6040517fffffffff000000000000000000000000000000000000000000000000000000009091168152602001610197565b3480156102e357600080fd5b506103206102f2366004614e74565b6001602081905260009182526040909120805491810154600282015460038301546004909301549192909185565b604080519586526020860194909452928401919091526060830152608082015260a001610197565b34801561035457600080fd5b50610169610363366004614e74565b612bef565b34801561037457600080fd5b506103b16040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161019791906150f5565b3480156103ca57600080fd5b507ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a005473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610197565b34801561043557600080fd5b50610169610444366004615108565b61337e565b34801561045557600080fd5b50610169610464366004614e74565b613679565b34801561047557600080fd5b5061016961048436600461506a565b61428f565b34801561049557600080fd5b506000546104049073ffffffffffffffffffffffffffffffffffffffff1681565b3480156104c257600080fd5b506101696104d1366004614e74565b6142df565b6104e3335b600036614456565b600080546040517f6352211e0000000000000000000000000000000000000000000000000000000081526004810184905283929173ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa158015610554573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105789190615153565b73ffffffffffffffffffffffffffffffffffffffff16036105fa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f5644503a20546f6b656e20646f6573206e6f742065786973740000000000000060448201526064015b60405180910390fd5b600080546040517ea5ae210000000000000000000000000000000000000000000000000000000081526004810185905273ffffffffffffffffffffffffffffffffffffffff9091169062a5ae2190602401602060405180830381865afa158015610668573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061068c9190615153565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600360248201527f676f7600000000000000000000000000000000000000000000000000000000006044820152929350909173ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa15801561072e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107529190615153565b600080546040517f62744704000000000000000000000000000000000000000000000000000000008152929350909173ffffffffffffffffffffffffffffffffffffffff909116906362744704906107de9060040160208082526004908201527f6170707300000000000000000000000000000000000000000000000000000000604082015260600190565b602060405180830381865afa1580156107fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081f9190615153565b905060008273ffffffffffffffffffffffffffffffffffffffff16639cbe5efd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561086e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108929190615170565b905060008373ffffffffffffffffffffffffffffffffffffffff1663eb9019d4868673ffffffffffffffffffffffffffffffffffffffff1663d06efeda866040518263ffffffff1660e01b81526004016108ee91815260200190565b602060405180830381865afa15801561090b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092f9190615170565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff90921660048301526024820152604401602060405180830381865afa15801561099d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c19190615170565b9050806000036109d45750505050505050565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600560248201527f766f746573000000000000000000000000000000000000000000000000000000604482015273ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa158015610a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a959190615153565b6040517f9ab24eb000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8881166004830152919250600091831690639ab24eb090602401600060405180830381865afa158015610b07573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610b4d919081019061521c565b805160208201518151929350606092600003610c83578773ffffffffffffffffffffffffffffffffffffffff1663c04cff196040518163ffffffff1660e01b8152600401600060405180830381865afa158015610bae573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610bf49190810190615315565b80519092508067ffffffffffffffff811115610c1257610c12614efd565b604051908082528060200260200182016040528015610c3b578160200160208202803683370190505b50915060005b81811015610c8057610c54826064615381565b838281518110610c6657610c666153bc565b60ff90921660209283029190910190910152600101610c41565b50505b6040517f613f4a8d00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86169063613f4a8d90610cd790899085906004016153eb565b600060405180830381865afa158015610cf4573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610d3a919081019061543e565b6000805460405192955073ffffffffffffffffffffffffffffffffffffffff16916344c028fe918f918d9190610d78908d9089908b906024016154cf565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f53ed6399000000000000000000000000000000000000000000000000000000001790525160e086901b7fffffffff00000000000000000000000000000000000000000000000000000000168152610e289493929190600401615555565b600060405180830381600087803b158015610e4257600080fd5b505af1158015610e56573d6000803e3d6000fd5b50505050505050505050505050505b5050565b600080546040517ea5ae2100000000000000000000000000000000000000000000000000000000815260048101849052829173ffffffffffffffffffffffffffffffffffffffff169062a5ae2190602401602060405180830381865afa158015610ed7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610efb9190615153565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600360248201527f676f7600000000000000000000000000000000000000000000000000000000006044820152929350909173ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa158015610f9d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fc19190615153565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600360248201527f6e667400000000000000000000000000000000000000000000000000000000006044820152929350909173ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa158015611063573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110879190615153565b905060008273ffffffffffffffffffffffffffffffffffffffff16639cbe5efd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fa9190615170565b6040517fd06efeda0000000000000000000000000000000000000000000000000000000081526004810182905290915060009073ffffffffffffffffffffffffffffffffffffffff85169063d06efeda90602401602060405180830381865afa15801561116b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061118f9190615170565b600080546040517f62744704000000000000000000000000000000000000000000000000000000008152929350909173ffffffffffffffffffffffffffffffffffffffff9091169063627447049061121b9060040160208082526004908201527f6233747200000000000000000000000000000000000000000000000000000000604082015260600190565b602060405180830381865afa158015611238573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061125c9190615153565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff888116600483015291909116906370a0823190602401602060405180830381865afa1580156112ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112ee9190615170565b9050600083600114611478576000546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f7265776172646572000000000000000000000000000000000000000000000000604482015273ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa158015611396573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ba9190615153565b73ffffffffffffffffffffffffffffffffffffffff16628f33d76113df60018761559a565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b168152600481019190915273ffffffffffffffffffffffffffffffffffffffff8a166024820152604401602060405180830381865afa15801561144f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114739190615170565b61147b565b60005b6040517f438596320000000000000000000000000000000000000000000000000000000081526004810186905273ffffffffffffffffffffffffffffffffffffffff8981166024830152919250600091881690634385963290604401602060405180830381865afa1580156114f4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061151891906155c2565b6040517feb9019d400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a811660048301526024820187905291925060009189169063eb9019d490604401602060405180830381865afa158015611591573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115b59190615170565b6040517f9aeb962b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8b8116600483015291925090891690639aeb962b90602401602060405180830381865afa158015611625573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061164991906155c2565b151560011480156116e757506040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a811660048301528816906370a0823190602401602060405180830381865afa1580156116c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e59190615170565b155b156116fd575060019a9950505050505050505050565b600084118061170c5750600083115b806117205750600081118015611720575081155b9b9a5050505050505050505050565b611738336104db565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ca9190615170565b905060006117d883856155dd565b9050818111156117e55750805b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063627447049061186c9060040160208082526004908201527f6233747200000000000000000000000000000000000000000000000000000000604082015260600190565b602060405180830381865afa158015611889573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118ad9190615153565b600080546040517f62744704000000000000000000000000000000000000000000000000000000008152929350909173ffffffffffffffffffffffffffffffffffffffff909116906362744704906119399060040160208082526004908201527f766f743300000000000000000000000000000000000000000000000000000000604082015260600190565b602060405180830381865afa158015611956573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061197a9190615153565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600360248201527f676f7600000000000000000000000000000000000000000000000000000000006044820152929350909173ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa158015611a1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a409190615153565b905060008173ffffffffffffffffffffffffffffffffffffffff16639cbe5efd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a8f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ab39190615170565b6040517fd06efeda0000000000000000000000000000000000000000000000000000000081526004810182905290915060009073ffffffffffffffffffffffffffffffffffffffff84169063d06efeda90602401602060405180830381865afa158015611b24573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b489190615170565b90506000895b8781101561224357600080546040517f4f6ccce70000000000000000000000000000000000000000000000000000000081526004810184905273ffffffffffffffffffffffffffffffffffffffff90911690634f6ccce790602401602060405180830381865afa158015611bc6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bea9190615170565b600080546040517ea5ae2100000000000000000000000000000000000000000000000000000000815260048101849052929350909173ffffffffffffffffffffffffffffffffffffffff9091169062a5ae2190602401602060405180830381865afa158015611c5d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c819190615153565b6040517feb9019d400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80831660048301526024820188905291925060009189169063eb9019d490604401602060405180830381865afa158015611cfa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d1e9190615170565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301528c16906370a0823190602401602060405180830381865afa158015611d8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dae9190615170565b611db891906155dd565b90508e8110158015611dce5750611dce83610e69565b1561223857600087815260026020908152604080832086845290915290205460ff1661222a576040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301528b16906370a0823190602401602060405180830381865afa158015611e60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e849190615170565b60008881526001602052604081208054909190611ea29084906155dd565b90915550506040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301528a16906370a0823190602401602060405180830381865afa158015611f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f379190615170565b60008881526001602052604081206002018054909190611f589084906155dd565b90915550506040517f9ab24eb000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301528a1690639ab24eb090602401602060405180830381865afa158015611fc9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fed9190615170565b6000888152600160205260408120600301805490919061200e9084906155dd565b909155505060018711156121bc576000546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f7265776172646572000000000000000000000000000000000000000000000000604482015273ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa1580156120b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120dc9190615153565b73ffffffffffffffffffffffffffffffffffffffff16628f33d761210160018a61559a565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b168152600481019190915273ffffffffffffffffffffffffffffffffffffffff85166024820152604401602060405180830381865afa158015612171573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121959190615170565b600088815260016020819052604082200180549091906121b69084906155dd565b90915550505b600180600089815260200190815260200160002060040160008282546121e291906155dd565b90915550506000878152600260209081526040808320868452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555b612233836142df565b600194505b505050600101611b4e565b506001811515146122b0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4e6f20616374696f6e732072657175697265640000000000000000000000000060448201526064016105f1565b5050505050505050505050565b6122c6336104db565b600080546040517f6352211e0000000000000000000000000000000000000000000000000000000081526004810184905283929173ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa158015612337573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061235b9190615153565b73ffffffffffffffffffffffffffffffffffffffff16036123d8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f5644503a20546f6b656e20646f6573206e6f742065786973740000000000000060448201526064016105f1565b600080546040517ea5ae210000000000000000000000000000000000000000000000000000000081526004810185905273ffffffffffffffffffffffffffffffffffffffff9091169062a5ae2190602401602060405180830381865afa158015612446573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061246a9190615153565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600360248201527f676f7600000000000000000000000000000000000000000000000000000000006044820152929350909173ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa15801561250c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125309190615153565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600360248201527f6e667400000000000000000000000000000000000000000000000000000000006044820152929350909173ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa1580156125d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125f69190615153565b6040517f9aeb962b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015291925090831690639aeb962b90602401602060405180830381865afa158015612666573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061268a91906155c2565b1515600114801561272857506040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301528216906370a0823190602401602060405180830381865afa158015612702573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127269190615170565b155b156128bc576000546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600360248201527f6e66740000000000000000000000000000000000000000000000000000000000604482015273ffffffffffffffffffffffffffffffffffffffff909116906344c028fe9087908390636274470490606401602060405180830381865afa1580156127d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127f79190615153565b6040805160048082526024820183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f5b70ea9f00000000000000000000000000000000000000000000000000000000179052915160e086901b7fffffffff000000000000000000000000000000000000000000000000000000001681526128899493926000929101615555565b600060405180830381600087803b1580156128a357600080fd5b505af11580156128b7573d6000803e3d6000fd5b505050505b5050505050565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600560248201527f7374617473000000000000000000000000000000000000000000000000000000604482015273ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa158015612960573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129849190615153565b73ffffffffffffffffffffffffffffffffffffffff1663805da4ad836040518263ffffffff1660e01b81526004016129bc91906155f0565b602060405180830381865afa1580156129d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129fd9190615170565b92915050565b612a0b614655565b612a148261475b565b610e658282614767565b6000612a286148a5565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b33612a8c7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a005473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614612b08576040517f068ca9d800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024016105f1565b8173ffffffffffffffffffffffffffffffffffffffff163b600003612b71576040517fc2f31e5e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201526024016105f1565b610e6582614914565b7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a0080546000919074010000000000000000000000000000000000000000900460ff16612bc7576000612be9565b7f8fb36037000000000000000000000000000000000000000000000000000000005b91505090565b612bf8336104db565b600080546040517f6352211e0000000000000000000000000000000000000000000000000000000081526004810184905283929173ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa158015612c69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c8d9190615153565b73ffffffffffffffffffffffffffffffffffffffff1603612d0a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f5644503a20546f6b656e20646f6573206e6f742065786973740000000000000060448201526064016105f1565b600080546040517ea5ae210000000000000000000000000000000000000000000000000000000081526004810185905273ffffffffffffffffffffffffffffffffffffffff9091169062a5ae2190602401602060405180830381865afa158015612d78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d9c9190615153565b600080546040517f62744704000000000000000000000000000000000000000000000000000000008152929350909173ffffffffffffffffffffffffffffffffffffffff90911690636274470490612e289060040160208082526004908201527f6233747200000000000000000000000000000000000000000000000000000000604082015260600190565b602060405180830381865afa158015612e45573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e699190615153565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015291909116906370a0823190602401602060405180830381865afa158015612ed7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612efb9190615170565b905060008111612f0b5750505050565b6000546040517f6274470400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff909116906344c028fe9086908390636274470490612f9b9060040160208082526004908201527f6233747200000000000000000000000000000000000000000000000000000000604082015260600190565b602060405180830381865afa158015612fb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fdc9190615153565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff909116906362744704906130639060040160208082526004908201527f766f743300000000000000000000000000000000000000000000000000000000604082015260600190565b602060405180830381865afa158015613080573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130a49190615153565b60405173ffffffffffffffffffffffffffffffffffffffff909116602482015260448101879052606401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f095ea7b3000000000000000000000000000000000000000000000000000000001790525160e086901b7fffffffff0000000000000000000000000000000000000000000000000000000016815261317e9493929190600401615555565b600060405180830381600087803b15801561319857600080fd5b505af11580156131ac573d6000803e3d6000fd5b50506000546040517f6274470400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90911692506344c028fe9150869083906362744704906132409060040160208082526004908201527f766f743300000000000000000000000000000000000000000000000000000000604082015260600190565b602060405180830381865afa15801561325d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132819190615153565b60008560405160240161329691815260200190565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fe23285a0000000000000000000000000000000000000000000000000000000001790525160e086901b7fffffffff000000000000000000000000000000000000000000000000000000001681526133469493929190600401615555565b600060405180830381600087803b15801561336057600080fd5b505af1158015613374573d6000803e3d6000fd5b5050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff166000811580156133c95750825b905060008267ffffffffffffffff1660011480156133e65750303b155b9050811580156133f4575080155b1561342b576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000166001178555831561348c5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b613495886149a5565b61349d6149b6565b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff888116919091179091556040517f02571be30000000000000000000000000000000000000000000000000000000081527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152908816906302571be390602401602060405180830381865afa158015613558573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061357c9190615153565b6040517f1e83409a00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff9190911690631e83409a906024016020604051808303816000875af11580156135ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061360e9190615170565b5083156133745784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15050505050505050565b613682336104db565b600080546040517f6352211e0000000000000000000000000000000000000000000000000000000081526004810184905283929173ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa1580156136f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137179190615153565b73ffffffffffffffffffffffffffffffffffffffff1603613794576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f5644503a20546f6b656e20646f6573206e6f742065786973740000000000000060448201526064016105f1565b600080546040517ea5ae210000000000000000000000000000000000000000000000000000000081526004810185905273ffffffffffffffffffffffffffffffffffffffff9091169062a5ae2190602401602060405180830381865afa158015613802573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138269190615153565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600360248201527f676f7600000000000000000000000000000000000000000000000000000000006044820152929350909173ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa1580156138c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138ec9190615153565b90508073ffffffffffffffffffffffffffffffffffffffff16639cbe5efd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613939573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061395d9190615170565b60010361396a5750505050565b600060018273ffffffffffffffffffffffffffffffffffffffff16639cbe5efd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156139b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139dd9190615170565b6139e7919061559a565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f72657761726465720000000000000000000000000000000000000000000000006044820152929350909173ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa158015613a89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613aad9190615153565b6040517e8f33d70000000000000000000000000000000000000000000000000000000081526004810184905273ffffffffffffffffffffffffffffffffffffffff8681166024830152919250600091831690628f33d790604401602060405180830381865afa158015613b24573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b489190615170565b905080600003613b5b5750505050505050565b6040517fe70eb3920000000000000000000000000000000000000000000000000000000081526004810184905273ffffffffffffffffffffffffffffffffffffffff868116602483015283169063e70eb39290604401600060405180830381600087803b158015613bcb57600080fd5b505af1158015613bdf573d6000803e3d6000fd5b5050505060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636c18d1ad6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613c51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c759190615170565b613c8161271084615381565b613c8b9190615633565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f666565526563697069656e7400000000000000000000000000000000000000006044820152929350909173ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa158015613d2d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d519190615153565b6000546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600560248201527f7374617473000000000000000000000000000000000000000000000000000000604482015291925073ffffffffffffffffffffffffffffffffffffffff1690636274470490606401602060405180830381865afa158015613dee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e129190615153565b6000546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600560248201527f7374617473000000000000000000000000000000000000000000000000000000604482015273ffffffffffffffffffffffffffffffffffffffff928316926322dc48fd928d92879289921690636274470490606401602060405180830381865afa158015613ebc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ee09190615153565b73ffffffffffffffffffffffffffffffffffffffff1663805da4ad8f6040518263ffffffff1660e01b8152600401613f1891906155f0565b602060405180830381865afa158015613f35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f599190615170565b613f6391906155dd565b613f6d919061559a565b6040518363ffffffff1660e01b8152600401613f8a92919061564a565b600060405180830381600087803b158015613fa457600080fd5b505af1158015613fb8573d6000803e3d6000fd5b50505050600082118015613fe1575073ffffffffffffffffffffffffffffffffffffffff811615155b156128b7576000546040517f6274470400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff909116906344c028fe908b9083906362744704906140769060040160208082526004908201527f6233747200000000000000000000000000000000000000000000000000000000604082015260600190565b602060405180830381865afa158015614093573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140b79190615153565b600080546040517f6274470400000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f666565526563697069656e740000000000000000000000000000000000000000604482015273ffffffffffffffffffffffffffffffffffffffff90911690636274470490606401602060405180830381865afa158015614154573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141789190615153565b60405173ffffffffffffffffffffffffffffffffffffffff909116602482015260448101889052606401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb000000000000000000000000000000000000000000000000000000001790525160e086901b7fffffffff000000000000000000000000000000000000000000000000000000001681526142529493929190600401615555565b600060405180830381600087803b15801561426c57600080fd5b505af1158015614280573d6000803e3d6000fd5b50505050505050505050505050565b614298336104db565b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6142e8336104db565b600080546040517f6352211e0000000000000000000000000000000000000000000000000000000081526004810184905283929173ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa158015614359573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061437d9190615153565b73ffffffffffffffffffffffffffffffffffffffff16036143fa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f5644503a20546f6b656e20646f6573206e6f742065786973740000000000000060448201526064016105f1565b61440382613679565b61440c82612bef565b614415826104d6565b61441e826122bd565b6040518281527f57ba94d0dfbb222407b5bc7fa46c973a467e020851456b64a5cde372541e77c4906020015b60405180910390a15050565b7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a006000806144d96144bb7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a005473ffffffffffffffffffffffffffffffffffffffff1690565b87306144cb600460008a8c61569c565b6144d4916156c6565b6149be565b915091508161464d5763ffffffff8116156146035782547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001783556145697ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a005473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff166394c7d7ee8787876040518463ffffffff1660e01b81526004016145a59392919061570e565b600060405180830381600087803b1580156145bf57600080fd5b505af11580156145d3573d6000803e3d6000fd5b505084547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1685555061464d9050565b6040517f068ca9d800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871660048201526024016105f1565b505050505050565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000038cdf0389061d7d214a43d0c2b468449c44cb88616148061472257507f00000000000000000000000038cdf0389061d7d214a43d0c2b468449c44cb88673ffffffffffffffffffffffffffffffffffffffff166147097f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614155b15614759576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b614764336104db565b50565b8173ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156147ec575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526147e991810190615170565b60015b61483a576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201526024016105f1565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8114614896576040517faa1d49a4000000000000000000000000000000000000000000000000000000008152600481018290526024016105f1565b6148a08383614b3b565b505050565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000038cdf0389061d7d214a43d0c2b468449c44cb8861614614759576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a0080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff831690811782556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200161444a565b6149ad614b9e565b61476481614c05565b614759614b9e565b60405173ffffffffffffffffffffffffffffffffffffffff848116602483015283811660448301527fffffffff0000000000000000000000000000000000000000000000000000000083166064830152600091829182918291891690608401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb70096130000000000000000000000000000000000000000000000000000000017905251614a9e9190615778565b600060405180830381855afa9150503d8060008114614ad9576040519150601f19603f3d011682016040523d82523d6000602084013e614ade565b606091505b50915091508115614b30576040815110614b105780806020019051810190614b069190615794565b9094509250614b30565b6020815110614b305780806020019051810190614b2d91906155c2565b93505b505094509492505050565b614b4482614c16565b60405173ffffffffffffffffffffffffffffffffffffffff8316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115614b96576148a08282614ce5565b610e65614d68565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff16614759576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b614c0d614b9e565b61476481614914565b8073ffffffffffffffffffffffffffffffffffffffff163b600003614c7f576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024016105f1565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60606000808473ffffffffffffffffffffffffffffffffffffffff1684604051614d0f9190615778565b600060405180830381855af49150503d8060008114614d4a576040519150601f19603f3d011682016040523d82523d6000602084013e614d4f565b606091505b5091509150614d5f858383614da0565b95945050505050565b3415614759576040517fb398979f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606082614db557614db082614e32565b614e2b565b8151158015614dd9575073ffffffffffffffffffffffffffffffffffffffff84163b155b15614e28576040517f9996b31500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff851660048201526024016105f1565b50805b9392505050565b805115614e425780518082602001fd5b6040517f1425ea4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600060208284031215614e8657600080fd5b5035919050565b60008060408385031215614ea057600080fd5b50508035926020909101359150565b600080600060608486031215614ec457600080fd5b505081359360208301359350604090920135919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461476457600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715614f4f57614f4f614efd565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715614f9c57614f9c614efd565b604052919050565b60008060408385031215614fb757600080fd5b8235614fc281614edb565b915060208381013567ffffffffffffffff80821115614fe057600080fd5b818601915086601f830112614ff457600080fd5b81358181111561500657615006614efd565b615036847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601614f55565b9150808252878482850101111561504c57600080fd5b80848401858401376000848284010152508093505050509250929050565b60006020828403121561507c57600080fd5b8135614e2b81614edb565b60005b838110156150a257818101518382015260200161508a565b50506000910152565b600081518084526150c3816020860160208601615087565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000614e2b60208301846150ab565b60008060006060848603121561511d57600080fd5b833561512881614edb565b9250602084013561513881614edb565b9150604084013561514881614edb565b809150509250925092565b60006020828403121561516557600080fd5b8151614e2b81614edb565b60006020828403121561518257600080fd5b5051919050565b600067ffffffffffffffff8211156151a3576151a3614efd565b5060051b60200190565b600082601f8301126151be57600080fd5b815160206151d36151ce83615189565b614f55565b8083825260208201915060208460051b8701019350868411156151f557600080fd5b602086015b8481101561521157805183529183019183016151fa565b509695505050505050565b6000602080838503121561522f57600080fd5b825167ffffffffffffffff8082111561524757600080fd5b908401906040828703121561525b57600080fd5b615263614f2c565b82518281111561527257600080fd5b61527e888286016151ad565b825250838301518281111561529257600080fd5b80840193505086601f8401126152a757600080fd5b825191506152b76151ce83615189565b82815260059290921b830184019184810190888411156152d657600080fd5b938501935b8385101561530457845160ff811681146152f55760008081fd5b825293850193908501906152db565b948201949094529695505050505050565b60006020828403121561532757600080fd5b815167ffffffffffffffff81111561533e57600080fd5b61534a848285016151ad565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826153b7577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006040820184835260206040602085015281855180845260608601915060208701935060005b8181101561543157845160ff1683529383019391830191600101615412565b5090979650505050505050565b6000602080838503121561545157600080fd5b825167ffffffffffffffff81111561546857600080fd5b8301601f8101851361547957600080fd5b80516154876151ce82615189565b81815260059190911b820183019083810190878311156154a657600080fd5b928401925b828410156154c4578351825292840192908401906154ab565b979650505050505050565b6000606082018583526020606081850152818651808452608086019150828801935060005b81811015615510578451835293830193918301916001016154f4565b50508481036040860152855180825290820192508186019060005b818110156155475782518552938301939183019160010161552b565b509298975050505050505050565b84815273ffffffffffffffffffffffffffffffffffffffff8416602082015282604082015260806060820152600061559060808301846150ab565b9695505050505050565b818103818111156129fd576129fd615352565b805180151581146155bd57600080fd5b919050565b6000602082840312156155d457600080fd5b614e2b826155ad565b808201808211156129fd576129fd615352565b818152604060208201526000614e2b60408301600681527f7265776172640000000000000000000000000000000000000000000000000000602082015260400190565b80820281158282048414176129fd576129fd615352565b82815260606020820152600061568d60608301600681527f7265776172640000000000000000000000000000000000000000000000000000602082015260400190565b90508260408301529392505050565b600080858511156156ac57600080fd5b838611156156b957600080fd5b5050820193919092039150565b7fffffffff0000000000000000000000000000000000000000000000000000000081358181169160048510156157065780818660040360031b1b83161692505b505092915050565b73ffffffffffffffffffffffffffffffffffffffff8416815260406020820152816040820152818360608301376000818301606090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010192915050565b6000825161578a818460208701615087565b9190910192915050565b600080604083850312156157a757600080fd5b6157b0836155ad565b9150602083015163ffffffff811681146157c957600080fd5b80915050925092905056fea2646970667358221220c3821dcc255f5d3b772f13b4c4d78fd5b90a877e76e783b649f678db265cad7664736f6c63430008180033