VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0x17E148…D525
Summary
Transactions
Transfers
Address
0x17E148814f5285d151444512f1cE7937d18cD525
VET
0.00
VET
VTHO
0.00
VTHO
Master
0xa680452A8511E05613bfbBDE1F26f1F181C25c1F
Deployer
0xa680452A8511E05613bfbBDE1F26f1F181C25c1F
Code
0x6080604052600436106103975760003560e01c80636be4097c116101dc578063bf0e632911610102578063e2eb41ff116100a0578063ebeedb601161006f578063ebeedb6014610c09578063f5b541a614610c44578063f72c0d8b14610c78578063f7cb789a14610cac57600080fd5b8063e2eb41ff14610ae3578063e63ab1e914610b55578063e63b643314610b89578063eab05af714610bd957600080fd5b8063c9438876116100dc578063c943887614610a77578063caa02e0814610a97578063cdbdb31a14610aad578063d547741f14610ac357600080fd5b8063bf0e632914610a07578063c3dfdae614610a1d578063c65678c714610a4a57600080fd5b80639dfecdcc1161017a578063b1b7354811610149578063b1b7354814610978578063b3732dd61461098e578063b64ce58d146109bb578063b72ef310146109d357600080fd5b80639dfecdcc146108f0578063a217fddf14610905578063abd70aa21461091a578063ad3cb1cc1461092f57600080fd5b80637f8fab34116101b65780637f8fab34146108275780638456cb591461083c57806391d14854146108515780639839eafd146108c357600080fd5b80636be4097c146107d9578063745d6adf146107ef578063757082f41461080557600080fd5b806336c92c3f116102c15780634f1ef2861161025f5780635c975abb1161022e5780635c975abb14610732578063643d8490146107695780636939864b146107965780636ab55fd9146107bd57600080fd5b80634f1ef286146106ad57806352d1902d146106c0578063531d2445146106d55780635c83a63b1461071057600080fd5b806347e405531161029b57806347e405531461062b57806349ab2ba01461064057806349ec08d4146106785780634d040b251461068d57600080fd5b806336c92c3f146105d65780633f4ba83a146105f657806340c3befe1461060b57600080fd5b806314558fab116103395780632f2ff15d116103085780632f2ff15d146105565780633356295e14610576578063358764761461059657806336568abe146105b657600080fd5b806314558fab146104bb57806315981650146104d1578063248a9ca3146104f157806326d541b01461054057600080fd5b806305db2f411161037557806305db2f411461042d5780630fb116d21461046f5780631209b1f61461048f578063127f0b3f146104a557600080fd5b806301ffc9a71461039c57806302e086ce146103d157806303e3cd6a146103e8575b600080fd5b3480156103a857600080fd5b506103bc6103b7366004613f61565b610cc2565b60405190151581526020015b60405180910390f35b3480156103dd57600080fd5b506103e6610d5b565b005b3480156103f457600080fd5b50610408610403366004613fa3565b610dcb565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016103c8565b34801561043957600080fd5b506104617f6c0757dc3e6b28b2580c03fd9e96c274acf4f99d91fbec9b418fa1d70604ff1c81565b6040519081526020016103c8565b34801561047b57600080fd5b506103e661048a366004613fc5565b610e10565b34801561049b57600080fd5b50610461600a5481565b3480156104b157600080fd5b5061046160065481565b3480156104c757600080fd5b5061046160125481565b3480156104dd57600080fd5b506103e66104ec366004613fc5565b611226565b3480156104fd57600080fd5b5061046161050c366004613fc5565b60009081527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800602052604090206001015490565b34801561054c57600080fd5b5061046160055481565b34801561056257600080fd5b506103e6610571366004614007565b611269565b34801561058257600080fd5b50610461610591366004613fc5565b6112b3565b3480156105a257600080fd5b506103e66105b1366004614033565b6112d4565b3480156105c257600080fd5b506103e66105d1366004614007565b6116e8565b3480156105e257600080fd5b506103e66105f1366004613fc5565b611746565b34801561060257600080fd5b506103e6611800565b34801561061757600080fd5b50610461610626366004613fa3565b611832565b34801561063757600080fd5b506103e6611863565b34801561064c57600080fd5b5061046161065b366004614007565b600260209081526000928352604080842090915290825290205481565b34801561068457600080fd5b506104616119be565b34801561069957600080fd5b506103e66106a83660046141ca565b611a45565b6103e66106bb366004614211565b611b5e565b3480156106cc57600080fd5b50610461611b7d565b3480156106e157600080fd5b506103bc6106f0366004614007565b601960209081526000928352604080842090915290825290205460ff1681565b34801561071c57600080fd5b50610725611bac565b6040516103c89190614327565b34801561073e57600080fd5b507fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033005460ff166103bc565b34801561077557600080fd5b50610461610784366004613fc5565b601a6020526000908152604090205481565b3480156107a257600080fd5b506007546107b09060ff1681565b6040516103c89190614369565b3480156107c957600080fd5b50610461670de0b6b3a764000081565b3480156107e557600080fd5b5061046160135481565b3480156107fb57600080fd5b5061046160115481565b34801561081157600080fd5b5061081a611c1e565b6040516103c891906143db565b34801561083357600080fd5b5061081a611c78565b34801561084857600080fd5b506103e6611cd1565b34801561085d57600080fd5b506103bc61086c366004614007565b60009182527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b3480156108cf57600080fd5b506108e36108de366004613fc5565b611d03565b6040516103c8919061445c565b3480156108fc57600080fd5b506103e6611de1565b34801561091157600080fd5b50610461600081565b34801561092657600080fd5b50610461611ee3565b34801561093b57600080fd5b506108e36040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b34801561098457600080fd5b5061046160035481565b34801561099a57600080fd5b506109ae6109a9366004613fc5565b611f7b565b6040516103c8919061446f565b3480156109c757600080fd5b5061046163630272a081565b3480156109df57600080fd5b506104617ff7e61c4e74c42df4eeae815b78ea28052584091f2e136a00ad566b99fd70583981565b348015610a1357600080fd5b5061046160105481565b348015610a2957600080fd5b506009546104089073ffffffffffffffffffffffffffffffffffffffff1681565b348015610a5657600080fd5b50610461610a65366004613fc5565b60186020526000908152604090205481565b348015610a8357600080fd5b506103e6610a92366004614532565b61219b565b348015610aa357600080fd5b50610461600b5481565b348015610ab957600080fd5b5061046160045481565b348015610acf57600080fd5b506103e6610ade366004614007565b6123ed565b348015610aef57600080fd5b50610b2d610afe366004614615565b600060208190529081526040902080546001820154600283015460038401546004909401549293919290919085565b604080519586526020860194909452928401919091526060830152608082015260a0016103c8565b348015610b6157600080fd5b506104617f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b348015610b9557600080fd5b50610461610ba4366004614007565b600091825260026020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205490565b348015610be557600080fd5b50610bf9610bf4366004613fc5565b612431565b6040516103c89493929190614630565b348015610c1557600080fd5b506103bc610c24366004614007565b601460209081526000928352604080842090915290825290205460ff1681565b348015610c5057600080fd5b506104617f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92981565b348015610c8457600080fd5b506104617f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e381565b348015610cb857600080fd5b5061046160085481565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b000000000000000000000000000000000000000000000000000000001480610d5557507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929610d85816124ff565b6011544211610dc0576040517fa02b848400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610dc8611863565b50565b60166020528160005260406000208181548110610de757600080fd5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff169150829050565b610e18612509565b610e20612567565b600060075460ff166002811115610e3957610e3961433a565b14610e70576040517f57a990f400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600003610eaa576040517f2c5211c600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6011544210610ee5576040517f6b5fd31b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600081600a54610ef591906146a7565b600954909150610f1d9073ffffffffffffffffffffffffffffffffffffffff163330846125e8565b600654600090815260026020908152604080832033845290915281208054849290610f499084906146be565b9091555050600654600090815260026020908152604080832083805290915281208054849290610f7a9084906146be565b9091555050600654600090815260196020908152604080832033845290915290205460ff1661100657600680546000908152601960209081526040808320338452825280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905592548252601a9052908120805491611000836146d1565b91905055505b3360009081526020819052604081204281556002810180549192859261102d9084906146be565b9091555050805415611040576000611043565b60015b60ff1681600301600082825461105991906146be565b90915550600090505b838110156111e25760405180608001604052803373ffffffffffffffffffffffffffffffffffffffff16815260200160035481526020016110a4600354612671565b8152600160209182018190526003546000908152818352604090819020845181547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9091161781559284015191830191909155820151600282019061111f90826147ac565b5060609190910151600391820180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169115159190911790556006549054600081815260016020526040908190208054915173ffffffffffffffffffffffffffffffffffffffff90921692917ff8ac93904a843f20d723243638fb08f7c4d20366ca65fb4a19699011e3e75def916111bd91600290910190614961565b60405180910390a4600380549060006111d5836146d1565b9091555050600101611062565b5082601260008282546111f591906146be565b909155505060017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005550610dc89050565b7ff7e61c4e74c42df4eeae815b78ea28052584091f2e136a00ad566b99fd705839611250816124ff565b611262670de0b6b3a7640000836146a7565b600a555050565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b62680060205260409020600101546112a3816124ff565b6112ad8383612b6e565b50505050565b600c81815481106112c357600080fd5b600091825260209091200154905081565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff1660008115801561131f5750825b905060008267ffffffffffffffff16600114801561133c5750303b155b90508115801561134a575080155b15611381576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000016600117855583156113e25784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b73ffffffffffffffffffffffffffffffffffffffff861661142f576040517f1eb00b0600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611437612c8f565b61143f612c97565b611447612ca7565b61144f612c8f565b600980547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff881617905561149a60008d612b6e565b506114c57f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8c612b6e565b506114f07f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9298b612b6e565b5061151b7f6c0757dc3e6b28b2580c03fd9e96c274acf4f99d91fbec9b418fa1d70604ff1c8a612b6e565b506115467ff7e61c4e74c42df4eeae815b78ea28052584091f2e136a00ad566b99fd70583989612b6e565b506115717f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e388612b6e565b50600780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556115b0670de0b6b3a7640000600a6146a7565b600a9081556003600b819055604080516060810182526032815260146020820152908101929092526115e491600c91613dec565b506000601081905560115561070860085560405161164090429044903090602001928352602083019190915260601b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016604082015260540190565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052805160209091012060155583156116da5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81163314611737576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6117418282612cb7565b505050565b7ff7e61c4e74c42df4eeae815b78ea28052584091f2e136a00ad566b99fd705839611770816124ff565b600160075460ff1660028111156117895761178961433a565b146117c0576040517fc8392ee000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b816000036117fa576040517f2c5211c600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50600855565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a61182a816124ff565b610dc8612d95565b6017602052816000526040600020818154811061184e57600080fd5b90600052602060002001600091509150505481565b7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92961188d816124ff565b600d546000036118c9576040517f51570cba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600354156118d9576118d9612e2c565b600680549060006118e9836146d1565b9091555050600780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055426010819055600854611928916146be565b60115560006003556006546040805142602082015244918101919091526060810191909152608001604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001815290829052805160209182012060155560065482527fb250c542ab4a9cd3c62e64f9ed76631d0e2fc336bf269fb392767bc5f8964bc391015b60405180910390a150565b6000806119c9611ee3565b600f549091506000036119db57919050565b6000805b600f54811015611a1d57600f8054829081106119fd576119fd614974565b906000526020600020015482611a1391906146be565b91506001016119df565b506064611a2a82826149a3565b611a3490846146a7565b611a3e91906149e5565b9250505090565b7ff7e61c4e74c42df4eeae815b78ea28052584091f2e136a00ad566b99fd705839611a6f816124ff565b82825114611aa9576040517fa24a13a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611ab5600c6000613e3c565b8267ffffffffffffffff811115611ace57611ace6140b9565b604051908082528060200260200182016040528015611af7578160200160208202803683370190505b508051611b0c91600c91602090910190613e5a565b50600b83905560005b838110156112ad57828181518110611b2f57611b2f614974565b6020026020010151600c8281548110611b4a57611b4a614974565b600091825260209091200155600101611b15565b611b66613471565b611b6f82613575565b611b79828261359f565b5050565b6000611b876136d8565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b6060600d600101805480602002602001604051908101604052809291908181526020018280548015611c1457602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311611be9575b5050505050905090565b6060600d600201805480602002602001604051908101604052809291908181526020018280548015611c1457602002820191906000526020600020905b815481526020019060010190808311611c5b575050505050905090565b6060600d600001805480602002602001604051908101604052809291908181526020018280548015611c145760200282019190600052602060002090815481526020019060010190808311611c5b575050505050905090565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a611cfb816124ff565b610dc8613747565b60606003548210611d40576040517faeaddff100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008281526001602052604090206002018054611d5c90614709565b80601f0160208091040260200160405190810160405280929190818152602001828054611d8890614709565b8015611dd55780601f10611daa57610100808354040283529160200191611dd5565b820191906000526020600020905b815481529060010190602001808311611db857829003601f168201915b50505050509050919050565b7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929611e0b816124ff565b611e13612509565b600160075460ff166002811115611e2c57611e2c61433a565b14611e63576040517f57a990f400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055600854611e9890426146be565b60115560068054906000611eab836146d1565b91905055507fb250c542ab4a9cd3c62e64f9ed76631d0e2fc336bf269fb392767bc5f8964bc36006546040516119b391815260200190565b6009546040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015260009173ffffffffffffffffffffffffffffffffffffffff16906370a0823190602401602060405180830381865afa158015611f52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f7691906149f9565b905090565b611fad6040518060a0016040528060008152602001600081526020016000815260200160608152602001606081525090565b600082118015611fbf57506006548211155b61202a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f496e76616c696420726f756e64206e756d62657200000000000000000000000060448201526064015b60405180910390fd5b60006006548314612054576000838152600260209081526040808320838052909152902054612058565b6003545b6000848152601660209081526040808320805482518185028101850190935280835294955092939092918301828280156120c857602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff16815260019091019060200180831161209d575b5050505050905060006017600086815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561212e57602002820191906000526020600020905b81548152602001906001019080831161211a575b50505050509050600060065486146121545760008681526018602052604090205461215c565b61215c6119be565b6040805160a0810182529586526000978852601a6020908152978190205497860197909752958401959095526060830191909152608082015292915050565b7f6c0757dc3e6b28b2580c03fd9e96c274acf4f99d91fbec9b418fa1d70604ff1c6121c5816124ff565b600c54600003612201576040517fad7f39a700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815183511461223c576040517ffbdda13100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000805b85518110156122785785818151811061225b5761225b614974565b60200260200101518261226e91906146be565b9150600101612240565b5060005b83518110156123335783818151811061229757612297614974565b6020026020010151826122aa91906146be565b9150600073ffffffffffffffffffffffffffffffffffffffff168582815181106122d6576122d6614974565b602002602001015173ffffffffffffffffffffffffffffffffffffffff160361232b576040517f768dc59800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60010161227c565b508060641461236e576040517fa84f246700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845161238190600d906020880190613e5a565b50835161239590600e906020870190613e95565b5082516123a990600f906020860190613e5a565b507f43b6f68178f4abfb9b9c45c11e297d50040b09bae101ae7c4eb59a1ef7fe7232600c85856040516123de93929190614a12565b60405180910390a15050505050565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020526040902060010154612427816124ff565b6112ad8383612cb7565b600160208190526000918252604090912080549181015460028201805473ffffffffffffffffffffffffffffffffffffffff9094169391929161247390614709565b80601f016020809104026020016040519081016040528092919081815260200182805461249f90614709565b80156124ec5780601f106124c1576101008083540402835291602001916124ec565b820191906000526020600020905b8154815290600101906020018083116124cf57829003601f168201915b5050506003909301549192505060ff1684565b610dc881336137c0565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033005460ff1615612565576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b7f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0080547ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016125e2576040517f3ee5aeb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60029055565b60405173ffffffffffffffffffffffffffffffffffffffff84811660248301528381166044830152606482018390526112ad9186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050613867565b6060600060155433846040516020016126c29392919092835260609190911b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166020830152603482015260540190565b6040516020818303038152906040528051906020012060001c90506126e5613f0f565b6126ed613f2d565b60005b60068160ff16101561282d57838160405160200161273d92919091825260f81b7fff0000000000000000000000000000000000000000000000000000000000000016602082015260210190565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905280516020909101209350600080612783606487614a7e565b90505b838160ff166064811061279b5761279b614974565b602002015180156127af575060648260ff16105b156127df5760646127c1826001614a92565b6127cb9190614aab565b9050816127d781614acd565b925050612786565b6001848260ff16606481106127f6576127f6614974565b91151560209092020152808560ff85166006811061281657612816614974565b60ff909216602092909202015250506001016126f0565b506040805160118082528183019092526000916020820181803683370190505090506000805b60068160ff161015612a825760ff8116156128d8577f2c0000000000000000000000000000000000000000000000000000000000000083838151811061289b5761289b614974565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350816128d4816146d1565b9250505b600a858260ff16600681106128ef576128ef614974565b602002015160ff16101561297857848160ff166006811061291257612912614974565b6020020151612922906030614a92565b60f81b83838151811061293757612937614974565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535081612970816146d1565b925050612a7a565b600a858260ff166006811061298f5761298f614974565b602002015161299e9190614aec565b6129a9906030614a92565b60f81b8383815181106129be576129be614974565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a858260ff1660068110612a0457612a04614974565b6020020151612a139190614aab565b612a1e906030614a92565b60f81b83612a2d8460016146be565b81518110612a3d57612a3d614974565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350612a776002836146be565b91505b600101612853565b5060008167ffffffffffffffff811115612a9e57612a9e6140b9565b6040519080825280601f01601f191660200182016040528015612ac8576020820181803683370190505b50905060005b82811015612b3c57838181518110612ae857612ae8614974565b602001015160f81c60f81b828281518110612b0557612b05614974565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600101612ace565b50979650505050505050565b60017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0055565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020818152604080842073ffffffffffffffffffffffffffffffffffffffff8616855290915282205460ff16612c855760008481526020828152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055612c213390565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610d55565b6000915050610d55565b6125656138fd565b612c9f6138fd565b612565613964565b612caf6138fd565b61256561396c565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020818152604080842073ffffffffffffffffffffffffffffffffffffffff8616855290915282205460ff1615612c855760008481526020828152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610d55565b612d9d6139bd565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f0330080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001681557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016119b3565b600354600003612e68576040517fdf9c67b500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660021790556000612e9d611ee3565b9050612ea76119be565b600654600090815260186020526040812091909155600b5460035410612ecf57600b54612ed3565b6003545b905060008167ffffffffffffffff811115612ef057612ef06140b9565b604051908082528060200260200182016040528015612f19578160200160208202803683370190505b5090506000600354600143612f2e91906149a3565b604080519140602083015242908201526060016040516020818303038152906040528051906020012060001c612f649190614a7e565b90508082600081518110612f7a57612f7a614974565b602090810291909101015260015b8381101561305657600081600354612fa091906149a3565b905080612fae6001436149a3565b60408051914060208301524290820152606081018490526080016040516020818303038152906040528051906020012060001c612feb9190614a7e565b925060005b8281101561302e5784818151811061300a5761300a614974565b602002602001015184106130265783613022816146d1565b9450505b600101612ff0565b508284838151811061304257613042614974565b602090810291909101015250600101612f88565b5060008367ffffffffffffffff811115613072576130726140b9565b60405190808252806020026020018201604052801561309b578160200160208202803683370190505b50905060008467ffffffffffffffff8111156130b9576130b96140b9565b6040519080825280602002602001820160405280156130e2578160200160208202803683370190505b5090506000805b8681101561312557600d80548290811061310557613105614974565b90600052602060002001548261311b91906146be565b91506001016130e9565b5060005b868110156133445760006001600088848151811061314957613149614974565b60200260200101518152602001908152602001600020905060006064600d600001848154811061317b5761317b614974565b90600052602060002001548b61319191906146a7565b61319b91906149e5565b8254875191925073ffffffffffffffffffffffffffffffffffffffff16908790859081106131cb576131cb614974565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508085848151811061321857613218614974565b6020908102919091010152815460095461324c9173ffffffffffffffffffffffffffffffffffffffff918216911683613a18565b815473ffffffffffffffffffffffffffffffffffffffff16600090815260208190526040812060010180548392906132859084906146be565b9091555050815473ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604081206004018054916132bf836146d1565b90915550508154885173ffffffffffffffffffffffffffffffffffffffff909116908990859081106132f3576132f3614974565b60200260200101516006547fb067ea96f34760ae71097c6fa7fa518b66c3d1adea695f4ca7df0f789a03b7a18486600201604051613332929190614b0e565b60405180910390a45050600101613129565b506006546000908152601660209081526040909120845161336792860190613e95565b506006546000908152601760209081526040909120835161338a92850190613e5a565b506006547f7b1f053cd58d47f5547a584122190bcedfb219e84ecf8b22e0a6160cb527a30884846040516133bf929190614b2f565b60405180910390a260005b600e548110156134675760006064600d60020183815481106133ee576133ee614974565b90600052602060002001548a61340491906146a7565b61340e91906149e5565b9050801561345e5761345e600d600101838154811061342f5761342f614974565b60009182526020909120015460095473ffffffffffffffffffffffffffffffffffffffff908116911683613a18565b506001016133ca565b5050505050505050565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000017e148814f5285d151444512f1ce7937d18cd52516148061353e57507f00000000000000000000000017e148814f5285d151444512f1ce7937d18cd52573ffffffffffffffffffffffffffffffffffffffff166135257f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614155b15612565576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e3611b79816124ff565b8173ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613624575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201909252613621918101906149f9565b60015b613672576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83166004820152602401612021565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc81146136ce576040517faa1d49a400000000000000000000000000000000000000000000000000000000815260048101829052602401612021565b6117418383613a56565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000017e148814f5285d151444512f1ce7937d18cd5251614612565576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61374f612509565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f0330080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011781557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833612e07565b60008281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16611b79576040517fe2517d3f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015260248101839052604401612021565b600061388973ffffffffffffffffffffffffffffffffffffffff841683613ab9565b905080516000141580156138ae5750808060200190518101906138ac9190614b54565b155b15611741576040517f5274afe700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84166004820152602401612021565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff16612565576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612b486138fd565b6139746138fd565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f0330080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033005460ff16612565576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405173ffffffffffffffffffffffffffffffffffffffff83811660248301526044820183905261174191859182169063a9059cbb9060640161262a565b613a5f82613ace565b60405173ffffffffffffffffffffffffffffffffffffffff8316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115613ab1576117418282613b9d565b611b79613c20565b6060613ac783836000613c58565b9392505050565b8073ffffffffffffffffffffffffffffffffffffffff163b600003613b37576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82166004820152602401612021565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60606000808473ffffffffffffffffffffffffffffffffffffffff1684604051613bc79190614b76565b600060405180830381855af49150503d8060008114613c02576040519150601f19603f3d011682016040523d82523d6000602084013e613c07565b606091505b5091509150613c17858383613d1b565b95945050505050565b3415612565576040517fb398979f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606081471015613c96576040517fcd786059000000000000000000000000000000000000000000000000000000008152306004820152602401612021565b6000808573ffffffffffffffffffffffffffffffffffffffff168486604051613cbf9190614b76565b60006040518083038185875af1925050503d8060008114613cfc576040519150601f19603f3d011682016040523d82523d6000602084013e613d01565b606091505b5091509150613d11868383613d1b565b9695505050505050565b606082613d3057613d2b82613daa565b613ac7565b8151158015613d54575073ffffffffffffffffffffffffffffffffffffffff84163b155b15613da3576040517f9996b31500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602401612021565b5080613ac7565b805115613dba5780518082602001fd5b6040517f1425ea4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828054828255906000526020600020908101928215613e2c579160200282015b82811115613e2c578251829060ff16905591602001919060010190613e0c565b50613e38929150613f4c565b5090565b5080546000825590600052602060002090810190610dc89190613f4c565b828054828255906000526020600020908101928215613e2c579160200282015b82811115613e2c578251825591602001919060010190613e7a565b828054828255906000526020600020908101928215613e2c579160200282015b82811115613e2c57825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909116178255602090920191600190910190613eb5565b6040518060c001604052806006906020820280368337509192915050565b60405180610c8001604052806064906020820280368337509192915050565b5b80821115613e385760008155600101613f4d565b600060208284031215613f7357600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114613ac757600080fd5b60008060408385031215613fb657600080fd5b50508035926020909101359150565b600060208284031215613fd757600080fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461400257600080fd5b919050565b6000806040838503121561401a57600080fd5b8235915061402a60208401613fde565b90509250929050565b600080600080600080600060e0888a03121561404e57600080fd5b61405788613fde565b965061406560208901613fde565b955061407360408901613fde565b945061408160608901613fde565b935061408f60808901613fde565b925061409d60a08901613fde565b91506140ab60c08901613fde565b905092959891949750929550565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561412f5761412f6140b9565b604052919050565b600067ffffffffffffffff821115614151576141516140b9565b5060051b60200190565b600082601f83011261416c57600080fd5b8135602061418161417c83614137565b6140e8565b8083825260208201915060208460051b8701019350868411156141a357600080fd5b602086015b848110156141bf57803583529183019183016141a8565b509695505050505050565b600080604083850312156141dd57600080fd5b82359150602083013567ffffffffffffffff8111156141fb57600080fd5b6142078582860161415b565b9150509250929050565b6000806040838503121561422457600080fd5b61422d83613fde565b915060208084013567ffffffffffffffff8082111561424b57600080fd5b818601915086601f83011261425f57600080fd5b813581811115614271576142716140b9565b6142a1847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116016140e8565b915080825287848285010111156142b757600080fd5b80848401858401376000848284010152508093505050509250929050565b60008151808452602080850194506020840160005b8381101561431c57815173ffffffffffffffffffffffffffffffffffffffff16875295820195908201906001016142ea565b509495945050505050565b602081526000613ac760208301846142d5565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60208101600383106143a4577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91905290565b60008151808452602080850194506020840160005b8381101561431c578151875295820195908201906001016143bf565b602081526000613ac760208301846143aa565b60005b838110156144095781810151838201526020016143f1565b50506000910152565b6000815180845261442a8160208601602086016143ee565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000613ac76020830184614412565b6000602080835260c0830184518285015281850151604085015260408501516060850152606085015160a0608086015281815180845260e0870191508483019350600092505b808310156144eb57835173ffffffffffffffffffffffffffffffffffffffff1682529284019260019290920191908401906144b5565b50608087015193507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08682030160a087015261452781856143aa565b979650505050505050565b60008060006060848603121561454757600080fd5b833567ffffffffffffffff8082111561455f57600080fd5b61456b8783880161415b565b945060209150818601358181111561458257600080fd5b8601601f8101881361459357600080fd5b80356145a161417c82614137565b81815260059190911b8201840190848101908a8311156145c057600080fd5b928501925b828410156145e5576145d684613fde565b825292850192908501906145c5565b965050505060408601359150808211156145fe57600080fd5b5061460b8682870161415b565b9150509250925092565b60006020828403121561462757600080fd5b613ac782613fde565b73ffffffffffffffffffffffffffffffffffffffff851681528360208201526080604082015260006146656080830185614412565b9050821515606083015295945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082028115828204841417610d5557610d55614678565b80820180821115610d5557610d55614678565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361470257614702614678565b5060010190565b600181811c9082168061471d57607f821691505b602082108103614756577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f821115611741576000816000526020600020601f850160051c810160208610156147855750805b601f850160051c820191505b818110156147a457828155600101614791565b505050505050565b815167ffffffffffffffff8111156147c6576147c66140b9565b6147da816147d48454614709565b8461475c565b602080601f83116001811461482d57600084156147f75750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556147a4565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561487a5788860151825594840194600190910190840161485b565b50858210156148b657878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600081546148d381614709565b8085526020600183811680156148f0576001811461492857614956565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008516838901528284151560051b8901019550614956565b866000528260002060005b8581101561494e5781548a8201860152908301908401614933565b890184019650505b505050505092915050565b602081526000613ac760208301846148c6565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b81810381811115610d5557610d55614678565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826149f4576149f46149b6565b500490565b600060208284031215614a0b57600080fd5b5051919050565b600060608201606083528086548083526080850191508760005260209250602060002060005b82811015614a5457815484529284019260019182019101614a38565b5050508381036020850152614a6981876142d5565b9150508281036040840152613d1181856143aa565b600082614a8d57614a8d6149b6565b500690565b60ff8181168382160190811115610d5557610d55614678565b600060ff831680614abe57614abe6149b6565b8060ff84160691505092915050565b600060ff821660ff8103614ae357614ae3614678565b60010192915050565b600060ff831680614aff57614aff6149b6565b8060ff84160491505092915050565b828152604060208201526000614b2760408301846148c6565b949350505050565b604081526000614b4260408301856142d5565b8281036020840152613c1781856143aa565b600060208284031215614b6657600080fd5b81518015158114613ac757600080fd5b60008251614b888184602087016143ee565b919091019291505056fea2646970667358221220295af7e2dc8a0f46e78edd7c0bb201740b3ec6dda72aff82bfef105a2386da4f64736f6c63430008180033