VeChain
Explorer
Mainnet
Search
Networks
Main
Test
Contract
0x1Cd00C…f197
Summary
Transactions
Transfers
Address
0x1Cd00CbAaD177De3dE1f188e2Eb1072AC6dff197
VET
52.00
VET
VTHO
13.10
VTHO
Master
0xE52fc0e8538e4eCb8718Aa0dfEcb9b6D066746d6
Deployer
0xE52fc0e8538e4eCb8718Aa0dfEcb9b6D066746d6
Code
0x60806040526004361061021a5760003560e01c80636352211e11610123578063a22cb465116100ab578063ccfa70f91161006f578063ccfa70f9146107f3578063d547741f1461081e578063df1ebffc14610847578063e985e9c514610870578063f5b541a6146108ad5761021a565b8063a22cb46514610712578063a28835b61461073b578063b30497c214610764578063b88d4fde1461078d578063c87b56dd146107b65761021a565b80638c7ea24b116100f25780638c7ea24b1461062d57806391d148541461065657806395d89b41146106935780639e00d11a146106be578063a217fddf146106e75761021a565b80636352211e14610561578063692cbb2f1461059e57806370a08231146105c75780638ad433ac146106045761021a565b8063248a9ca3116101a657806332cb6b0c1161017557806332cb6b0c1461049f578063354e0498146104ca57806336568abe146104e657806342842e0e1461050f57806342966c68146105385761021a565b8063248a9ca3146103be5780632a55205a146103fb5780632f2ff15d146104395780632f745c59146104625761021a565b8063095ea7b3116101ed578063095ea7b3146102ed57806309ea0e5d1461031657806316c61ccc1461033f57806318160ddd1461036a57806323b872dd146103955761021a565b806301ffc9a71461021f57806302329a291461025c57806306fdde0314610285578063081812fc146102b0575b600080fd5b34801561022b57600080fd5b50610246600480360381019061024191906140f1565b6108d8565b6040516102539190614a0c565b60405180910390f35b34801561026857600080fd5b50610283600480360381019061027e919061403a565b610a22565b005b34801561029157600080fd5b5061029a610aa8565b6040516102a79190614a42565b60405180910390f35b3480156102bc57600080fd5b506102d760048036038101906102d291906141af565b610b36565b6040516102e4919061497c565b60405180910390f35b3480156102f957600080fd5b50610314600480360381019061030f9190613ffe565b610bbb565b005b34801561032257600080fd5b5061033d60048036038101906103389190614143565b610de0565b005b34801561034b57600080fd5b50610354610eb4565b6040516103619190614a0c565b60405180910390f35b34801561037657600080fd5b5061037f610ec7565b60405161038c9190614e1b565b60405180910390f35b3480156103a157600080fd5b506103bc60048036038101906103b79190613ef8565b610ed8565b005b3480156103ca57600080fd5b506103e560048036038101906103e0919061408c565b610f38565b6040516103f29190614a27565b60405180910390f35b34801561040757600080fd5b50610422600480360381019061041d91906142a8565b610f57565b6040516104309291906149e3565b60405180910390f35b34801561044557600080fd5b50610460600480360381019061045b91906140b5565b610fa3565b005b34801561046e57600080fd5b5061048960048036038101906104849190613ffe565b610fcc565b6040516104969190614e1b565b60405180910390f35b3480156104ab57600080fd5b506104b4611027565b6040516104c19190614e1b565b60405180910390f35b6104e460048036038101906104df9190614201565b61102d565b005b3480156104f257600080fd5b5061050d600480360381019061050891906140b5565b6113d8565b005b34801561051b57600080fd5b5061053660048036038101906105319190613ef8565b61145b565b005b34801561054457600080fd5b5061055f600480360381019061055a91906141af565b61147b565b005b34801561056d57600080fd5b50610588600480360381019061058391906141af565b6114d7565b604051610595919061497c565b60405180910390f35b3480156105aa57600080fd5b506105c560048036038101906105c091906141af565b611569565b005b3480156105d357600080fd5b506105ee60048036038101906105e99190613e6a565b6115ef565b6040516105fb9190614e1b565b60405180910390f35b34801561061057600080fd5b5061062b600480360381019061062691906141af565b6116ae565b005b34801561063957600080fd5b50610654600480360381019061064f9190613ffe565b6118a8565b005b34801561066257600080fd5b5061067d600480360381019061067891906140b5565b61195d565b60405161068a9190614a0c565b60405180910390f35b34801561069f57600080fd5b506106a86119c7565b6040516106b59190614a42565b60405180910390f35b3480156106ca57600080fd5b506106e560048036038101906106e09190613e6a565b611a55565b005b3480156106f357600080fd5b506106fc611b43565b6040516107099190614a27565b60405180910390f35b34801561071e57600080fd5b5061073960048036038101906107349190613fc2565b611b4a565b005b34801561074757600080fd5b50610762600480360381019061075d9190613e6a565b611ccb565b005b34801561077057600080fd5b5061078b6004803603810190610786919061403a565b611eab565b005b34801561079957600080fd5b506107b460048036038101906107af9190613f47565b611f31565b005b3480156107c257600080fd5b506107dd60048036038101906107d891906141af565b611f93565b6040516107ea9190614a42565b60405180910390f35b3480156107ff57600080fd5b5061080861203e565b6040516108159190614e1b565b60405180910390f35b34801561082a57600080fd5b50610845600480360381019061084091906140b5565b61205c565b005b34801561085357600080fd5b5061086e60048036038101906108699190613fc2565b612085565b005b34801561087c57600080fd5b5061089760048036038101906108929190613ebc565b612149565b6040516108a49190614a0c565b60405180910390f35b3480156108b957600080fd5b506108c26121dd565b6040516108cf9190614a27565b60405180910390f35b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806109a357507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610a0b57507f2a55205a000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610a1b5750610a1a82612201565b5b9050919050565b610a4c7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9293361195d565b610a8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8290614b7b565b60405180910390fd5b80600460006101000a81548160ff02191690831515021790555050565b60018054610ab590615152565b80601f0160208091040260200160405190810160405280929190818152602001828054610ae190615152565b8015610b2e5780601f10610b0357610100808354040283529160200191610b2e565b820191906000526020600020905b815481529060010190602001808311610b1157829003601f168201915b505050505081565b6000610b418261227b565b610b80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7790614cdb565b60405180910390fd5b6012600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60003073ffffffffffffffffffffffffffffffffffffffff16636352211e836040518263ffffffff1660e01b8152600401610bf69190614e1b565b60206040518083038186803b158015610c0e57600080fd5b505afa158015610c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c469190613e93565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610cb7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cae90614cbb565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610cd6612298565b73ffffffffffffffffffffffffffffffffffffffff161480610d055750610d0481610cff612298565b612149565b5b610d44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3b90614b5b565b60405180910390fd5b601460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610dd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc890614b3b565b60405180910390fd5b610ddb83836122a0565b505050565b610e0a7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9293361195d565b610e49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4090614b7b565b60405180910390fd5b8160089080519060200190610e5f929190613ba4565b508060099080519060200190610e76929190613ba4565b507f37fbfdde716706a10c6cb12c1bd0e2d884e1061d62348974e503ddcf798be19a8282604051610ea8929190614a64565b60405180910390a15050565b600460009054906101000a900460ff1681565b6000610ed3600e6123d9565b905090565b610ee9610ee3612298565b826123ee565b610f28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1f90614adb565b60405180910390fd5b610f3383838361254c565b505050565b6000806000838152602001908152602001600020600101549050919050565b600080600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16612710600b5485610f8e9190614fc8565b610f989190614f97565b915091509250929050565b610fac82610f38565b610fbd81610fb8612298565b612833565b610fc783836128d0565b505050565b600061101f82601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206129b090919063ffffffff16565b905092915050565b60035481565b600354600160055461103f9190614f41565b1115611080576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107790614b9b565b60405180910390fd5b600460009054906101000a900460ff16156110d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c790614b1b565b60405180910390fd5b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614611160576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115790614abb565b60405180910390fd5b60065434146111a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119b90614d1b565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16636352211e85600081518110611211577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516040518263ffffffff1660e01b81526004016112359190614e1b565b60206040518083038186803b15801561124d57600080fd5b505afa158015611261573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112859190613e93565b73ffffffffffffffffffffffffffffffffffffffff16146112db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d290614d9b565b60405180910390fd5b600d60149054906101000a900460ff161561139d578373ffffffffffffffffffffffffffffffffffffffff166342966c6884600081518110611346577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516040518263ffffffff1660e01b815260040161136a9190614e1b565b600060405180830381600087803b15801561138457600080fd5b505af1158015611398573d6000803e3d6000fd5b505050505b60006113aa6005546129ca565b90506113b63382612b46565b6001600560008282546113c99190614f41565b92505081905550505050505050565b6113e0612298565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461144d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144490614dfb565b60405180910390fd5b6114578282612b64565b5050565b61147683838360405180602001604052806000815250611f31565b505050565b61148c611486612298565b826123ee565b6114cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c290614d7b565b60405180910390fd5b6114d481612c45565b50565b6000806114ee83600e612db090919063ffffffff16565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611560576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155790614c5b565b60405180910390fd5b80915050919050565b6115937f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9293361195d565b6115d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c990614c7b565b60405180910390fd5b670de0b6b3a7640000816115e69190614fc8565b60068190555050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611660576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161165790614cfb565b60405180910390fd5b6116a7601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020612dcd565b9050919050565b6116d87f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9293361195d565b611717576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161170e90614c7b565b60405180910390fd5b600354816005546117289190614f41565b1115611769576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176090614b9b565b60405180910390fd5b60005b818110156118a4576001600560008282546117879190614f41565b9250508190555060006005546003546117a09190615022565b90506000816005546117b2919061523e565b9050600080600760008481526020019081526020016000205414156117d757816117ec565b60076000838152602001908152602001600020545b90506000600760006001866118019190615022565b8152602001908152602001600020541461183a57600760006001856118269190615022565b815260200190815260200160002054611848565b6001836118479190615022565b5b60076000848152602001908152602001600020819055506000600760006001866118729190615022565b81526020019081526020016000208190555061188e3382612b46565b505050808061189c906151b5565b91505061176c565b5050565b6118d27f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9293361195d565b611911576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190890614b7b565b60405180910390fd5b81600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600b819055505050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600280546119d490615152565b80601f0160208091040260200160405190810160405280929190818152602001828054611a0090615152565b8015611a4d5780601f10611a2257610100808354040283529160200191611a4d565b820191906000526020600020905b815481529060010190602001808311611a3057829003601f168201915b505050505081565b611a7f7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9293361195d565b611abe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ab590614c7b565b60405180910390fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000801b81565b611b52612298565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611bc0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb790614c1b565b60405180910390fd5b8060136000611bcd612298565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff16611c7a612298565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611cbf9190614a0c565b60405180910390a35050565b611cf57f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9293361195d565b611d34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d2b90614c7b565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050158015611d91573d6000803e3d6000fd5b508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb338373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611de8919061497c565b60206040518083038186803b158015611e0057600080fd5b505afa158015611e14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e3891906141d8565b6040518363ffffffff1660e01b8152600401611e559291906149e3565b602060405180830381600087803b158015611e6f57600080fd5b505af1158015611e83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ea79190614063565b5050565b611ed57f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9293361195d565b611f14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f0b90614c7b565b60405180910390fd5b80600d60146101000a81548160ff02191690831515021790555050565b611f42611f3c612298565b836123ee565b611f81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f7890614adb565b60405180910390fd5b611f8d84848484612de2565b50505050565b6060611f9e8261227b565b611fdd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fd490614ddb565b60405180910390fd5b600060088054611fec90615152565b9050116120085760405180602001604052806000815250612037565b600861201383612e3e565b600960405160200161202793929190614911565b6040516020818303038152906040525b9050919050565b6000612057600554600354612feb90919063ffffffff16565b905090565b61206582610f38565b61207681612071612298565b612833565b6120808383612b64565b505050565b6120af7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9293361195d565b6120ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120e590614c7b565b60405180910390fd5b80601460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000601360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92981565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612274575061227382613001565b5b9050919050565b600061229182600e61306b90919063ffffffff16565b9050919050565b600033905090565b816012600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16636352211e846040518263ffffffff1660e01b81526004016123439190614e1b565b60206040518083038186803b15801561235b57600080fd5b505afa15801561236f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123939190613e93565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006123e782600001613085565b9050919050565b60006123f98261227b565b612438576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161242f90614cdb565b60405180910390fd5b60003073ffffffffffffffffffffffffffffffffffffffff16636352211e846040518263ffffffff1660e01b81526004016124739190614e1b565b60206040518083038186803b15801561248b57600080fd5b505afa15801561249f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124c39190613e93565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061253257508373ffffffffffffffffffffffffffffffffffffffff1661251a84610b36565b73ffffffffffffffffffffffffffffffffffffffff16145b8061254357506125428185612149565b5b91505092915050565b600460009054906101000a900460ff161561259c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161259390614b1b565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16636352211e836040518263ffffffff1660e01b81526004016125ec9190614e1b565b60206040518083038186803b15801561260457600080fd5b505afa158015612618573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061263c9190613e93565b73ffffffffffffffffffffffffffffffffffffffff1614612692576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161268990614bfb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612702576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126f990614bbb565b60405180910390fd5b61270d83838361309a565b6127186000826122a0565b61276981601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002061309f90919063ffffffff16565b506127bb81601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206130b990919063ffffffff16565b506127d28183600e6130d39092919063ffffffff16565b50808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b61283d828261195d565b6128cc576128628173ffffffffffffffffffffffffffffffffffffffff166014613108565b6128708360001c6020613108565b604051602001612881929190614942565b6040516020818303038152906040526040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128c39190614a42565b60405180910390fd5b5050565b6128da828261195d565b6129ac57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550612951612298565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b60006129bf8360000183613402565b60001c905092915050565b6000803341424542876040516020016129e8969594939291906148a1565b6040516020818303038152906040528051906020012060001c90506000600554600354612a159190615022565b905060008111612a5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a5190614d3b565b60405180910390fd5b60008183612a68919061523e565b905060008060076000848152602001908152602001600020541415612a8d5781612aa2565b60076000838152602001908152602001600020545b9050600060076000600186612ab79190615022565b81526020019081526020016000205414612af05760076000600185612adc9190615022565b815260200190815260200160002054612afe565b600183612afd9190615022565b5b6007600084815260200190815260200160002081905550600060076000600186612b289190615022565b81526020019081526020016000208190555080945050505050919050565b612b60828260405180602001604052806000815250613453565b5050565b612b6e828261195d565b15612c4157600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550612be6612298565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b60003073ffffffffffffffffffffffffffffffffffffffff16636352211e836040518263ffffffff1660e01b8152600401612c809190614e1b565b60206040518083038186803b158015612c9857600080fd5b505afa158015612cac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cd09190613e93565b9050612cde8160008461309a565b612ce96000836122a0565b612d3a82601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002061309f90919063ffffffff16565b50612d4f82600e6134ae90919063ffffffff16565b5081600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b6000612dc2836000018360001b6134c8565b60001c905092915050565b6000612ddb82600001613544565b9050919050565b612ded84848461254c565b612df984848484613555565b612e38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e2f90614dbb565b60405180910390fd5b50505050565b60606000821415612e86576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612fe6565b600082905060005b60008214612eb8578080612ea1906151b5565b915050600a82612eb19190614f97565b9150612e8e565b60008167ffffffffffffffff811115612efa577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280601f01601f191660200182016040528015612f2c5781602001600182028036833780820191505090505b5090505b60008514612fdf57600182612f459190615022565b9150600a85612f54919061523e565b6030612f609190614f41565b60f81b818381518110612f9c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85612fd89190614f97565b9450612f30565b8093505050505b919050565b60008183612ff99190615022565b905092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600061307d836000018360001b6136ec565b905092915050565b60006130938260000161370c565b9050919050565b505050565b60006130b1836000018360001b613721565b905092915050565b60006130cb836000018360001b6138a7565b905092915050565b60006130ff846000018460001b8473ffffffffffffffffffffffffffffffffffffffff1660001b613917565b90509392505050565b60606000600283600261311b9190614fc8565b6131259190614f41565b67ffffffffffffffff811115613164577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280601f01601f1916602001820160405280156131965781602001600182028036833780820191505090505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106131f4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061327e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600060018460026132be9190614fc8565b6132c89190614f41565b90505b60018111156133b4577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110613330577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b1a60f81b82828151811061336d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c9450806133ad90615128565b90506132cb565b50600084146133f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133ef90614a9b565b60405180910390fd5b8091505092915050565b6000826000018281548110613440577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154905092915050565b61345d8383613952565b61346a6000848484613555565b6134a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134a090614bdb565b60405180910390fd5b505050565b60006134c0836000018360001b613ae0565b905092915050565b6000808360020160008481526020019081526020016000205490506000801b811415806134fb57506134fa84846136ec565b5b61353a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161353190614d5b565b60405180910390fd5b8091505092915050565b600081600001805490509050919050565b60006135768473ffffffffffffffffffffffffffffffffffffffff16613b19565b156136df578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261359f612298565b8786866040518563ffffffff1660e01b81526004016135c19493929190614997565b602060405180830381600087803b1580156135db57600080fd5b505af192505050801561360c57506040513d601f19601f82011682018060405250810190613609919061411a565b60015b61368f573d806000811461363c576040519150601f19603f3d011682016040523d82523d6000602084013e613641565b606091505b50600081511415613687576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161367e90614c3b565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506136e4565b600190505b949350505050565b60006137048284600001613b3c90919063ffffffff16565b905092915050565b600061371a82600001613544565b9050919050565b6000808360010160008481526020019081526020016000205490506000811461389b5760006001826137539190615022565b905060006001866000018054905061376b9190615022565b90508181146138265760008660000182815481106137b2577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549050808760000184815481106137fc577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b85600001805480613860577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506138a1565b60009150505b92915050565b60006138b38383613b53565b61390c578260000182908060018154018082558091505060019003906000526020600020016000909190919091505582600001805490508360010160008481526020019081526020016000208190555060019050613911565b600090505b92915050565b600081846002016000858152602001908152602001600020819055506139498385600001613b7690919063ffffffff16565b90509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156139c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016139b990614c9b565b60405180910390fd5b6139cb8161227b565b15613a0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a0290614afb565b60405180910390fd5b613a176000838361309a565b613a6881601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206130b990919063ffffffff16565b50613a7f8183600e6130d39092919063ffffffff16565b50808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b600082600201600083815260200190815260200160002060009055613b118284600001613b8d90919063ffffffff16565b905092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000613b4b8360000183613b53565b905092915050565b600080836001016000848152602001908152602001600020541415905092915050565b6000613b8583600001836138a7565b905092915050565b6000613b9c8360000183613721565b905092915050565b828054613bb090615152565b90600052602060002090601f016020900481019282613bd25760008555613c19565b82601f10613beb57805160ff1916838001178555613c19565b82800160010185558215613c19579182015b82811115613c18578251825591602001919060010190613bfd565b5b509050613c269190613c2a565b5090565b5b80821115613c43576000816000905550600101613c2b565b5090565b6000613c5a613c5584614e5b565b614e36565b90508083825260208201905082856020860282011115613c7957600080fd5b60005b85811015613ca95781613c8f8882613e40565b845260208401935060208301925050600181019050613c7c565b5050509392505050565b6000613cc6613cc184614e87565b614e36565b905082815260208101848484011115613cde57600080fd5b613ce98482856150e6565b509392505050565b6000613d04613cff84614eb8565b614e36565b905082815260208101848484011115613d1c57600080fd5b613d278482856150e6565b509392505050565b600081359050613d3e81615889565b92915050565b600081519050613d5381615889565b92915050565b600082601f830112613d6a57600080fd5b8135613d7a848260208601613c47565b91505092915050565b600081359050613d92816158a0565b92915050565b600081519050613da7816158a0565b92915050565b600081359050613dbc816158b7565b92915050565b600081359050613dd1816158ce565b92915050565b600081519050613de6816158ce565b92915050565b600082601f830112613dfd57600080fd5b8135613e0d848260208601613cb3565b91505092915050565b600082601f830112613e2757600080fd5b8135613e37848260208601613cf1565b91505092915050565b600081359050613e4f816158e5565b92915050565b600081519050613e64816158e5565b92915050565b600060208284031215613e7c57600080fd5b6000613e8a84828501613d2f565b91505092915050565b600060208284031215613ea557600080fd5b6000613eb384828501613d44565b91505092915050565b60008060408385031215613ecf57600080fd5b6000613edd85828601613d2f565b9250506020613eee85828601613d2f565b9150509250929050565b600080600060608486031215613f0d57600080fd5b6000613f1b86828701613d2f565b9350506020613f2c86828701613d2f565b9250506040613f3d86828701613e40565b9150509250925092565b60008060008060808587031215613f5d57600080fd5b6000613f6b87828801613d2f565b9450506020613f7c87828801613d2f565b9350506040613f8d87828801613e40565b925050606085013567ffffffffffffffff811115613faa57600080fd5b613fb687828801613dec565b91505092959194509250565b60008060408385031215613fd557600080fd5b6000613fe385828601613d2f565b9250506020613ff485828601613d83565b9150509250929050565b6000806040838503121561401157600080fd5b600061401f85828601613d2f565b925050602061403085828601613e40565b9150509250929050565b60006020828403121561404c57600080fd5b600061405a84828501613d83565b91505092915050565b60006020828403121561407557600080fd5b600061408384828501613d98565b91505092915050565b60006020828403121561409e57600080fd5b60006140ac84828501613dad565b91505092915050565b600080604083850312156140c857600080fd5b60006140d685828601613dad565b92505060206140e785828601613d2f565b9150509250929050565b60006020828403121561410357600080fd5b600061411184828501613dc2565b91505092915050565b60006020828403121561412c57600080fd5b600061413a84828501613dd7565b91505092915050565b6000806040838503121561415657600080fd5b600083013567ffffffffffffffff81111561417057600080fd5b61417c85828601613e16565b925050602083013567ffffffffffffffff81111561419957600080fd5b6141a585828601613e16565b9150509250929050565b6000602082840312156141c157600080fd5b60006141cf84828501613e40565b91505092915050565b6000602082840312156141ea57600080fd5b60006141f884828501613e55565b91505092915050565b600080600080600060a0868803121561421957600080fd5b600061422788828901613e40565b955050602061423888828901613d2f565b945050604086013567ffffffffffffffff81111561425557600080fd5b61426188828901613d59565b935050606061427288828901613d2f565b925050608086013567ffffffffffffffff81111561428f57600080fd5b61429b88828901613d59565b9150509295509295909350565b600080604083850312156142bb57600080fd5b60006142c985828601613e40565b92505060206142da85828601613e40565b9150509250929050565b6142f56142f082615068565b615210565b82525050565b61430481615056565b82525050565b61431b61431682615056565b6151fe565b82525050565b61432a8161507a565b82525050565b61433981615086565b82525050565b600061434a82614efe565b6143548185614f14565b93506143648185602086016150f5565b61436d8161532b565b840191505092915050565b600061438382614f09565b61438d8185614f25565b935061439d8185602086016150f5565b6143a68161532b565b840191505092915050565b60006143bc82614f09565b6143c68185614f36565b93506143d68185602086016150f5565b80840191505092915050565b600081546143ef81615152565b6143f98186614f36565b94506001821660008114614414576001811461442557614458565b60ff19831686528186019350614458565b61442e85614ee9565b60005b8381101561445057815481890152600182019150602081019050614431565b838801955050505b50505092915050565b600061446e602083614f25565b915061447982615349565b602082019050919050565b6000614491601283614f25565b915061449c82615372565b602082019050919050565b60006144b4601583614f25565b91506144bf8261539b565b602082019050919050565b60006144d7601483614f25565b91506144e2826153c4565b602082019050919050565b60006144fa601683614f25565b9150614505826153ed565b602082019050919050565b600061451d601683614f25565b915061452882615416565b602082019050919050565b6000614540601d83614f25565b915061454b8261543f565b602082019050919050565b6000614563600a83614f25565b915061456e82615468565b602082019050919050565b6000614586601e83614f25565b915061459182615491565b602082019050919050565b60006145a9601583614f25565b91506145b4826154ba565b602082019050919050565b60006145cc601683614f25565b91506145d7826154e3565b602082019050919050565b60006145ef602183614f25565b91506145fa8261550c565b604082019050919050565b6000614612601183614f25565b915061461d8261555b565b602082019050919050565b6000614635601d83614f25565b915061464082615584565b602082019050919050565b6000614658600883614f25565b9150614663826155ad565b602082019050919050565b600061467b600283614f25565b9150614686826155d6565b602082019050919050565b600061469e600d83614f25565b91506146a9826155ff565b602082019050919050565b60006146c1600d83614f25565b91506146cc82615628565b602082019050919050565b60006146e4601183614f25565b91506146ef82615651565b602082019050919050565b6000614707600c83614f25565b91506147128261567a565b602082019050919050565b600061472a600b83614f25565b9150614735826156a3565b602082019050919050565b600061474d600b83614f25565b9150614758826156cc565b602082019050919050565b6000614770601e83614f25565b915061477b826156f5565b602082019050919050565b6000614793601783614f36565b915061479e8261571e565b601782019050919050565b60006147b6603083614f25565b91506147c182615747565b604082019050919050565b60006147d9600983614f25565b91506147e482615796565b602082019050919050565b60006147fc601683614f25565b9150614807826157bf565b602082019050919050565b600061481f600c83614f25565b915061482a826157e8565b602082019050919050565b6000614842601183614f36565b915061484d82615811565b601182019050919050565b6000614865602f83614f25565b91506148708261583a565b604082019050919050565b614884816150dc565b82525050565b61489b614896826150dc565b615234565b82525050565b60006148ad828961430a565b6014820191506148bd82886142e4565b6014820191506148cd828761488a565b6020820191506148dd828661488a565b6020820191506148ed828561488a565b6020820191506148fd828461488a565b602082019150819050979650505050505050565b600061491d82866143e2565b915061492982856143b1565b915061493582846143e2565b9150819050949350505050565b600061494d82614786565b915061495982856143b1565b915061496482614835565b915061497082846143b1565b91508190509392505050565b600060208201905061499160008301846142fb565b92915050565b60006080820190506149ac60008301876142fb565b6149b960208301866142fb565b6149c6604083018561487b565b81810360608301526149d8818461433f565b905095945050505050565b60006040820190506149f860008301856142fb565b614a05602083018461487b565b9392505050565b6000602082019050614a216000830184614321565b92915050565b6000602082019050614a3c6000830184614330565b92915050565b60006020820190508181036000830152614a5c8184614378565b905092915050565b60006040820190508181036000830152614a7e8185614378565b90508181036020830152614a928184614378565b90509392505050565b60006020820190508181036000830152614ab481614461565b9050919050565b60006020820190508181036000830152614ad481614484565b9050919050565b60006020820190508181036000830152614af4816144a7565b9050919050565b60006020820190508181036000830152614b14816144ca565b9050919050565b60006020820190508181036000830152614b34816144ed565b9050919050565b60006020820190508181036000830152614b5481614510565b9050919050565b60006020820190508181036000830152614b7481614533565b9050919050565b60006020820190508181036000830152614b9481614556565b9050919050565b60006020820190508181036000830152614bb481614579565b9050919050565b60006020820190508181036000830152614bd48161459c565b9050919050565b60006020820190508181036000830152614bf4816145bf565b9050919050565b60006020820190508181036000830152614c14816145e2565b9050919050565b60006020820190508181036000830152614c3481614605565b9050919050565b60006020820190508181036000830152614c5481614628565b9050919050565b60006020820190508181036000830152614c748161464b565b9050919050565b60006020820190508181036000830152614c948161466e565b9050919050565b60006020820190508181036000830152614cb481614691565b9050919050565b60006020820190508181036000830152614cd4816146b4565b9050919050565b60006020820190508181036000830152614cf4816146d7565b9050919050565b60006020820190508181036000830152614d14816146fa565b9050919050565b60006020820190508181036000830152614d348161471d565b9050919050565b60006020820190508181036000830152614d5481614740565b9050919050565b60006020820190508181036000830152614d7481614763565b9050919050565b60006020820190508181036000830152614d94816147a9565b9050919050565b60006020820190508181036000830152614db4816147cc565b9050919050565b60006020820190508181036000830152614dd4816147ef565b9050919050565b60006020820190508181036000830152614df481614812565b9050919050565b60006020820190508181036000830152614e1481614858565b9050919050565b6000602082019050614e30600083018461487b565b92915050565b6000614e40614e51565b9050614e4c8282615184565b919050565b6000604051905090565b600067ffffffffffffffff821115614e7657614e756152fc565b5b602082029050602081019050919050565b600067ffffffffffffffff821115614ea257614ea16152fc565b5b614eab8261532b565b9050602081019050919050565b600067ffffffffffffffff821115614ed357614ed26152fc565b5b614edc8261532b565b9050602081019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b6000614f4c826150dc565b9150614f57836150dc565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614f8c57614f8b61526f565b5b828201905092915050565b6000614fa2826150dc565b9150614fad836150dc565b925082614fbd57614fbc61529e565b5b828204905092915050565b6000614fd3826150dc565b9150614fde836150dc565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156150175761501661526f565b5b828202905092915050565b600061502d826150dc565b9150615038836150dc565b92508282101561504b5761504a61526f565b5b828203905092915050565b6000615061826150bc565b9050919050565b6000615073826150bc565b9050919050565b60008115159050919050565b6000819050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b838110156151135780820151818401526020810190506150f8565b83811115615122576000848401525b50505050565b6000615133826150dc565b915060008214156151475761514661526f565b5b600182039050919050565b6000600282049050600182168061516a57607f821691505b6020821081141561517e5761517d6152cd565b5b50919050565b61518d8261532b565b810181811067ffffffffffffffff821117156151ac576151ab6152fc565b5b80604052505050565b60006151c0826150dc565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156151f3576151f261526f565b5b600182019050919050565b600061520982615222565b9050919050565b600061521b82615222565b9050919050565b600061522d8261533c565b9050919050565b6000819050919050565b6000615249826150dc565b9150615254836150dc565b9250826152645761526361529e565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b7f77726f6e67207469636b6574546f4275726e0000000000000000000000000000600082015250565b7f213d206f776e6572206e6f7220617070726f7665640000000000000000000000600082015250565b7f546f6b656e20616c7265616479206d696e746564000000000000000000000000600082015250565b7f54686520636f6e74726163742069732070617573656400000000000000000000600082015250565b7f626c61636b4c69737465644d61726b6574706c61636500000000000000000000600082015250565b7f213d206f776e6572206e6f7220617070726f76656420666f7220616c6c000000600082015250565b7f213d20616c6c6f77656400000000000000000000000000000000000000000000600082015250565b7f546f74616c20737570706c79206578636565647320746865206c696d69740000600082015250565b7f5472616e7366657220746f207468652030206164640000000000000000000000600082015250565b7f5472616e7366657220746f206e6f6e2056495031383100000000000000000000600082015250565b7f5472616e73666572206f6620746f6b656e2074686174206973206e6f74206f7760008201527f6e00000000000000000000000000000000000000000000000000000000000000602082015250565b7f417070726f766520746f2063616c6c6572000000000000000000000000000000600082015250565b7f5472616e7366657220746f206e6f6e20564950313831522e20696d706c000000600082015250565b7f6e6f20746f6b656e000000000000000000000000000000000000000000000000600082015250565b7f4531000000000000000000000000000000000000000000000000000000000000600082015250565b7f4d696e7420746f20302061646400000000000000000000000000000000000000600082015250565b7f63757272656e74206f776e657200000000000000000000000000000000000000600082015250565b7f6e6f6e6578697374656e7420746f6b656e000000000000000000000000000000600082015250565b7f7a65726f20616464726573730000000000000000000000000000000000000000600082015250565b7f77726f6e67207072696365000000000000000000000000000000000000000000600082015250565b7f6e6f20696473206c656674000000000000000000000000000000000000000000600082015250565b7f456e756d657261626c654d61703a206e6f6e6578697374656e74206b65790000600082015250565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b7f4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656400000000000000000000000000000000602082015250565b7f6e6f74206f776e65720000000000000000000000000000000000000000000000600082015250565b7f5472616e7366657220746f206e6f6e2045524337323100000000000000000000600082015250565b7f555249206e6f20746f6b656e0000000000000000000000000000000000000000600082015250565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b61589281615056565b811461589d57600080fd5b50565b6158a98161507a565b81146158b457600080fd5b50565b6158c081615086565b81146158cb57600080fd5b50565b6158d781615090565b81146158e257600080fd5b50565b6158ee816150dc565b81146158f957600080fd5b5056fea2646970667358221220bbc827a822745c3fe4eb0dc918283918c62f72a54bb01a361a6180778af689c964736f6c63430008010033