VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0x33196F…5310
Summary
Transactions
Transfers
Address
0x33196F1b73bFeDBfA7f20Aa926a28F4258e25310
VET
0.00
VET
VTHO
0.00
VTHO
Master
0xbf8df3046186c6cB44c25130910B44dA14eAbF58
Deployer
0xbf8df3046186c6cB44c25130910B44dA14eAbF58
Code
0x6080604052600436106102ba5760003560e01c80636c18d1ad1161016e578063bf7e214f116100cb578063ddc632621161007f578063f514e66411610064578063f514e6641461085d578063fbca6ba61461087d578063ff9810991461089d57600080fd5b8063ddc63262146107c8578063e985e9c5146107e857600080fd5b8063c4d66de8116100b0578063c4d66de814610768578063c87b56dd14610788578063cbc95fa7146107a857600080fd5b8063bf7e214f146106fe578063c3629dbe1461074857600080fd5b806395d89b4111610122578063a694fc3a11610107578063a694fc3a14610675578063ad3cb1cc14610695578063b88d4fde146106de57600080fd5b806395d89b4114610640578063a22cb4651461065557600080fd5b80637a9e5e4b116101535780637a9e5e4b146105c55780638456cb59146105e55780638fb36037146105fa57600080fd5b80636c18d1ad1461058f57806370a08231146105a557600080fd5b80632f745c591161021c5780634f1ef286116101d057806352d1902d116101b557806352d1902d146105235780635c975abb146105385780636352211e1461056f57600080fd5b80634f1ef286146104f05780634f6ccce71461050357600080fd5b80634174caf7116102015780634174caf71461049057806342842e0e146104b057806342966c68146104d057600080fd5b80632f745c591461045b5780633f4ba83a1461047b57600080fd5b8063081812fc116102735780630d831203116102585780630d831203146103dd57806318160ddd146103fd57806323b872dd1461043b57600080fd5b8063081812fc1461039d578063095ea7b3146103bd57600080fd5b806301ffc9a7116102a457806301ffc9a71461032b57806306fdde031461035b57806307920da81461037d57600080fd5b8062a5ae21146102bf5780630121b93f14610309575b600080fd5b3480156102cb57600080fd5b506102df6102da3660046150ff565b6108ca565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561031557600080fd5b506103296103243660046150ff565b610a2a565b005b34801561033757600080fd5b5061034b610346366004615146565b610f9d565b6040519015158152602001610300565b34801561036757600080fd5b50610370610fae565b60405161030091906151d1565b34801561038957600080fd5b5061034b6103983660046150ff565b611064565b3480156103a957600080fd5b506102df6103b83660046150ff565b611517565b3480156103c957600080fd5b506103296103d8366004615206565b61156c565b3480156103e957600080fd5b506103296103f83660046150ff565b611577565b34801561040957600080fd5b507f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed02545b604051908152602001610300565b34801561044757600080fd5b50610329610456366004615232565b6115bc565b34801561046757600080fd5b5061042d610476366004615206565b6116ad565b34801561048757600080fd5b50610329611766565b34801561049c57600080fd5b506102df6104ab36600461538d565b611779565b3480156104bc57600080fd5b506103296104cb366004615232565b611786565b3480156104dc57600080fd5b506103296104eb3660046150ff565b6117a6565b6103296104fe3660046153c2565b6117b2565b34801561050f57600080fd5b5061042d61051e3660046150ff565b6117cd565b34801561052f57600080fd5b5061042d611882565b34801561054457600080fd5b507fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033005460ff1661034b565b34801561057b57600080fd5b506102df61058a3660046150ff565b6118b1565b34801561059b57600080fd5b5061042d60015481565b3480156105b157600080fd5b5061042d6105c0366004615412565b6118bc565b3480156105d157600080fd5b506103296105e0366004615412565b61195d565b3480156105f157600080fd5b50610329611a8a565b34801561060657600080fd5b5061060f611a9b565b6040517fffffffff000000000000000000000000000000000000000000000000000000009091168152602001610300565b34801561064c57600080fd5b50610370611b10565b34801561066157600080fd5b5061032961067036600461543d565b611b61565b34801561068157600080fd5b506103296106903660046150ff565b611b6c565b3480156106a157600080fd5b506103706040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b3480156106ea57600080fd5b506103296106f9366004615476565b612082565b34801561070a57600080fd5b507ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a005473ffffffffffffffffffffffffffffffffffffffff166102df565b34801561075457600080fd5b506103296107633660046153c2565b612099565b34801561077457600080fd5b50610329610783366004615412565b6123b2565b34801561079457600080fd5b506103706107a33660046150ff565b6125ce565b3480156107b457600080fd5b506103296107c3366004615580565b6125d9565b3480156107d457600080fd5b506103296107e33660046150ff565b612682565b3480156107f457600080fd5b5061034b610803366004615644565b73ffffffffffffffffffffffffffffffffffffffff91821660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793056020908152604080832093909416825291909152205460ff1690565b34801561086957600080fd5b50610329610878366004615672565b612b9b565b34801561088957600080fd5b506103296108983660046150ff565b612c12565b3480156108a957600080fd5b506108bd6108b83660046150ff565b612c39565b60405161030091906156f5565b60008181526003602052604081205473ffffffffffffffffffffffffffffffffffffffff16806109375760408051808201909152601881527f7462614163636f756e74496d706c656d656e746174696f6e0000000000000000602082015261093490600290612c56565b90505b60408051808201909152600b81527f7462615265676973747279000000000000000000000000000000000000000000602082015261097790600290612c56565b6040517f5e9bc53600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff838116600483015246602483015230604483015260648201869052608482018690529190911690635e9bc5369060a401602060405180830381865afa1580156109ff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a239190615773565b9392505050565b610a37335b600036612c98565b806000610a43826118b1565b73ffffffffffffffffffffffffffffffffffffffff1603610ac5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f5644503a20546f6b656e20646f6573206e6f742065786973740000000000000060448201526064015b60405180910390fd5b6000610ad0836108ca565b90506000610b1d6040518060400160405280600381526020017f676f7600000000000000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b905060008173ffffffffffffffffffffffffffffffffffffffff16639cbe5efd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b909190615790565b905060008273ffffffffffffffffffffffffffffffffffffffff1663eb9019d4858573ffffffffffffffffffffffffffffffffffffffff1663d06efeda866040518263ffffffff1660e01b8152600401610bec91815260200190565b602060405180830381865afa158015610c09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c2d9190615790565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff90921660048301526024820152604401602060405180830381865afa158015610c9b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cbf9190615790565b905080600003610cd157505050505050565b6000610cdc87612e8f565b8051805191925090606090600003610e35576040517f42e654960000000000000000000000000000000000000000000000000000000081526004810186905273ffffffffffffffffffffffffffffffffffffffff8716906342e6549690602401600060405180830381865afa158015610d59573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610d9f91908101906157a9565b80519092508067ffffffffffffffff811115610dbd57610dbd615273565b604051908082528060200260200182016040528015610de6578160200160208202803683370190505b50602085015260005b81811015610e3257610e02826064615869565b85602001518281518110610e1857610e186158a4565b60ff90921660209283029190910190910152600101610def565b50505b610e43848460200151612fa1565b90508673ffffffffffffffffffffffffffffffffffffffff166374420f4c876000888686604051602401610e79939291906158d3565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f53ed6399000000000000000000000000000000000000000000000000000000001790525160e085901b7fffffffff00000000000000000000000000000000000000000000000000000000168152610f2b93929190600090600401615930565b6000604051808303816000875af1158015610f4a573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610f909190810190615976565b50505050505050505b5050565b6000610fa8826130c8565b92915050565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793008054606091908190610fe0906159e4565b80601f016020809104026020016040519081016040528092919081815260200182805461100c906159e4565b80156110595780601f1061102e57610100808354040283529160200191611059565b820191906000526020600020905b81548152906001019060200180831161103c57829003601f168201915b505050505091505090565b600080611070836108ca565b905060006110bd6040518060400160405280600381526020017f676f7600000000000000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b905060008173ffffffffffffffffffffffffffffffffffffffff16639cbe5efd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561110c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111309190615790565b6040517fd06efeda0000000000000000000000000000000000000000000000000000000081526004810182905290915060009073ffffffffffffffffffffffffffffffffffffffff84169063d06efeda90602401602060405180830381865afa1580156111a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c59190615790565b905060006112126040518060400160405280600481526020017f62337472000000000000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015291909116906370a0823190602401602060405180830381865afa158015611280573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112a49190615790565b905060006112f16040518060400160405280600881526020017f72657761726465720000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b73ffffffffffffffffffffffffffffffffffffffff16628f33d7611316600187615a37565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b168152600481019190915273ffffffffffffffffffffffffffffffffffffffff89166024820152604401602060405180830381865afa158015611386573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113aa9190615790565b6040517f438596320000000000000000000000000000000000000000000000000000000081526004810186905273ffffffffffffffffffffffffffffffffffffffff8881166024830152919250600091871690634385963290604401602060405180830381865afa158015611423573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114479190615a4a565b6040517feb9019d400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301526024820187905291925060009188169063eb9019d490604401602060405180830381865afa1580156114c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114e49190615790565b905060008411806114f55750600083115b806115095750600081118015611509575081155b9a9950505050505050505050565b60006115228261311e565b5060008281527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079304602052604090205473ffffffffffffffffffffffffffffffffffffffff16610fa8565b610f9982823361319c565b61158033610a2f565b60018190556040518181527f4b392313c432b5ea962913f39ba6f53a1982c4d5bb7b7ee362825049407bcc8a906020015b60405180910390a150565b73ffffffffffffffffffffffffffffffffffffffff821661160c576040517f64a0ae9200000000000000000000000000000000000000000000000000000000815260006004820152602401610abc565b60006116198383336131a9565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146116a7576040517f64283d7b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80861660048301526024820184905282166044820152606401610abc565b50505050565b60007f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed006116d9846118bc565b8310611730576040517fa57d13dc00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8516600482015260248101849052604401610abc565b73ffffffffffffffffffffffffffffffffffffffff84166000908152602091825260408082208583529092522054905092915050565b61176f33610a2f565b6117776131be565b565b6000610fa8600283612c56565b6117a183838360405180602001604052806000815250612082565b505050565b610f99600082336131a9565b6117ba613255565b6117c382613359565b610f998282613362565b60007f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed006118187f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed025490565b831061185a576040517fa57d13dc0000000000000000000000000000000000000000000000000000000081526000600482015260248101849052604401610abc565b80600201838154811061186f5761186f6158a4565b9060005260206000200154915050919050565b600061188c61349b565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b6000610fa88261311e565b60007f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930073ffffffffffffffffffffffffffffffffffffffff831661192f576040517f89c62b6400000000000000000000000000000000000000000000000000000000815260006004820152602401610abc565b73ffffffffffffffffffffffffffffffffffffffff9092166000908152600390920160205250604090205490565b3361199c7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a005473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611a18576040517f068ca9d800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82166004820152602401610abc565b8173ffffffffffffffffffffffffffffffffffffffff163b600003611a81576040517fc2f31e5e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83166004820152602401610abc565b610f998261350a565b611a9333610a2f565b6117776135a2565b7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a0080546000919074010000000000000000000000000000000000000000900460ff16611ae8576000611b0a565b7f8fb36037000000000000000000000000000000000000000000000000000000005b91505090565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930180546060917f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930091610fe0906159e4565b610f9933838361361b565b611b7533610a2f565b806000611b81826118b1565b73ffffffffffffffffffffffffffffffffffffffff1603611bfe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f5644503a20546f6b656e20646f6573206e6f74206578697374000000000000006044820152606401610abc565b6000611c09836108ca565b90506000611c566040518060400160405280600481526020017f62337472000000000000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015291909116906370a0823190602401602060405180830381865afa158015611cc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ce89190615790565b905060008111611cf85750505050565b8173ffffffffffffffffffffffffffffffffffffffff166374420f4c611d5d6040518060400160405280600481526020017f62337472000000000000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b6000611da86040518060400160405280600481526020017f766f7433000000000000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b60405173ffffffffffffffffffffffffffffffffffffffff909116602482015260448101869052606401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f095ea7b3000000000000000000000000000000000000000000000000000000001790525160e085901b7fffffffff00000000000000000000000000000000000000000000000000000000168152611e8493929190600090600401615930565b6000604051808303816000875af1158015611ea3573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052611ee99190810190615976565b508173ffffffffffffffffffffffffffffffffffffffff166374420f4c611f4f6040518060400160405280600481526020017f766f7433000000000000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b600084604051602401611f6491815260200190565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa694fc3a000000000000000000000000000000000000000000000000000000001790525160e085901b7fffffffff0000000000000000000000000000000000000000000000000000000016815261201693929190600090600401615930565b6000604051808303816000875af1158015612035573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405261207b9190810190615976565b5050505050565b61208d8484846115bc565b6116a78484848461373c565b6000805481806120a883615a67565b9190505590506120b8838261392c565b6120c28183613946565b60408051808201909152601881527f7462614163636f756e74496d706c656d656e746174696f6e0000000000000000602082015261210290600290612c56565b6003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061219c6040518060400160405280600b81526020017f74626152656769737472790000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b6000828152600360205260408082205490517fda7323b300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9182166004820152466024820152306044820152606481018590526084810185905260c060a482015260c4810192909252919091169063da7323b39060e4016020604051808303816000875af1158015612244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122689190615773565b506000612274826108ca565b90508073ffffffffffffffffffffffffffffffffffffffff166374420f4c6122db6040518060400160405280600481526020017f766f7433000000000000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b60405173ffffffffffffffffffffffffffffffffffffffff85166024820152600090604401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f5c19a95c000000000000000000000000000000000000000000000000000000001790525160e085901b7fffffffff0000000000000000000000000000000000000000000000000000000016815261201693929190600090600401615930565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff166000811580156123fd5750825b905060008267ffffffffffffffff16600114801561241a5750303b155b905081158015612428575080155b1561245f576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000016600117855583156124c05784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b6125346040518060400160405280600e81526020017f566544656c6567617465506f6f6c0000000000000000000000000000000000008152506040518060400160405280600381526020017f56445000000000000000000000000000000000000000000000000000000000008152506139b9565b61253c6139cb565b6125446139cb565b61254c6139d3565b612555866139e3565b61255d6139cb565b6125656139cb565b83156125c65784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050565b6060610fa8826139f4565b826125e3816118b1565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612677576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4d75737420626520746f6b656e206f776e6572000000000000000000000000006044820152606401610abc565b6116a7848484613b4e565b61268b33610a2f565b806000612697826118b1565b73ffffffffffffffffffffffffffffffffffffffff1603612714576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f5644503a20546f6b656e20646f6573206e6f74206578697374000000000000006044820152606401610abc565b600061271f836108ca565b9050600061276c6040518060400160405280600381526020017f676f7600000000000000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b9050600060018273ffffffffffffffffffffffffffffffffffffffff16639cbe5efd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156127bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127e19190615790565b6127eb9190615a37565b905060006128386040518060400160405280600881526020017f72657761726465720000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b6040517e8f33d70000000000000000000000000000000000000000000000000000000081526004810184905273ffffffffffffffffffffffffffffffffffffffff8681166024830152919250600091831690628f33d790604401602060405180830381865afa1580156128af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128d39190615790565b9050806000036128e65750505050505050565b6040517fe70eb3920000000000000000000000000000000000000000000000000000000081526004810184905273ffffffffffffffffffffffffffffffffffffffff868116602483015283169063e70eb39290604401600060405180830381600087803b15801561295657600080fd5b505af115801561296a573d6000803e3d6000fd5b505050506000600154612710836129819190615869565b61298b9190615a9f565b905060006129d86040518060400160405280600c81526020017f666565526563697069656e7400000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b90506000821180156129ff575073ffffffffffffffffffffffffffffffffffffffff811615155b15612b90578673ffffffffffffffffffffffffffffffffffffffff166374420f4c612a696040518060400160405280600481526020017f62337472000000000000000000000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b6000612ab46040518060400160405280600c81526020017f666565526563697069656e7400000000000000000000000000000000000000008152506002612c5690919063ffffffff16565b60405173ffffffffffffffffffffffffffffffffffffffff909116602482015260448101879052606401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f6dbbda0d000000000000000000000000000000000000000000000000000000001790525160e085901b7fffffffff00000000000000000000000000000000000000000000000000000000168152610f2b93929190600090600401615930565b505050505050505050565b612ba433610a2f565b612bb060028383613c31565b81604051612bbe9190615ab6565b60405190819003812073ffffffffffffffffffffffffffffffffffffffff83168252907f730d2c947df3fb4e9d1b8da26c871ddd4d9aa91d7436a0419317f40cc3f8cc3a9060200160405180910390a25050565b612c1b33610a2f565b612c2481612682565b612c2d81611b6c565b612c3681610a2a565b50565b6040805180820190915260608082526020820152610fa882612e8f565b60008260000182604051612c6a9190615ab6565b9081526040519081900360200190205473ffffffffffffffffffffffffffffffffffffffff16905092915050565b7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00600080612d1b612cfd7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a005473ffffffffffffffffffffffffffffffffffffffff1690565b8730612d0d600460008a8c615ad2565b612d1691615afc565b613c9d565b91509150816125c65763ffffffff811615612e455782547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1674010000000000000000000000000000000000000000178355612dab7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a005473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff166394c7d7ee8787876040518463ffffffff1660e01b8152600401612de793929190615b44565b600060405180830381600087803b158015612e0157600080fd5b505af1158015612e15573d6000803e3d6000fd5b505084547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff168555506125c69050565b6040517f068ca9d800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87166004820152602401610abc565b6040805180820182526060808252602080830182905260008581527f69be37ed5b6c548562e97f7c47276cef4e7888d82fab4dcfcf27c5953adc2600825284902084518154928302810184018652948501828152939493909284928491840182828015612f1b57602002820191906000526020600020905b815481526020019060010190808311612f07575b5050505050815260200160018201805480602002602001604051908101604052809291908181526020018280548015612f9157602002820191906000526020600020906000905b825461010083900a900460ff16815260206001928301818104948501949093039092029101808411612f625790505b5050505050815250509050919050565b6060815167ffffffffffffffff811115612fbd57612fbd615273565b604051908082528060200260200182016040528015612fe6578160200160208202803683370190505b5090506000805b835181101561307757606484828151811061300a5761300a6158a4565b602002602001015160ff16866130209190615a9f565b61302a9190615869565b83828151811061303c5761303c6158a4565b60200260200101818152505082818151811061305a5761305a6158a4565b60200260200101518261306d9190615bae565b9150600101612fed565b50838110156130c15761308a8185615a37565b82600184516130999190615a37565b815181106130a9576130a96158a4565b602002602001018181516130bd9190615bae565b9052505b5092915050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f49064906000000000000000000000000000000000000000000000000000000001480610fa85750610fa882613e1a565b60008181527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079302602052604081205473ffffffffffffffffffffffffffffffffffffffff1680610fa8576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101849052602401610abc565b6117a18383836001613e70565b60006131b684848461407c565b949350505050565b6131c6614091565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f0330080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001681557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016115b1565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000033196f1b73bfedbfa7f20aa926a28f4258e2531016148061332257507f00000000000000000000000033196f1b73bfedbfa7f20aa926a28f4258e2531073ffffffffffffffffffffffffffffffffffffffff166133097f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614155b15611777576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612c3633610a2f565b8173ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156133e7575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526133e491810190615790565b60015b613435576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83166004820152602401610abc565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8114613491576040517faa1d49a400000000000000000000000000000000000000000000000000000000815260048101829052602401610abc565b6117a183836140ec565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000033196f1b73bfedbfa7f20aa926a28f4258e253101614611777576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00805473ffffffffffffffffffffffffffffffffffffffff83167fffffffffffffffffffffffff00000000000000000000000000000000000000009091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b6135aa61414f565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f0330080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011781557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833613230565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930073ffffffffffffffffffffffffffffffffffffffff83166136a1576040517f5b08ba1800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84166004820152602401610abc565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260058401602090815260408083209488168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001687151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a350505050565b73ffffffffffffffffffffffffffffffffffffffff83163b156116a7576040517f150b7a0200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84169063150b7a02906137b1903390889087908790600401615bc1565b6020604051808303816000875af192505050801561380a575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820190925261380791810190615c0a565b60015b613899573d808015613838576040519150601f19603f3d011682016040523d82523d6000602084013e61383d565b606091505b508051600003613891576040517f64a0ae9200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602401610abc565b805181602001fd5b7fffffffff0000000000000000000000000000000000000000000000000000000081167f150b7a02000000000000000000000000000000000000000000000000000000001461207b576040517f64a0ae9200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602401610abc565b610f998282604051806020016040528060008152506141ab565b60008281527f0542a41881ee128a365a727b282c86fa859579490b9bb45aab8503648c8e7900602081905260409091206139808382615c6f565b506040518381527ff8e1a15aba9398e019f0b49df1a4fde98ee17ae345cb5f6b5e2c27f5033e8ce79060200160405180910390a1505050565b6139c16141c2565b610f998282614229565b6117776141c2565b6139db6141c2565b61177761426c565b6139eb6141c2565b612c36816142bd565b60607f0542a41881ee128a365a727b282c86fa859579490b9bb45aab8503648c8e7900613a208361311e565b5060008381526020829052604081208054613a3a906159e4565b80601f0160208091040260200160405190810160405280929190818152602001828054613a66906159e4565b8015613ab35780601f10613a8857610100808354040283529160200191613ab3565b820191906000526020600020905b815481529060010190602001808311613a9657829003601f168201915b505050505090506000613af660408051808201909152601681527f68747470733a2f2f766544656c65676174652e76657400000000000000000000602082015290565b90508051600003613b0957509392505050565b815115613b3c578082604051602001613b23929190615d89565b6040516020818303038152906040529350505050919050565b613b45856142ce565b95945050505050565b8051825114613bb9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f566f7465734c69623a204c656e677468206d69736d61746368000000000000006044820152606401610abc565b604051806040016040528083815260200182815250613bf57f69be37ed5b6c548562e97f7c47276cef4e7888d82fab4dcfcf27c5953adc260090565b6000858152602091825260409020825180519192613c1892849290910190615002565b5060208281015180516125c6926001850192019061504d565b808360000183604051613c449190615ab6565b908152604051908190036020019020805473ffffffffffffffffffffffffffffffffffffffff929092167fffffffffffffffffffffffff0000000000000000000000000000000000000000909216919091179055505050565b60405173ffffffffffffffffffffffffffffffffffffffff848116602483015283811660448301527fffffffff0000000000000000000000000000000000000000000000000000000083166064830152600091829182918291891690608401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb70096130000000000000000000000000000000000000000000000000000000017905251613d7d9190615ab6565b600060405180830381855afa9150503d8060008114613db8576040519150601f19603f3d011682016040523d82523d6000602084013e613dbd565b606091505b50915091508115613e0f576040815110613def5780806020019051810190613de59190615db8565b9094509250613e0f565b6020815110613e0f5780806020019051810190613e0c9190615a4a565b93505b505094509492505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f780e9d63000000000000000000000000000000000000000000000000000000001480610fa85750610fa882614367565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793008180613eb2575073ffffffffffffffffffffffffffffffffffffffff831615155b15614026576000613ec28561311e565b905073ffffffffffffffffffffffffffffffffffffffff841615801590613f1557508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b8015613f73575073ffffffffffffffffffffffffffffffffffffffff80821660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079305602090815260408083209388168352929052205460ff16155b15613fc2576040517fa9fbf51f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602401610abc565b821561402457848673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b600093845260040160205250506040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600061408661414f565b6131b684848461444a565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033005460ff16611777576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6140f5826145a3565b60405173ffffffffffffffffffffffffffffffffffffffff8316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115614147576117a18282614672565b610f996146ec565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033005460ff1615611777576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6141b58383614724565b6117a1600084848461373c565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff16611777576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6142316141c2565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793008061425d8482615c6f565b50600181016116a78382615c6f565b6142746141c2565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f0330080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b6142c56141c2565b612c368161350a565b60606142d98261311e565b50600061431660408051808201909152601681527f68747470733a2f2f766544656c65676174652e76657400000000000000000000602082015290565b905060008151116143365760405180602001604052806000815250610a23565b80614340846147d5565b604051602001614351929190615d89565b6040516020818303038152906040529392505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f80ac58cd0000000000000000000000000000000000000000000000000000000014806143fa57507fffffffff0000000000000000000000000000000000000000000000000000000082167f5b5e139f00000000000000000000000000000000000000000000000000000000145b80610fa857507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610fa8565b600080614458858585614893565b905073ffffffffffffffffffffffffffffffffffffffff8116614500576144fb847f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed02805460008381527f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0360205260408120829055600182018355919091527fa42f15e5d656f8155fd7419d740a6073999f19cd6e061449ce4a257150545bf20155565b61453d565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461453d5761453d8185614a58565b73ffffffffffffffffffffffffffffffffffffffff85166145665761456184614b28565b6131b6565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146131b6576131b68585614c23565b8073ffffffffffffffffffffffffffffffffffffffff163b60000361460c576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82166004820152602401610abc565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60606000808473ffffffffffffffffffffffffffffffffffffffff168460405161469c9190615ab6565b600060405180830381855af49150503d80600081146146d7576040519150601f19603f3d011682016040523d82523d6000602084013e6146dc565b606091505b5091509150613b45858383614c9d565b3415611777576040517fb398979f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8216614774576040517f64a0ae9200000000000000000000000000000000000000000000000000000000815260006004820152602401610abc565b6000614782838360006131a9565b905073ffffffffffffffffffffffffffffffffffffffff8116156117a1576040517f73c6ac6e00000000000000000000000000000000000000000000000000000000815260006004820152602401610abc565b606060006147e283614d2c565b600101905060008167ffffffffffffffff81111561480257614802615273565b6040519080825280601f01601f19166020018201604052801561482c576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a850494508461483657509392505050565b60008281527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930260205260408120547f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793009073ffffffffffffffffffffffffffffffffffffffff9081169084161561490e5761490e818587614e0e565b73ffffffffffffffffffffffffffffffffffffffff81161561498657614938600086600080613e70565b73ffffffffffffffffffffffffffffffffffffffff81166000908152600383016020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190555b73ffffffffffffffffffffffffffffffffffffffff8616156149d15773ffffffffffffffffffffffffffffffffffffffff861660009081526003830160205260409020805460010190555b600085815260028301602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8a811691821790925591518893918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a495945050505050565b7f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed006000614a84846118bc565b6000848152600184016020526040902054909150808214614ae65773ffffffffffffffffffffffffffffffffffffffff851660009081526020848152604080832085845282528083205484845281842081905583526001860190915290208190555b506000928352600182016020908152604080852085905573ffffffffffffffffffffffffffffffffffffffff9095168452918252838320908352905290812055565b7f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed02547f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0090600090614b7b90600190615a37565b6000848152600384016020526040812054600285018054939450909284908110614ba757614ba76158a4565b9060005260206000200154905080846002018381548110614bca57614bca6158a4565b600091825260208083209091019290925582815260038601909152604080822084905586825281205560028401805480614c0657614c06615df0565b600190038181906000526020600020016000905590555050505050565b7f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0060006001614c51856118bc565b614c5b9190615a37565b73ffffffffffffffffffffffffffffffffffffffff90941660009081526020838152604080832087845282528083208690559482526001909301909252502055565b606082614cb257614cad82614ebe565b610a23565b8151158015614cd6575073ffffffffffffffffffffffffffffffffffffffff84163b155b15614d25576040517f9996b31500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602401610abc565b5080610a23565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310614d75577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310614da1576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310614dbf57662386f26fc10000830492506010015b6305f5e1008310614dd7576305f5e100830492506008015b6127108310614deb57612710830492506004015b60648310614dfd576064830492506002015b600a8310610fa85760010192915050565b614e19838383614f00565b6117a15773ffffffffffffffffffffffffffffffffffffffff8316614e6d576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101829052602401610abc565b6040517f177e802f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8316600482015260248101829052604401610abc565b805115614ece5780518082602001fd5b6040517f1425ea4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff8316158015906131b657508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480614fad575073ffffffffffffffffffffffffffffffffffffffff80851660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079305602090815260408083209387168352929052205460ff165b806131b657505060009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079304602052604090205473ffffffffffffffffffffffffffffffffffffffff908116911614919050565b82805482825590600052602060002090810192821561503d579160200282015b8281111561503d578251825591602001919060010190615022565b506150499291506150ea565b5090565b82805482825590600052602060002090601f0160209004810192821561503d5791602002820160005b838211156150b457835183826101000a81548160ff021916908360ff1602179055509260200192600101602081600001049283019260010302615076565b80156150e15782816101000a81549060ff02191690556001016020816000010492830192600103026150b4565b50506150499291505b5b8082111561504957600081556001016150eb565b60006020828403121561511157600080fd5b5035919050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612c3657600080fd5b60006020828403121561515857600080fd5b8135610a2381615118565b60005b8381101561517e578181015183820152602001615166565b50506000910152565b6000815180845261519f816020860160208601615163565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610a236020830184615187565b73ffffffffffffffffffffffffffffffffffffffff81168114612c3657600080fd5b6000806040838503121561521957600080fd5b8235615224816151e4565b946020939093013593505050565b60008060006060848603121561524757600080fd5b8335615252816151e4565b92506020840135615262816151e4565b929592945050506040919091013590565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156152e9576152e9615273565b604052919050565b600067ffffffffffffffff82111561530b5761530b615273565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f83011261534857600080fd5b813561535b615356826152f1565b6152a2565b81815284602083860101111561537057600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561539f57600080fd5b813567ffffffffffffffff8111156153b657600080fd5b6131b684828501615337565b600080604083850312156153d557600080fd5b82356153e0816151e4565b9150602083013567ffffffffffffffff8111156153fc57600080fd5b61540885828601615337565b9150509250929050565b60006020828403121561542457600080fd5b8135610a23816151e4565b8015158114612c3657600080fd5b6000806040838503121561545057600080fd5b823561545b816151e4565b9150602083013561546b8161542f565b809150509250929050565b6000806000806080858703121561548c57600080fd5b8435615497816151e4565b935060208501356154a7816151e4565b925060408501359150606085013567ffffffffffffffff8111156154ca57600080fd5b6154d687828801615337565b91505092959194509250565b600067ffffffffffffffff8211156154fc576154fc615273565b5060051b60200190565b600082601f83011261551757600080fd5b81356020615527615356836154e2565b8083825260208201915060208460051b87010193508684111561554957600080fd5b602086015b8481101561557557803560ff811681146155685760008081fd5b835291830191830161554e565b509695505050505050565b60008060006060848603121561559557600080fd5b8335925060208085013567ffffffffffffffff808211156155b557600080fd5b818701915087601f8301126155c957600080fd5b81356155d7615356826154e2565b81815260059190911b8301840190848101908a8311156155f657600080fd5b938501935b82851015615614578435825293850193908501906155fb565b96505050604087013592508083111561562c57600080fd5b505061563a86828701615506565b9150509250925092565b6000806040838503121561565757600080fd5b8235615662816151e4565b9150602083013561546b816151e4565b6000806040838503121561568557600080fd5b823567ffffffffffffffff81111561569c57600080fd5b6156a885828601615337565b925050602083013561546b816151e4565b60008151808452602080850194506020840160005b838110156156ea578151875295820195908201906001016156ce565b509495945050505050565b60006020808352835160408285015261571160608501826156b9565b858301518582037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0016040870152805180835290840192506000918401905b8083101561557557835160ff168252928401926001929092019190840190615750565b60006020828403121561578557600080fd5b8151610a23816151e4565b6000602082840312156157a257600080fd5b5051919050565b600060208083850312156157bc57600080fd5b825167ffffffffffffffff8111156157d357600080fd5b8301601f810185136157e457600080fd5b80516157f2615356826154e2565b81815260059190911b8201830190838101908783111561581157600080fd5b928401925b8284101561582f57835182529284019290840190615816565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008261589f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b83815260006020606060208401526158ee60608401866156b9565b83810360408501528451808252602080870192019060005b8181101561592257835183529284019291840191600101615906565b509098975050505050505050565b73ffffffffffffffffffffffffffffffffffffffff851681528360208201526080604082015260006159656080830185615187565b905082606083015295945050505050565b60006020828403121561598857600080fd5b815167ffffffffffffffff81111561599f57600080fd5b8201601f810184136159b057600080fd5b80516159be615356826152f1565b8181528560208385010111156159d357600080fd5b613b45826020830160208601615163565b600181811c908216806159f857607f821691505b602082108103615a31577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b81810381811115610fa857610fa861583a565b600060208284031215615a5c57600080fd5b8151610a238161542f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203615a9857615a9861583a565b5060010190565b8082028115828204841417610fa857610fa861583a565b60008251615ac8818460208701615163565b9190910192915050565b60008085851115615ae257600080fd5b83861115615aef57600080fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015615b3c5780818660040360031b1b83161692505b505092915050565b73ffffffffffffffffffffffffffffffffffffffff8416815260406020820152816040820152818360608301376000818301606090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016010192915050565b80820180821115610fa857610fa861583a565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525083604083015260806060830152615c006080830184615187565b9695505050505050565b600060208284031215615c1c57600080fd5b8151610a2381615118565b601f8211156117a1576000816000526020600020601f850160051c81016020861015615c505750805b601f850160051c820191505b818110156125c657828155600101615c5c565b815167ffffffffffffffff811115615c8957615c89615273565b615c9d81615c9784546159e4565b84615c27565b602080601f831160018114615cf05760008415615cba5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556125c6565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015615d3d57888601518255948401946001909101908401615d1e565b5085821015615d7957878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b60008351615d9b818460208801615163565b835190830190615daf818360208801615163565b01949350505050565b60008060408385031215615dcb57600080fd5b8251615dd68161542f565b602084015190925063ffffffff8116811461546b57600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea2646970667358221220763cedfec9b68fe2e6686ffc7b654eaea1096c4ff7a639027db799273a2fb0b364736f6c63430008180033