VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0xccFd8c…00E1
Summary
Transactions
Transfers
Address
0xccFd8cf4BC5Aa8335565CB506e4D2BC633E500E1
VET
0.00
VET
VTHO
0.00
VTHO
Master
0x66E9709bc01B8c0AfC99a7dC513f501821306E85
Deployer
0x66E9709bc01B8c0AfC99a7dC513f501821306E85
Code
0x60806040526004361061031f5760003560e01c80621db0dd1461032457806301ffc9a71461034657806306fdde031461037b578063081812fc1461039d578063095ea7b3146103ca57806318160ddd146103ea57806323b872dd1461040d578063248a9ca31461042d5780632b42df381461044d5780632f2ff15d1461046d5780632f745c591461048d578063344f1ba5146104ad57806336568abe146104cd5780633af03ea8146104ed5780633d6dbee81461050d5780633f4ba83a1461052f5780633ff453af1461054457806342842e0e1461057657806342966c681461059657806345977d03146105b65780634a6565e1146105d65780634f1ef286146105f65780634f6ccce71461060957806351c438d11461062957806352d1902d1461064957806354fd4d501461065e57806355f804b314610688578063582a486a146106a85780635b5da514146106bd5780635b70ea9f146106dd5780635c975abb146106f25780635ecf68e9146107075780635f4e42ca1461071c5780635ffaa59a1461073c57806361d027b31461075c5780636352211e14610771578063643ce418146107915780636c0360eb146107be5780636d5e3032146107d357806370a08231146107f35780637893d73614610813578063839a19d9146108285780638456cb5914610848578063851f738e1461085d578063865c380b1461088a57806388371110146108aa5780638c5b76fb146108ca57806391d14854146108ea578063952f21331461090a578063958fc97d1461092c57806395d89b411461094c578063a1843bd014610961578063a217fddf14610981578063a22cb46514610996578063a49062d4146109b6578063a51d2e0b146109cb578063ad3cb1cc146109eb578063b1ccbd2c14610a1c578063b88d4fde14610a3c578063c87b56dd14610a5c578063cc421d0714610a7c578063d206885d14610a9c578063d539139314610abc578063d547741f14610ade578063ddd8634d14610afe578063de4983a214610b1e578063e617e49f14610b3e578063e63ab1e914610b5e578063e985e9c514610b80578063f72c0d8b14610ba0578063fb966e9f14610bc2575b600080fd5b34801561033057600080fd5b5061034461033f3660046146bc565b610be2565b005b34801561035257600080fd5b506103666103613660046146fe565b610d41565b60405190151581526020015b60405180910390f35b34801561038757600080fd5b50610390610d52565b604051610372919061476b565b3480156103a957600080fd5b506103bd6103b836600461477e565b610df3565b6040516103729190614797565b3480156103d657600080fd5b506103446103e53660046147d0565b610e08565b3480156103f657600080fd5b506103ff610e17565b604051908152602001610372565b34801561041957600080fd5b506103446104283660046147ee565b610e2c565b34801561043957600080fd5b506103ff61044836600461477e565b610eb7565b34801561045957600080fd5b506103ff61046836600461477e565b610ed7565b34801561047957600080fd5b5061034461048836600461482f565b610ef7565b34801561049957600080fd5b506103ff6104a83660046147d0565b610f13565b3480156104b957600080fd5b506103446104c836600461477e565b610f75565b3480156104d957600080fd5b506103446104e836600461482f565b6110e1565b3480156104f957600080fd5b5061034461050836600461485f565b611119565b34801561051957600080fd5b506103ff6000805160206155a383398151915281565b34801561053b57600080fd5b50610344611217565b34801561055057600080fd5b5061056461055f36600461477e565b61123a565b60405160ff9091168152602001610372565b34801561058257600080fd5b506103446105913660046147ee565b6112cd565b3480156105a257600080fd5b506103446105b136600461477e565b6112e8565b3480156105c257600080fd5b506103446105d136600461477e565b611321565b3480156105e257600080fd5b506103446105f136600461487c565b611737565b61034461060436600461497c565b61194b565b34801561061557600080fd5b506103ff61062436600461477e565b611966565b34801561063557600080fd5b506103ff61064436600461477e565b6119c7565b34801561065557600080fd5b506103ff6119e5565b34801561066a57600080fd5b506040805180820190915260018152601960f91b6020820152610390565b34801561069457600080fd5b506103446106a33660046149cb565b611a02565b3480156106b457600080fd5b506103bd611a9f565b3480156106c957600080fd5b506103446106d8366004614a0d565b611abd565b3480156106e957600080fd5b50610344611b25565b3480156106fe57600080fd5b50610366611c14565b34801561071357600080fd5b506103bd611c29565b34801561072857600080fd5b50610344610737366004614aa9565b611c44565b34801561074857600080fd5b5061034461075736600461485f565b612173565b34801561076857600080fd5b506103bd6121e7565b34801561077d57600080fd5b506103bd61078c36600461477e565b612205565b34801561079d57600080fd5b506107b16107ac36600461477e565b612210565b6040516103729190614c4e565b3480156107ca57600080fd5b506103906122c0565b3480156107df57600080fd5b506103ff6107ee36600461477e565b6122cf565b3480156107ff57600080fd5b506103ff61080e36600461485f565b6122f2565b34801561081f57600080fd5b506103bd61234a565b34801561083457600080fd5b5061034461084336600461477e565b612368565b34801561085457600080fd5b50610344612372565b34801561086957600080fd5b5061087d610878366004614c61565b612392565b6040516103729190614c96565b34801561089657600080fd5b506103ff6108a536600461477e565b612578565b3480156108b657600080fd5b506103446108c536600461487c565b612596565b3480156108d657600080fd5b506103666108e536600461485f565b6127ed565b3480156108f657600080fd5b5061036661090536600461482f565b6129d1565b34801561091657600080fd5b506103ff60008051602061558383398151915281565b34801561093857600080fd5b506103ff61094736600461477e565b612a07565b34801561095857600080fd5b50610390612a25565b34801561096d57600080fd5b506103ff61097c36600461487c565b612a42565b34801561098d57600080fd5b506103ff600081565b3480156109a257600080fd5b506103446109b1366004614cf8565b612a4f565b3480156109c257600080fd5b506103ff612a5a565b3480156109d757600080fd5b506103ff6109e636600461477e565b612a6f565b3480156109f757600080fd5b50610390604051806040016040528060058152602001640352e302e360dc1b81525081565b348015610a2857600080fd5b50610344610a37366004614d26565b612ac9565b348015610a4857600080fd5b50610344610a57366004614d5a565b612bb9565b348015610a6857600080fd5b50610390610a7736600461477e565b612bd0565b348015610a8857600080fd5b506103ff610a9736600461477e565b612c61565b348015610aa857600080fd5b506103ff610ab736600461485f565b612c77565b348015610ac857600080fd5b506103ff60008051602061556383398151915281565b348015610aea57600080fd5b50610344610af936600461482f565b612ca4565b348015610b0a57600080fd5b50610344610b1936600461485f565b612cc0565b348015610b2a57600080fd5b506107b1610b3936600461485f565b612dbe565b348015610b4a57600080fd5b506103ff610b59366004614dc5565b612ddc565b348015610b6a57600080fd5b506103ff60008051602061554383398151915281565b348015610b8c57600080fd5b50610366610b9b366004614de2565b612e02565b348015610bac57600080fd5b506103ff6000805160206154e383398151915281565b348015610bce57600080fd5b50610344610bdd366004614e10565b612e41565b6000805160206155a3833981519152610bfa81613096565b6001821015610c4e5760405162461bcd60e51b815260206004820152601b60248201527a11d85b185e1e53595b58995c8e881a5b9d985b1a59081b195d995b602a1b60448201526064015b60405180910390fd5b60018360ff161015610ca25760405162461bcd60e51b815260206004820181905260248201527f47616c6178794d656d6265723a20696e76616c6964206e6f6465206c6576656c6044820152606401610c45565b6000610cac6130a0565b90508060060154831115610d265760405162461bcd60e51b815260206004820152603b60248201527f47616c6178794d656d6265723a206c6576656c206d757374206265206c65737360448201527a081d1a185b881bdc88195c5d585b081d1bc813505617d311559153602a1b6064820152608401610c45565b60ff9093166000908152600e90930160205250604090912055565b6000610d4c826130c4565b92915050565b60606000610d5e6130e9565b9050806000018054610d6f90614e71565b80601f0160208091040260200160405190810160405280929190818152602001828054610d9b90614e71565b8015610de85780601f10610dbd57610100808354040283529160200191610de8565b820191906000526020600020905b815481529060010190602001808311610dcb57829003601f168201915b505050505091505090565b6000610dfe8261310d565b50610d4c82613145565b610e1382823361316e565b5050565b600080610e2261317b565b6002015492915050565b6001600160a01b038216610e56576000604051633250574960e11b8152600401610c459190614797565b6000610e6383833361319f565b9050836001600160a01b0316816001600160a01b031614610eb1576040516364283d7b60e01b81526001600160a01b0380861660048301526024820184905282166044820152606401610c45565b50505050565b600080610ec2613305565b60009384526020525050604090206001015490565b600080610ee26130a0565b60009384526008016020525050604090205490565b610f0082610eb7565b610f0981613096565b610eb18383613329565b600080610f1e61317b565b9050610f29846122f2565b8310610f4c57838360405163295f44f760e21b8152600401610c45929190614eab565b6001600160a01b0384166000908152602091825260408082208583529092522054905092915050565b6000610f8081613096565b6000610f8a6130a0565b905080600601548311610fff5760405162461bcd60e51b8152602060048201526043602482015260008051602061548383398151915260448201527f2067726561746572207468616e207468652063757272656e74206d6178206c656064820152621d995b60ea1b608482015260a401610c45565b60025b8381116110975760008181526008830160205260409020546110855760405162461bcd60e51b815260206004820152604260248201526000805160206154a383398151915260448201527f7573742062652073657420666f7220616c6c206c6576656c7320756e6c6f636b606482015261195960f21b608482015260a401610c45565b8061108f81614eda565b915050611002565b506006810180549084905560408051828152602081018690527f53e438896671f1a18a4e583cceb4f0c901de52ef22ad122ea8c7f1f5b2de7450910160405180910390a150505050565b6001600160a01b038116331461110a5760405163334bd91960e11b815260040160405180910390fd5b61111482826133ca565b505050565b60008051602061558383398151915261113181613096565b6001600160a01b0382166111ad5760405162461bcd60e51b815260206004820152603f60248201527f47616c617879204d656d6265723a205f78416c6c6f636174696f6e73476f766560448201527f726e6f722063616e6e6f7420626520746865207a65726f2061646472657373006064820152608401610c45565b60006111b76130a0565b80546040519192506001600160a01b0390811691908516907fd9365634b1542359685e4d736b69f8a87476421f69da0f3f8054668ab19af12990600090a380546001600160a01b0319166001600160a01b03939093169290921790915550565b60008051602061554383398151915261122f81613096565b611237613442565b50565b6000806112456130a0565b600b81015460405163295d33a960e21b8152600481018690529192506000916101009091046001600160a01b03169063a574cea49060240160e060405180830381865afa15801561129a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112be9190614f0a565b50939998505050505050505050565b61111483838360405180602001604052806000815250612bb9565b336112f282612205565b6001600160a01b0316146113185760405162461bcd60e51b8152600401610c4590614f9b565b61123781613499565b6113296134a5565b6113316134db565b3361133b82612205565b6001600160a01b0316146113ad5760405162461bcd60e51b815260206004820152603360248201527f47616c617879204d656d6265723a20796f75206d757374206f776e2074686520604482015272151bdad95b881d1bc81d5c19dc985919481a5d606a1b6064820152608401610c45565b60006113b76130a0565b905060006113c4836122cf565b90506113ce612a5a565b81106114315760405162461bcd60e51b815260206004820152602c60248201527f47616c617879204d656d6265723a20546f6b656e20697320616c72656164792060448201526b185d081b585e081b195d995b60a21b6064820152608401610c45565b600061143c84612a6f565b60028401546040516370a0823160e01b815291925082916001600160a01b03909116906370a0823190611473903390600401614797565b602060405180830381865afa158015611490573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114b49190614fee565b10156115195760405162461bcd60e51b815260206004820152602e60248201527f47616c617879204d656d6265723a20496e73756666696369656e742062616c6160448201526d6e636520746f207570677261646560901b6064820152608401610c45565b6002830154604051636eb1769f60e11b815233600482015230602482015282916001600160a01b03169063dd62ed3e90604401602060405180830381865afa158015611569573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061158d9190614fee565b10156115f45760405162461bcd60e51b815260206004820152603060248201527f47616c617879204d656d6265723a20496e73756666696369656e7420616c6c6f60448201526f77616e636520746f207570677261646560801b6064820152608401610c45565b6000848152600f8401602052604081208054839290611614908490615007565b9091555050600283015460038401546040516323b872dd60e01b81523360048201526001600160a01b039182166024820152604481018490529116906323b872dd906064016020604051808303816000875af1158015611678573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061169c919061501a565b6116e85760405162461bcd60e51b815260206004820152601d60248201527f47616c6178794d656d6265723a205472616e73666572206661696c65640000006044820152606401610c45565b837f936f056112badb39ff4b5bf0d185576c15ed35d94502e37e8b6d7bfbec42885483611714876122cf565b6040805192835260208301919091520160405180910390a2505050611237613503565b60006117416130a0565b90503361174d83612205565b6001600160a01b031614806117dc5750600b81015460405163bfc206ed60e01b815260048101859052339161010090046001600160a01b03169063bfc206ed90602401602060405180830381865afa1580156117ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d19190615037565b6001600160a01b0316145b61184e5760405162461bcd60e51b815260206004820152603e60248201527f47616c6178794d656d6265723a2063616c6c6572206973206e6f74207468652060448201527f6f776e6572206f662074686520746f6b656e206f7220746865206e6f646500006064820152608401610c45565b81611858846119c7565b146118ba5760405162461bcd60e51b815260206004820152602c60248201527f47616c6178794d656d6265723a206e6f6465206e6f742061747461636865642060448201526b3a37903a3432903a37b5b2b760a11b6064820152608401610c45565b826118c483612a07565b146119265760405162461bcd60e51b815260206004820152602c60248201527f47616c6178794d656d6265723a20746f6b656e206e6f7420617474616368656460448201526b20746f20746865206e6f646560a01b6064820152608401610c45565b6000928352600c810160209081526040808520859055928452600d9091019052812055565b611953613514565b61195c826135b9565b610e1382826135d1565b60008061197161317b565b905061197b610e17565b831061199f5760008360405163295f44f760e21b8152600401610c45929190614eab565b8060020183815481106119b4576119b4615054565b9060005260206000200154915050919050565b60006119d16130a0565b6000928352600c0160205250604090205490565b60006119ef613685565b5060008051602061552383398151915290565b6000611a0d81613096565b6000825111611a2e5760405162461bcd60e51b8152600401610c459061506a565b6000611a386130a0565b905080600401604051611a4b91906150ad565b604051809103902083604051611a619190615123565b604051908190038120907f309b29ded109b9e28fb9885757b3e0096eb75c51d23aa4635d68bcd569f6adc190600090a360048101610eb18482615185565b600080611aaa6130a0565b600201546001600160a01b031692915050565b6000611ac881613096565b6000611ad26130a0565b90507f5021318db3b191bc0f54787c8649fc31d3ea3da887601b922b2f347ff33b7cbe83604051611b07911515815260200190565b60405180910390a1600b01805460ff19169215159290921790915550565b6000611b2f6130a0565b600b81015490915060ff1615611b975760405162461bcd60e51b815260206004820152602760248201527f47616c617879204d656d6265723a205075626c6963206d696e74696e67206973604482015266081c185d5cd95960ca1b6064820152608401610c45565b611ba0336127ed565b611c0b5760405162461bcd60e51b815260206004820152603660248201527f47616c617879204d656d6265723a205573657220686173206e6f742070617274604482015275696369706174656420696e20676f7665726e616e636560501b6064820152608401610c45565b611237336136ce565b600080611c1f6136ff565b5460ff1692915050565b600080611c346130a0565b546001600160a01b031692915050565b6000611c4e613723565b805490915060ff600160401b82041615906001600160401b0316600081158015611c755750825b90506000826001600160401b03166001148015611c915750303b155b905081158015611c9f575080155b15611cbd5760405163f92ee8a960e01b815260040160405180910390fd5b84546001600160401b03191660011785558315611ce657845460ff60401b1916600160401b1785555b60008660e0015111611d405760405162461bcd60e51b815260206004820152602f602482015260008051602061548383398151915260448201526e02067726561746572207468616e203608c1b6064820152608401610c45565b60008661010001515111611d665760405162461bcd60e51b8152600401610c459061506a565b6101408601516001600160a01b0316611de65760405162461bcd60e51b815260206004820152603c60248201527f47616c617879204d656d6265723a204233545220746f6b656e2061646472657360448201527b732063616e6e6f7420626520746865207a65726f206164647265737360201b6064820152608401610c45565b6101608601516001600160a01b0316611e645760405162461bcd60e51b815260206004820152603a60248201527f47616c617879204d656d6265723a20547265617375727920616464726573732060448201527963616e6e6f7420626520746865207a65726f206164647265737360301b6064820152608401610c45565b60018660e00151611e759190615244565b866101200151511015611ee95760405162461bcd60e51b815260206004820152604260248201526000805160206154a383398151915260448201527f7573742062652073657420666f7220616c6c20756e6c6f636b6564206c6576656064820152616c7360f01b608482015260a401610c45565b611efb86600001518760200151613747565b611f03613759565b611f0b613761565b611f13613759565b611f1b613759565b611f23613771565b611f2b613759565b6000611f356130a0565b9050866101000151816004019081611f4d9190615185565b5060005b87610120015151811015611ff25760008861012001518281518110611f7857611f78615054565b602002602001015111611f9d5760405162461bcd60e51b8152600401610c4590615257565b8761012001518181518110611fb457611fb4615054565b6020026020010151826008016000836002611fcf9190615007565b815260208101919091526040016000205580611fea81614eda565b915050611f51565b5060e087015160068201556101408701516002820180546001600160a01b03199081166001600160a01b03938416179091556101608901516003840180549092169083161790556040880151166120ab5760405162461bcd60e51b815260206004820152603760248201527f47616c617879204d656d6265723a2041646d696e20616464726573732063616e6044820152766e6f7420626520746865207a65726f206164647265737360481b6064820152608401610c45565b6120bc6000801b8860400151613329565b506120d96000805160206154e38339815191528860600151613329565b506120f66000805160206155438339815191528860800151613329565b506121136000805160206155638339815191528860a00151613329565b506121306000805160206155838339815191528860c00151613329565b5050831561216b57845460ff60401b191685556040516000805160206154c3833981519152906121629060019061529a565b60405180910390a15b505050505050565b6000805160206155a383398151915261218b81613096565b6001600160a01b0382166121b15760405162461bcd60e51b8152600401610c45906152ae565b60006121bb6130a0565b600b0180546001600160a01b0390941661010002610100600160a81b0319909416939093179092555050565b6000806121f26130a0565b600301546001600160a01b031692915050565b6000610d4c8261310d565b612218614685565b600061222383613781565b6001600160a01b0316036122855760405162461bcd60e51b815260206004820152602360248201527f47616c6178794d656d6265723a20746f6b656e496420646f65736e27742065786044820152621a5cdd60ea1b6064820152608401610c45565b61228d614685565b82815261229983612bd0565b60208201526122a7836122cf565b60408201526122b583612a6f565b606082015292915050565b60606122ca6137aa565b905090565b6000806122db83612a07565b905060006122e984836137c7565b50949350505050565b6000806122fd6130e9565b90506001600160a01b0383166123295760006040516322718ad960e21b8152600401610c459190614797565b6001600160a01b039092166000908152600390920160205250604090205490565b6000806123556130a0565b600101546001600160a01b031692915050565b6112373382613942565b60008051602061554383398151915261238a81613096565b6112376139e5565b6060816000036123e25760405162461bcd60e51b8152602060048201526027602482015260008051602061546383398151915260448201526606f7420626520360cc1b6064820152608401610c45565b60648083111561242b576123f581613a2c565b6040516020016124059190615304565b60408051601f198184030181529082905262461bcd60e51b8252610c459160040161476b565b6000612436866122f2565b905060006124448587615353565b905081811061248957604080516000808252602082019092529061247e565b61246b614685565b8152602001906001900390816124635790505b509350505050612571565b60006124958683615007565b9050828111156124a25750815b60006124ae8383615244565b90506000816001600160401b038111156124ca576124ca61489e565b60405190808252806020026020018201604052801561250357816020015b6124f0614685565b8152602001906001900390816124e85790505b50905060005b8281101561256857600061251d8287615007565b9050600061252b8d83610f13565b905061253681612210565b84848151811061254857612548615054565b60200260200101819052505050808061256090614eda565b915050612509565b50955050505050505b9392505050565b60006125826130a0565b6000928352600f0160205250604090205490565b60006125a06130a0565b905060006125ad83612205565b6001600160a01b03160361260d5760405162461bcd60e51b815260206004820152602160248201527f47616c6178794d656d6265723a20746f6b656e20646f65736e277420657869736044820152601d60fa1b6064820152608401610c45565b600b81015460405163bfc206ed60e01b815260048101859052339161010090046001600160a01b03169063bfc206ed90602401602060405180830381865afa15801561265d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126819190615037565b6001600160a01b0316146126ee5760405162461bcd60e51b815260206004820152602e60248201527f47616c6178794d656d6265723a207665636861696e206e6f6465206e6f74206f60448201526d3bb732b210313c9031b0b63632b960911b6064820152608401610c45565b6126f7836119c7565b1561275b5760405162461bcd60e51b815260206004820152602e60248201527f47616c6178794d656d6265723a206e6f646520616c726561647920617474616360448201526d3432b2103a379030903a37b5b2b760911b6064820152608401610c45565b61276482612a07565b156127c85760405162461bcd60e51b815260206004820152602e60248201527f47616c6178794d656d6265723a20746f6b656e20616c7265616479206174746160448201526d6368656420746f2061206e6f646560901b6064820152608401610c45565b6000838152600c820160209081526040808320859055938252600d9092019091522055565b6000806127f86130a0565b80549091506001600160a01b031661286b5760405162461bcd60e51b815260206004820152603060248201527f47616c617879204d656d6265723a2058416c6c6f636174696f6e566f74696e6760448201526f11dbdd995c9b9bdc881b9bdd081cd95d60821b6064820152608401610c45565b60018101546001600160a01b03166128d15760405162461bcd60e51b815260206004820152602360248201527f47616c617879204d656d6265723a2042335452476f7665726e6f72206e6f74206044820152621cd95d60ea1b6064820152608401610c45565b8054604051639aeb962b60e01b81526001600160a01b0390911690639aeb962b90612900908690600401614797565b602060405180830381865afa15801561291d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612941919061501a565b806129ba57506001810154604051639aeb962b60e01b81526001600160a01b0390911690639aeb962b90612979908690600401614797565b602060405180830381865afa158015612996573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129ba919061501a565b156129c85750600192915050565b50600092915050565b6000806129dc613305565b6000948552602090815260408086206001600160a01b03959095168652939052505090205460ff1690565b6000612a116130a0565b6000928352600d0160205250604090205490565b60606000612a316130e9565b9050806001018054610d6f90614e71565b6000806122e984846137c7565b610e13338383613abe565b600080612a656130a0565b6006015492915050565b600080612a7b83612a07565b9050600080612a8a85846137c7565b91509150612a96612a5a565b8203612aa757506000949350505050565b80612ab6610468846001615007565b612ac09190615244565b95945050505050565b6000612ad481613096565b6000612ade6130a0565b905060005b8351811015612b75576000848281518110612b0057612b00615054565b602002602001015111612b255760405162461bcd60e51b8152600401610c4590615257565b838181518110612b3757612b37615054565b6020026020010151826008016000836002612b529190615007565b815260208101919091526040016000205580612b6d81614eda565b915050612ae3565b5082604051612b84919061536a565b604051908190038120907f0f2521083e08ca3f37d49583abc9580665e796ebb1f7b803f30e3651275bf87090600090a2505050565b612bc4848484610e2c565b610eb184848484613b63565b60606000612bdd83613781565b6001600160a01b031603612bff57505060408051602081019091526000815290565b6000612c0a836122cf565b905060008111612c295760405180602001604052806000815250612571565b612c316122c0565b612c3a82613a2c565b604051602001612c4b929190615394565b6040516020818303038152906040529392505050565b600080612c6f8360006137c7565b509392505050565b600080612c826130a0565b6001600160a01b03909316600090815260109093016020525050604090205490565b612cad82610eb7565b612cb681613096565b610eb183836133ca565b600080516020615583833981519152612cd881613096565b6001600160a01b038216612d4e5760405162461bcd60e51b815260206004820152603760248201527f47616c617879204d656d6265723a205f62337472476f7665726e6f722063616e6044820152766e6f7420626520746865207a65726f206164647265737360481b6064820152608401610c45565b6000612d586130a0565b60018101546040519192506001600160a01b0390811691908516907f95ebd3ff3915ee96ee38c1e67a23d1e1adcb9b82fb8a930067dcee36b72a827090600090a360010180546001600160a01b0319166001600160a01b03939093169290921790915550565b612dc6614685565b6000612dd183612c77565b905061257181612210565b6000612de66130a0565b60ff9092166000908152600e9290920160205250604090205490565b600080612e0d6130e9565b6001600160a01b03948516600090815260059190910160209081526040808320959096168252939093525050205460ff1690565b60026000612e4d613723565b8054909150600160401b900460ff1680612e74575080546001600160401b03808416911610155b15612e925760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160481b0319166001600160401b03831617600160401b1781558251600814612f115760405162461bcd60e51b815260206004820152603860248201526000805160206155038339815191526044820152776c6576656c732e204d7573742062652037206c6576656c7360401b6064820152608401610c45565b6001600160a01b038516612f375760405162461bcd60e51b8152600401610c45906152ae565b6000612f416130a0565b600b81018054610100600160a81b0319166101006001600160a01b038a1602179055600581015490915015612f7a578060050154612f7d565b60015b600582015560005b84518160ff161015613043576001858260ff1681518110612fa857612fa8615054565b60200260200101511015612ffa5760405162461bcd60e51b815260206004820152602560248201526000805160206155038339815191526044820152641b195d995b60da1b6064820152608401610c45565b848160ff168151811061300f5761300f615054565b60209081029190910181015160ff83166000908152600e85019092526040909120558061303b816153d3565b915050612f85565b5061305c6000805160206155a383398151915286613329565b5050805460ff60401b191681556040516000805160206154c38339815191529061308790849061529a565b60405180910390a15050505050565b6112378133613c7a565b7f7a79e46844ed04411e4579c7bc49d053e59b0854fa4e9a8df3d5a0597ce4520090565b60006001600160e01b03198216637965db0b60e01b1480610d4c5750610d4c82613ca5565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930090565b60008061311983613781565b90506001600160a01b038116610d4c57604051637e27328960e01b815260048101849052602401610c45565b6000806131506130e9565b6000938452600401602052505060409020546001600160a01b031690565b6111148383836001613cca565b7f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0090565b60006131a96134db565b6131b283612a07565b156132255760405162461bcd60e51b815260206004820152603e60248201527f47616c6178794d656d6265723a20746f6b656e20617474616368656420746f2060448201527f61206e6f64652c20646574616368206265666f7265207472616e7366657200006064820152608401610c45565b6000613232858585613dd4565b90506001600160a01b038116158015906132525750613250816122f2565b155b1561327d5761325f6130a0565b6001600160a01b038216600090815260109190910160205260408120555b6001600160a01b0381161580159061329c57508361329a82612c77565b145b80156132b0575060006132ae826122f2565b115b156132c9576132c9816132c4836000610f13565b613942565b6001600160a01b038516158015906132e957506132e5856122f2565b6001145b156132fd576132fd856132c4876000610f13565b949350505050565b7f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b62680090565b600080613334613305565b905061334084846129d1565b6133c0576000848152602082815260408083206001600160a01b03871684529091529020805460ff191660011790556133763390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610d4c565b6000915050610d4c565b6000806133d5613305565b90506133e184846129d1565b156133c0576000848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610d4c565b61344a613de9565b60006134546136ff565b805460ff1916815590507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b60405161348e9190614797565b60405180910390a150565b610e136000823361319f565b60006134af613e0e565b8054909150600119016134d557604051633ee5aeb560e01b815260040160405180910390fd5b60029055565b6134e3611c14565b156135015760405163d93c066560e01b815260040160405180910390fd5b565b600061350d613e0e565b6001905550565b306001600160a01b037f000000000000000000000000ccfd8cf4bc5aa8335565cb506e4d2bc633e500e116148061359b57507f000000000000000000000000ccfd8cf4bc5aa8335565cb506e4d2bc633e500e16001600160a01b031661358f600080516020615523833981519152546001600160a01b031690565b6001600160a01b031614155b156135015760405163703e46dd60e11b815260040160405180910390fd5b6000805160206154e3833981519152610e1381613096565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561362b575060408051601f3d908101601f1916820190925261362891810190614fee565b60015b61364a5781604051634c9c8ce360e01b8152600401610c459190614797565b600080516020615523833981519152811461367b57604051632a87526960e21b815260048101829052602401610c45565b6111148383613e32565b306001600160a01b037f000000000000000000000000ccfd8cf4bc5aa8335565cb506e4d2bc633e500e116146135015760405163703e46dd60e11b815260040160405180910390fd5b60006136d86130a0565b60058101805491925060009190826136ef83614eda565b9190505590506111148382613e88565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f0330090565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0090565b61374f613ea2565b610e138282613ec7565b613501613ea2565b613769613ea2565b613501613ef5565b613779613ea2565b613501613f12565b60008061378c6130e9565b6000938452600201602052505060409020546001600160a01b031690565b606060006137b66130a0565b9050806004018054610d6f90614e71565b60008060006137d46130a0565b90506001841580159061386f57506137eb86612205565b600b83015460405163bfc206ed60e01b8152600481018890526001600160a01b03928316926101009092049091169063bfc206ed90602401602060405180830381865afa158015613840573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138649190615037565b6001600160a01b0316145b156138b557600061387f8661123a565b905060ff8116156138b357600061389582612ddc565b905083600601548111156138ad5783600601546138af565b805b9250505b505b6000868152600f83016020526040812054906138d2836001615007565b90505b83600601548111613935576000818152600885016020526040902054821061391e57600081815260088501602052604090205490925082906139179083615244565b9150613923565b613935565b8061392d81614eda565b9150506138d5565b5090969095509350505050565b816001600160a01b031661395582612205565b6001600160a01b03161461397b5760405162461bcd60e51b8152600401610c4590614f9b565b60006139856130a0565b6001600160a01b03841660008181526010830160205260409081902085905551919250907fd3818de8151087adedb4219255d574b8fd0658bfacde78fee2b4691fbd99a8fc906139d89085815260200190565b60405180910390a2505050565b6139ed6134db565b60006139f76136ff565b805460ff1916600117815590507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586134813390565b60606000613a3983613f1a565b60010190506000816001600160401b03811115613a5857613a5861489e565b6040519080825280601f01601f191660200182016040528015613a82576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084613a8c57509392505050565b6000613ac86130e9565b90506001600160a01b038316613af35782604051630b61174360e31b8152600401610c459190614797565b6001600160a01b038481166000818152600584016020908152604080832094881680845294825291829020805460ff191687151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a350505050565b6001600160a01b0383163b15610eb157604051630a85bd0160e11b81526001600160a01b0384169063150b7a0290613ba59033908890879087906004016153f2565b6020604051808303816000875af1925050508015613be0575060408051601f3d908101601f19168201909252613bdd9181019061542f565b60015b613c40573d808015613c0e576040519150601f19603f3d011682016040523d82523d6000602084013e613c13565b606091505b508051600003613c385783604051633250574960e11b8152600401610c459190614797565b805181602001fd5b6001600160e01b03198116630a85bd0160e11b14613c735783604051633250574960e11b8152600401610c459190614797565b5050505050565b613c8482826129d1565b610e1357808260405163e2517d3f60e01b8152600401610c45929190614eab565b60006001600160e01b0319821663780e9d6360e01b1480610d4c5750610d4c82613ff0565b6000613cd46130e9565b90508180613cea57506001600160a01b03831615155b15613da3576000613cfa8561310d565b90506001600160a01b03841615801590613d265750836001600160a01b0316816001600160a01b031614155b8015613d395750613d378185612e02565b155b15613d59578360405163a9fbf51f60e01b8152600401610c459190614797565b8215613da15784866001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b600093845260040160205250506040902080546001600160a01b0319166001600160a01b0392909216919091179055565b6000613dde6134db565b6132fd848484614040565b613df1611c14565b61350157604051638dfc202b60e01b815260040160405180910390fd5b7f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0090565b613e3b826140ce565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115613e8057611114828261412a565b610e13614197565b610e138282604051806020016040528060008152506141b6565b613eaa6141cd565b61350157604051631afcd79f60e31b815260040160405180910390fd5b613ecf613ea2565b6000613ed96130e9565b905080613ee68482615185565b5060018101610eb18382615185565b613efd613ea2565b6000613f076136ff565b805460ff1916905550565b613503613ea2565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310613f595772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6904ee2d6d415b85acef8160201b8310613f83576904ee2d6d415b85acef8160201b830492506020015b662386f26fc100008310613fa157662386f26fc10000830492506010015b6305f5e1008310613fb9576305f5e100830492506008015b6127108310613fcd57612710830492506004015b60648310613fdf576064830492506002015b600a8310610d4c5760010192915050565b60006001600160e01b031982166380ac58cd60e01b148061402157506001600160e01b03198216635b5e139f60e01b145b80610d4c57506301ffc9a760e01b6001600160e01b0319831614610d4c565b60008061404e8585856141e7565b90506001600160a01b03811661406c57614067846142ee565b61408f565b846001600160a01b0316816001600160a01b03161461408f5761408f8185614327565b6001600160a01b0385166140ab576140a6846143c8565b6132fd565b846001600160a01b0316816001600160a01b0316146132fd576132fd8585614491565b806001600160a01b03163b6000036140fb5780604051634c9c8ce360e01b8152600401610c459190614797565b60008051602061552383398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516141479190615123565b600060405180830381855af49150503d8060008114614182576040519150601f19603f3d011682016040523d82523d6000602084013e614187565b606091505b5091509150612ac08583836144e9565b34156135015760405163b398979f60e01b815260040160405180910390fd5b6141c0838361453c565b6111146000848484613b63565b60006141d7613723565b54600160401b900460ff16919050565b6000806141f26130e9565b905060006141ff85613781565b90506001600160a01b0384161561421b5761421b8185876145a1565b6001600160a01b0381161561425b57614238600086600080613cca565b6001600160a01b0381166000908152600383016020526040902080546000190190555b6001600160a01b0386161561428c576001600160a01b03861660009081526003830160205260409020805460010190555b600085815260028301602052604080822080546001600160a01b0319166001600160a01b038a811691821790925591518893918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a495945050505050565b60006142f861317b565b600281018054600085815260039093016020908152604084208290556001820183559183529120019190915550565b600061433161317b565b9050600061433e846122f2565b6000848152600184016020526040902054909150808214614393576001600160a01b03851660009081526020848152604080832085845282528083205484845281842081905583526001860190915290208190555b50600092835260018201602090815260408085208590556001600160a01b039095168452918252838320908352905290812055565b60006143d261317b565b60028101549091506000906143e990600190615244565b600084815260038401602052604081205460028501805493945090928490811061441557614415615054565b906000526020600020015490508084600201838154811061443857614438615054565b6000918252602080832090910192909255828152600386019091526040808220849055868252812055600284018054806144745761447461544c565b600190038181906000526020600020016000905590555050505050565b600061449b61317b565b9050600060016144aa856122f2565b6144b49190615244565b6001600160a01b0390941660009081526020838152604080832087845282528083208690559482526001909301909252502055565b6060826144fe576144f9826145f7565b612571565b815115801561451557506001600160a01b0384163b155b156145355783604051639996b31560e01b8152600401610c459190614797565b5080612571565b6001600160a01b038216614566576000604051633250574960e11b8152600401610c459190614797565b60006145748383600061319f565b90506001600160a01b038116156111145760006040516339e3563760e11b8152600401610c459190614797565b6145ac838383614620565b611114576001600160a01b0383166145da57604051637e27328960e01b815260048101829052602401610c45565b818160405163177e802f60e01b8152600401610c45929190614eab565b8051156146075780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b60006001600160a01b038316158015906132fd5750826001600160a01b0316846001600160a01b0316148061465a575061465a8484612e02565b806132fd5750826001600160a01b031661467383613145565b6001600160a01b031614949350505050565b6040518060800160405280600081526020016060815260200160008152602001600081525090565b60ff8116811461123757600080fd5b600080604083850312156146cf57600080fd5b82356146da816146ad565b946020939093013593505050565b6001600160e01b03198116811461123757600080fd5b60006020828403121561471057600080fd5b8135612571816146e8565b60005b8381101561473657818101518382015260200161471e565b50506000910152565b6000815180845261475781602086016020860161471b565b601f01601f19169290920160200192915050565b602081526000612571602083018461473f565b60006020828403121561479057600080fd5b5035919050565b6001600160a01b0391909116815260200190565b6001600160a01b038116811461123757600080fd5b80356147cb816147ab565b919050565b600080604083850312156147e357600080fd5b82356146da816147ab565b60008060006060848603121561480357600080fd5b833561480e816147ab565b9250602084013561481e816147ab565b929592945050506040919091013590565b6000806040838503121561484257600080fd5b823591506020830135614854816147ab565b809150509250929050565b60006020828403121561487157600080fd5b8135612571816147ab565b6000806040838503121561488f57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156148d7576148d761489e565b60405290565b604051601f8201601f191681016001600160401b03811182821017156149055761490561489e565b604052919050565b600082601f83011261491e57600080fd5b81356001600160401b038111156149375761493761489e565b61494a601f8201601f19166020016148dd565b81815284602083860101111561495f57600080fd5b816020850160208301376000918101602001919091529392505050565b6000806040838503121561498f57600080fd5b823561499a816147ab565b915060208301356001600160401b038111156149b557600080fd5b6149c18582860161490d565b9150509250929050565b6000602082840312156149dd57600080fd5b81356001600160401b038111156149f357600080fd5b6132fd8482850161490d565b801515811461123757600080fd5b600060208284031215614a1f57600080fd5b8135612571816149ff565b600082601f830112614a3b57600080fd5b813560206001600160401b03821115614a5657614a5661489e565b8160051b614a658282016148dd565b9283528481018201928281019087851115614a7f57600080fd5b83870192505b84831015614a9e57823582529183019190830190614a85565b979650505050505050565b600060208284031215614abb57600080fd5b81356001600160401b0380821115614ad257600080fd5b908301906101808286031215614ae757600080fd5b614aef6148b4565b823582811115614afe57600080fd5b614b0a8782860161490d565b825250602083013582811115614b1f57600080fd5b614b2b8782860161490d565b602083015250614b3d604084016147c0565b6040820152614b4e606084016147c0565b6060820152614b5f608084016147c0565b6080820152614b7060a084016147c0565b60a0820152614b8160c084016147c0565b60c082015260e083013560e08201526101008084013583811115614ba457600080fd5b614bb08882870161490d565b8284015250506101208084013583811115614bca57600080fd5b614bd688828701614a2a565b8284015250506101409150614bec8284016147c0565b828201526101609150614c008284016147c0565b91810191909152949350505050565b805182526000602082015160806020850152614c2e608085018261473f565b905060408301516040850152606083015160608501528091505092915050565b6020815260006125716020830184614c0f565b600080600060608486031215614c7657600080fd5b8335614c81816147ab565b95602085013595506040909401359392505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b82811015614ceb57603f19888603018452614cd9858351614c0f565b94509285019290850190600101614cbd565b5092979650505050505050565b60008060408385031215614d0b57600080fd5b8235614d16816147ab565b91506020830135614854816149ff565b600060208284031215614d3857600080fd5b81356001600160401b03811115614d4e57600080fd5b6132fd84828501614a2a565b60008060008060808587031215614d7057600080fd5b8435614d7b816147ab565b93506020850135614d8b816147ab565b92506040850135915060608501356001600160401b03811115614dad57600080fd5b614db98782880161490d565b91505092959194509250565b600060208284031215614dd757600080fd5b8135612571816146ad565b60008060408385031215614df557600080fd5b8235614e00816147ab565b91506020830135614854816147ab565b600080600060608486031215614e2557600080fd5b8335614e30816147ab565b92506020840135614e40816147ab565b915060408401356001600160401b03811115614e5b57600080fd5b614e6786828701614a2a565b9150509250925092565b600181811c90821680614e8557607f821691505b602082108103614ea557634e487b7160e01b600052602260045260246000fd5b50919050565b6001600160a01b03929092168252602082015260400190565b634e487b7160e01b600052601160045260246000fd5b600060018201614eec57614eec614ec4565b5060010190565b80516001600160401b03811681146147cb57600080fd5b600080600080600080600060e0888a031215614f2557600080fd5b8751614f30816147ab565b6020890151909750614f41816146ad565b6040890151909650614f52816149ff565b6060890151909550614f63816149ff565b9350614f7160808901614ef3565b9250614f7f60a08901614ef3565b9150614f8d60c08901614ef3565b905092959891949750929550565b60208082526033908201527f47616c617879204d656d6265723a2063616c6c6572206973206e6f74207468656040820152721037bbb732b91037b3103a3432903a37b5b2b760691b606082015260800190565b60006020828403121561500057600080fd5b5051919050565b80820180821115610d4c57610d4c614ec4565b60006020828403121561502c57600080fd5b8151612571816149ff565b60006020828403121561504957600080fd5b8151612571816147ab565b634e487b7160e01b600052603260045260246000fd5b60208082526023908201527f47616c617879204d656d6265723a204261736520555249206d757374206265206040820152621cd95d60ea1b606082015260800190565b60008083546150bb81614e71565b600182811680156150d357600181146150e857615117565b60ff1984168752821515830287019450615117565b8760005260208060002060005b8581101561510e5781548a8201529084019082016150f5565b50505082870194505b50929695505050505050565b6000825161513581846020870161471b565b9190910192915050565b601f82111561111457600081815260208120601f850160051c810160208610156151665750805b601f850160051c820191505b8181101561216b57828155600101615172565b81516001600160401b0381111561519e5761519e61489e565b6151b2816151ac8454614e71565b8461513f565b602080601f8311600181146151e757600084156151cf5750858301515b600019600386901b1c1916600185901b17855561216b565b600085815260208120601f198616915b82811015615216578886015182559484019460019091019084016151f7565b50858210156152345787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b81810381811115610d4c57610d4c614ec4565b60208082526035908201526000805160206154a383398151915260408201527407573742062652067726561746572207468616e203605c1b606082015260800190565b6001600160401b0391909116815260200190565b60208082526036908201527f47616c6178794d656d6265723a205f7665636861696e4e6f6465732063616e6e6040820152756f7420626520746865207a65726f206164647265737360501b606082015260800190565b600080516020615463833981519152815272037ba1031329033b932b0ba32b9103a3430b71606d1b60208201526000825161534681603385016020870161471b565b9190910160330192915050565b8082028115828204841417610d4c57610d4c614ec4565b815160009082906020808601845b8381101561511757815185529382019390820190600101615378565b600083516153a681846020880161471b565b8351908301906153ba81836020880161471b565b64173539b7b760d91b9101908152600501949350505050565b600060ff821660ff81036153e9576153e9614ec4565b60010192915050565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906154259083018461473f565b9695505050505050565b60006020828403121561544157600080fd5b8151612571816146e8565b634e487b7160e01b600052603160045260246000fdfe47616c6178794d656d6265723a20496e76616c69642073697a652c2063616e6e47616c617879204d656d6265723a204d6178206c6576656c206d75737420626547616c617879204d656d6265723a204233545220746f2075706772616465206dc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e347616c6178794d656d6265723a20696e76616c6964206e6f6465206672656520360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a656af926aa3845d4dc63a6c773ed36f51794728c97ebcd1bf845bcecb16eeb6b7ec2743ecd930b6d8db7bf09a22356b40139ba68f0870c5886000e66cf32e02f5a2646970667358221220bef71205268cb2b2e2d69228a44e4b06621d5807473b5dbee12ae0d7d90d717864736f6c63430008140033