Sourcify does not support chain 5042, so no source can be fetched or submitted for it.
API19 447 байт (19,0 КБ)
Исходный код этого контракта не опубликован
Sourcify не поддерживает цепь 5042, поэтому исходник для неё нельзя ни получить, ни отправить. Байткод ниже — это доступный первоисточник.
Для этого контракта нет доступного ABI
ABI задаёт имена функций и событий и описывает кодирование их аргументов. Он приходит из проверенного исходника — поэтому «Чтение контракта» и «Запись в контракт» для этого адреса нечего перечислять.
Для декодирования аргументов конструктора нужен проверенный ABI
Закодированные аргументы — это хвостовые байты calldata развёртывания выше. Чтобы дать им имена и типы, нужен ABI, а он приходит вместе с верификацией.
Адрес — это 20-байтовый идентификатор, который может хранить баланс и, если содержит код, исполнять его. Газ в Arc оплачивается в USDC, поэтому баланс адреса выражен в долларах, а не в волатильном активе.
Calldata транзакции развёртывания — 21 261 байт (20,8 КБ). Это конструктор плюс возвращаемый им runtime-код, а аргументы конструктора, если они есть, идут в конце.
0x608060405234801562000010575f80fd5b50604051620052cd380380620052cd83398181016040528101906200003691906200030f565b336040518060400160405280600681526020017f646f7461726300000000000000000000000000000000000000000000000000008152506040518060400160405280600681526020017f444f544152430000000000000000000000000000000000000000000000000000815250815f9081620000b39190620005b8565b508060019081620000c59190620005b8565b5050505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036200013b575f6040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401620001329190620006ad565b60405180910390fd5b6200014c816200019c60201b60201c565b5081600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600c819055505050620006c8565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6200028e8262000263565b9050919050565b5f620002a18262000282565b9050919050565b620002b38162000295565b8114620002be575f80fd5b50565b5f81519050620002d181620002a8565b92915050565b5f819050919050565b620002eb81620002d7565b8114620002f6575f80fd5b50565b5f815190506200030981620002e0565b92915050565b5f80604083850312156200032857620003276200025f565b5b5f6200033785828601620002c1565b92505060206200034a85828601620002f9565b9150509250929050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680620003d057607f821691505b602082108103620003e657620003e56200038b565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026200044a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200040d565b6200045686836200040d565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f620004a06200049a62000494846200046e565b62000477565b6200046e565b9050919050565b5f819050919050565b620004bb8362000480565b620004d3620004ca82620004a7565b84845462000419565b825550505050565b5f90565b620004e9620004db565b620004f6818484620004b0565b505050565b5b818110156200051d57620005115f82620004df565b600181019050620004fc565b5050565b601f8211156200056c576200053681620003ec565b6200054184620003fe565b8101602085101562000551578190505b620005696200056085620003fe565b830182620004fb565b50505b505050565b5f82821c905092915050565b5f6200058e5f198460080262000571565b1980831691505092915050565b5f620005a883836200057d565b9150826002028217905092915050565b620005c38262000354565b67ffffffffffffffff811115620005df57620005de6200035e565b5b620005eb8254620003b8565b620005f882828562000521565b5f60209050601f8311600181146200062e575f841562000619578287015190505b6200062585826200059b565b86555062000694565b601f1984166200063e86620003ec565b5f5b82811015620006675784890151825560018201915060208501945060208101905062000640565b8683101562000687578489015162000683601f8916826200057d565b8355505b6001600288020188555050505b505050505050565b620006a78162000282565b82525050565b5f602082019050620006c25f8301846200069c565b92915050565b614bf780620006d65f395ff3fe608060405234801561000f575f80fd5b50600436106101c2575f3560e01c8063828eab0e116100f7578063c87b56dd11610095578063e1bbebcb1161006f578063e1bbebcb14610502578063e985e9c514610532578063f2fde38b14610562578063f77c47911461057e576101c2565b8063c87b56dd14610498578063cf6c4596146104c8578063ddf7fcb0146104e4576101c2565b806395d89b41116100d157806395d89b4114610426578063a22cb46514610444578063b88d4fde14610460578063c66485b21461047c576101c2565b8063828eab0e146103ce5780638da5cb5b146103ec57806392eefe9b1461040a576101c2565b806342842e0e116101645780636352211e1161013e5780636352211e1461034657806370a0823114610376578063715018a6146103a65780637b103999146103b0576101c2565b806342842e0e146102ca5780634622ab03146102e65780634f6ccce714610316576101c2565b8063095ea7b3116101a0578063095ea7b31461024457806318160ddd1461026057806323b872dd1461027e5780632f745c591461029a576101c2565b806301ffc9a7146101c657806306fdde03146101f6578063081812fc14610214575b5f80fd5b6101e060048036038101906101db9190612f9c565b61059c565b6040516101ed9190612fe1565b60405180910390f35b6101fe6105ad565b60405161020b9190613084565b60405180910390f35b61022e600480360381019061022991906130d7565b61063c565b60405161023b9190613141565b60405180910390f35b61025e60048036038101906102599190613184565b610657565b005b61026861066d565b60405161027591906131d1565b60405180910390f35b610298600480360381019061029391906131ea565b610679565b005b6102b460048036038101906102af9190613184565b610778565b6040516102c191906131d1565b60405180910390f35b6102e460048036038101906102df91906131ea565b61081c565b005b61030060048036038101906102fb91906130d7565b61083b565b60405161030d9190613084565b60405180910390f35b610330600480360381019061032b91906130d7565b6108d6565b60405161033d91906131d1565b60405180910390f35b610360600480360381019061035b91906130d7565b610948565b60405161036d9190613141565b60405180910390f35b610390600480360381019061038b919061323a565b610959565b60405161039d91906131d1565b60405180910390f35b6103ae610a0f565b005b6103b8610a22565b6040516103c591906132c0565b60405180910390f35b6103d6610a47565b6040516103e39190613141565b60405180910390f35b6103f4610a6c565b6040516104019190613141565b60405180910390f35b610424600480360381019061041f919061323a565b610a94565b005b61042e610adf565b60405161043b9190613084565b60405180910390f35b61045e60048036038101906104599190613303565b610b6f565b005b61047a6004803603810190610475919061346d565b610b85565b005b6104966004803603810190610491919061323a565b610baa565b005b6104b260048036038101906104ad91906130d7565b610bf5565b6040516104bf9190613084565b60405180910390f35b6104e260048036038101906104dd91906135be565b610d99565b005b6104ec6112fe565b6040516104f99190613639565b60405180910390f35b61051c6004803603810190610517919061323a565b611304565b6040516105299190613755565b60405180910390f35b61054c60048036038101906105479190613775565b611449565b6040516105599190612fe1565b60405180910390f35b61057c6004803603810190610577919061323a565b6114d7565b005b61058661155b565b6040516105939190613141565b60405180910390f35b5f6105a682611580565b9050919050565b60605f80546105bb906137e0565b80601f01602080910402602001604051908101604052809291908181526020018280546105e7906137e0565b80156106325780601f1061060957610100808354040283529160200191610632565b820191905f5260205f20905b81548152906001019060200180831161061557829003601f168201915b5050505050905090565b5f610646826115f9565b506106508261167f565b9050919050565b61066982826106646116b8565b6116bf565b5050565b5f600880549050905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036106e9575f6040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016106e09190613141565b60405180910390fd5b5f6106fc83836106f76116b8565b6116d1565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610772578382826040517f64283d7b00000000000000000000000000000000000000000000000000000000815260040161076993929190613810565b60405180910390fd5b50505050565b5f61078283610959565b82106107c75782826040517fa57d13dc0000000000000000000000000000000000000000000000000000000081526004016107be929190613845565b60405180910390fd5b60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f2054905092915050565b61083683838360405180602001604052805f815250610b85565b505050565b600e602052805f5260405f205f915090508054610857906137e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610883906137e0565b80156108ce5780601f106108a5576101008083540402835291602001916108ce565b820191905f5260205f20905b8154815290600101906020018083116108b157829003601f168201915b505050505081565b5f6108df61066d565b8210610924575f826040517fa57d13dc00000000000000000000000000000000000000000000000000000000815260040161091b929190613845565b60405180910390fd5b600882815481106109385761093761386c565b5b905f5260205f2001549050919050565b5f610952826115f9565b9050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036109ca575f6040517f89c62b640000000000000000000000000000000000000000000000000000000081526004016109c19190613141565b60405180910390fd5b60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610a176116e6565b610a205f61176d565b565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610a9c6116e6565b80600d5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b606060018054610aee906137e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610b1a906137e0565b8015610b655780601f10610b3c57610100808354040283529160200191610b65565b820191905f5260205f20905b815481529060010190602001808311610b4857829003601f168201915b5050505050905090565b610b81610b7a6116b8565b8383611830565b5050565b610b90848484610679565b610ba4610b9b6116b8565b85858585611a09565b50505050565b610bb26116e6565b80600f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60605f73ffffffffffffffffffffffffffffffffffffffff16610c1783611bb5565b73ffffffffffffffffffffffffffffffffffffffff1603610c6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6490613909565b60405180910390fd5b5f600e5f8481526020019081526020015f208054610c8a906137e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610cb6906137e0565b8015610d015780601f10610cd857610100808354040283529160200191610d01565b820191905f5260205f20905b815481529060010190602001808311610ce457829003601f168201915b505050505090505f610d1282611bee565b90505f610d1e83611d7b565b90505f610d2a82611f2c565b90505f610d6b85610d3a8561203b565b84610d4488612105565b604051602001610d579493929190613cdd565b604051602081830303815290604052612105565b905080604051602001610d7e9190613ddd565b60405160208183030381529060405295505050505050919050565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1f90613e48565b60405180910390fd5b5f835f1c90505f73ffffffffffffffffffffffffffffffffffffffff16610e4e82611bb5565b73ffffffffffffffffffffffffffffffffffffffff1614610ea4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e9b90613eb0565b60405180910390fd5b610eae8382612118565b81600e5f8381526020019081526020015f209081610ecc9190614062565b505f73ffffffffffffffffffffffffffffffffffffffff16600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611256575f600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab5923600c5487306040518463ffffffff1660e01b8152600401610f8293929190614131565b6020604051808303815f875af1158015610f9e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fc2919061417a565b9050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631896f70a82600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff1660e01b81526004016110419291906141a5565b5f604051808303815f87803b158015611058575f80fd5b505af115801561106a573d5f803e3d5ffd5b505050505f600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682866040516024016110ba9291906141a5565b6040516020818303038152906040527fd5fa2b00000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516111449190614210565b5f604051808303815f865af19150503d805f811461117d576040519150601f19603f3d011682016040523d82523d5f602084013e611182565b606091505b50509050806111c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111bd90614270565b60405180910390fd5b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635b0fc9c383876040518363ffffffff1660e01b81526004016112229291906141a5565b5f604051808303815f87803b158015611239575f80fd5b505af115801561124b573d5f803e3d5ffd5b5050505050506112f8565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab5923600c5486866040518463ffffffff1660e01b81526004016112b693929190614131565b6020604051808303815f875af11580156112d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112f6919061417a565b505b50505050565b600c5481565b60605f61131083610959565b90505f8167ffffffffffffffff81111561132d5761132c613349565b5b60405190808252806020026020018201604052801561136057816020015b606081526020019060019003908161134b5790505b5090505f5b8281101561143e575f6113788683610778565b9050600e5f8281526020019081526020015f208054611396906137e0565b80601f01602080910402602001604051908101604052809291908181526020018280546113c2906137e0565b801561140d5780601f106113e45761010080835404028352916020019161140d565b820191905f5260205f20905b8154815290600101906020018083116113f057829003601f168201915b50505050508383815181106114255761142461386c565b5b6020026020010181905250508080600101915050611365565b508092505050919050565b5f60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b6114df6116e6565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361154f575f6040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016115469190613141565b60405180910390fd5b6115588161176d565b50565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f7f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806115f257506115f182612135565b5b9050919050565b5f8061160483611bb5565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361167657826040517f7e27328900000000000000000000000000000000000000000000000000000000815260040161166d91906131d1565b60405180910390fd5b80915050919050565b5f60045f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f33905090565b6116cc8383836001612216565b505050565b5f6116dd8484846123d5565b90509392505050565b6116ee6116b8565b73ffffffffffffffffffffffffffffffffffffffff1661170c610a6c565b73ffffffffffffffffffffffffffffffffffffffff161461176b5761172f6116b8565b6040517f118cdaa70000000000000000000000000000000000000000000000000000000081526004016117629190613141565b60405180910390fd5b565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118a0575f6040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526004016118979190613141565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361191057816040517f5b08ba180000000000000000000000000000000000000000000000000000000081526004016119079190613141565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516119fc9190612fe1565b60405180910390a3505050565b5f8373ffffffffffffffffffffffffffffffffffffffff163b1115611bae578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02868685856040518563ffffffff1660e01b8152600401611a6794939291906142d6565b6020604051808303815f875af1925050508015611aa257506040513d601f19601f82011682018060405250810190611a9f9190614334565b60015b611b23573d805f8114611ad0576040519150601f19603f3d011682016040523d82523d5f602084013e611ad5565b606091505b505f815103611b1b57836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401611b129190613141565b60405180910390fd5b805160208201fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614611bac57836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401611ba39190613141565b60405180910390fd5b505b5050505050565b5f60025f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60605f611bfa83611d7b565b90505f6040518060400160405280600481526020017f333270780000000000000000000000000000000000000000000000000000000081525090505f60405180602001604052805f81525090506019831115611ca8576040518060400160405280600481526020017f31347078000000000000000000000000000000000000000000000000000000008152509150604051806060016040528060318152602001614b91603191399050611d4d565b6010831115611d09576040518060400160405280600481526020017f31387078000000000000000000000000000000000000000000000000000000008152509150604051806060016040528060318152602001614b91603191399050611d4c565b600b831115611d4b576040518060400160405280600481526020017f323470780000000000000000000000000000000000000000000000000000000081525091505b5b5b818186604051602001611d6293929190614937565b6040516020818303038152906040529350505050919050565b5f805f80845190505f92505b80821015611f21575f858381518110611da357611da261386c565b5b602001015160f81c60f81b9050608060f81b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015611df257600183611deb9190614a18565b9250611f0d565b60e060f81b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015611e3457600283611e2d9190614a18565b9250611f0c565b60f060f81b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015611e7657600383611e6f9190614a18565b9250611f0b565b60f8801b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015611eb757600483611eb09190614a18565b9250611f0a565b60fc60f81b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015611ef957600583611ef29190614a18565b9250611f09565b600683611f069190614a18565b92505b5b5b5b5b508280611f1990614a4b565b935050611d87565b829350505050919050565b606060028211611f73576040518060400160405280600981526020017f4c6567656e6461727900000000000000000000000000000000000000000000008152509050612036565b60038203611fb8576040518060400160405280600481526020017f52617265000000000000000000000000000000000000000000000000000000008152509050612036565b60048203611ffd576040518060400160405280600881526020017f556e636f6d6d6f6e0000000000000000000000000000000000000000000000008152509050612036565b6040518060400160405280600881526020017f5374616e6461726400000000000000000000000000000000000000000000000081525090505b919050565b60605f6001612049846124ef565b0190505f8167ffffffffffffffff81111561206757612066613349565b5b6040519080825280601f01601f1916602001820160405280156120995781602001600182028036833780820191505090505b5090505f82602083010190505b6001156120fa578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816120ef576120ee614a92565b5b0494505f85036120a6575b819350505050919050565b6060612111825f612640565b9050919050565b612131828260405180602001604052805f8152506127ca565b5050565b5f7f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806121ff57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061220f575061220e826127ed565b5b9050919050565b808061224e57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15612380575f61225d846115f9565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156122c757508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b80156122da57506122d88184611449565b155b1561231c57826040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526004016123139190613141565b60405180910390fd5b811561237e57838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b8360045f8581526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b5f806123e2858585612856565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036124255761242084612a61565b612464565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614612463576124628185612aa5565b5b5b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036124a5576124a084612b7c565b6124e4565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146124e3576124e28585612c3c565b5b5b809150509392505050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000831061254b577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161254157612540614a92565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310612588576d04ee2d6d415b85acef8100000000838161257e5761257d614a92565b5b0492506020810190505b662386f26fc1000083106125b757662386f26fc1000083816125ad576125ac614a92565b5b0492506010810190505b6305f5e10083106125e0576305f5e10083816125d6576125d5614a92565b5b0492506008810190505b61271083106126055761271083816125fb576125fa614a92565b5b0492506004810190505b60648310612628576064838161261e5761261d614a92565b5b0492506002810190505b600a8310612637576001810190505b80915050919050565b60605f8351036126605760405180602001604052805f81525090506127c4565b5f82612691576003600285516126769190614a18565b6126809190614abf565b600461268c9190614aef565b6126b8565b60036002855160046126a39190614aef565b6126ad9190614a18565b6126b79190614abf565b5b905060405191507f4142434445464748494a4b4c4d4e4f505152535455565758595a616263646566601f5261067083027f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f18603f526020820181810185865187016020810180515f82525b82841015612776576003840193508351603f8160121c16518753600187019650603f81600c1c16518753600187019650603f8160061c16518753600187019650603f811651875360018701965050612723565b808252886127b55760038a51066001811461279857600281146127ab576127b3565b603d6001880353603d60028803536127b3565b603d60018803535b505b86885284604052505050505050505b92915050565b6127d48383612cc0565b6127e86127df6116b8565b5f858585611a09565b505050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f8061286184611bb5565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146128a2576128a1818486612db3565b5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461292d576128e15f855f80612216565b600160035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825403925050819055505b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146129ac57600160035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8460025f8681526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b60088054905060095f8381526020019081526020015f2081905550600881908060018154018082558091505060019003905f5260205f20015f909190919091505550565b5f612aaf83610959565b90505f60075f8481526020019081526020015f205490505f60065f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f209050828214612b4e575f815f8581526020019081526020015f2054905080825f8581526020019081526020015f20819055508260075f8381526020019081526020015f2081905550505b60075f8581526020019081526020015f205f9055805f8481526020019081526020015f205f90555050505050565b5f6001600880549050612b8f9190614b30565b90505f60095f8481526020019081526020015f205490505f60088381548110612bbb57612bba61386c565b5b905f5260205f20015490508060088381548110612bdb57612bda61386c565b5b905f5260205f2001819055508160095f8381526020019081526020015f208190555060095f8581526020019081526020015f205f90556008805480612c2357612c22614b63565b5b600190038181905f5260205f20015f9055905550505050565b5f6001612c4884610959565b612c529190614b30565b90508160065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f20819055508060075f8481526020019081526020015f2081905550505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612d30575f6040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401612d279190613141565b60405180910390fd5b5f612d3c83835f6116d1565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614612dae575f6040517f73c6ac6e000000000000000000000000000000000000000000000000000000008152600401612da59190613141565b60405180910390fd5b505050565b612dbe838383612e76565b612e71575f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612e3257806040517f7e273289000000000000000000000000000000000000000000000000000000008152600401612e2991906131d1565b60405180910390fd5b81816040517f177e802f000000000000000000000000000000000000000000000000000000008152600401612e68929190613845565b60405180910390fd5b505050565b5f8073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612f2d57508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480612eee5750612eed8484611449565b5b80612f2c57508273ffffffffffffffffffffffffffffffffffffffff16612f148361167f565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612f7b81612f47565b8114612f85575f80fd5b50565b5f81359050612f9681612f72565b92915050565b5f60208284031215612fb157612fb0612f3f565b5b5f612fbe84828501612f88565b91505092915050565b5f8115159050919050565b612fdb81612fc7565b82525050565b5f602082019050612ff45f830184612fd2565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015613031578082015181840152602081019050613016565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61305682612ffa565b6130608185613004565b9350613070818560208601613014565b6130798161303c565b840191505092915050565b5f6020820190508181035f83015261309c818461304c565b905092915050565b5f819050919050565b6130b6816130a4565b81146130c0575f80fd5b50565b5f813590506130d1816130ad565b92915050565b5f602082840312156130ec576130eb612f3f565b5b5f6130f9848285016130c3565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61312b82613102565b9050919050565b61313b81613121565b82525050565b5f6020820190506131545f830184613132565b92915050565b61316381613121565b811461316d575f80fd5b50565b5f8135905061317e8161315a565b92915050565b5f806040838503121561319a57613199612f3f565b5b5f6131a785828601613170565b92505060206131b8858286016130c3565b9150509250929050565b6131cb816130a4565b82525050565b5f6020820190506131e45f8301846131c2565b92915050565b5f805f6060848603121561320157613200612f3f565b5b5f61320e86828701613170565b935050602061321f86828701613170565b9250506040613230868287016130c3565b9150509250925092565b5f6020828403121561324f5761324e612f3f565b5b5f61325c84828501613170565b91505092915050565b5f819050919050565b5f61328861328361327e84613102565b613265565b613102565b9050919050565b5f6132998261326e565b9050919050565b5f6132aa8261328f565b9050919050565b6132ba816132a0565b82525050565b5f6020820190506132d35f8301846132b1565b92915050565b6132e281612fc7565b81146132ec575f80fd5b50565b5f813590506132fd816132d9565b92915050565b5f806040838503121561331957613318612f3f565b5b5f61332685828601613170565b9250506020613337858286016132ef565b9150509250929050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61337f8261303c565b810181811067ffffffffffffffff8211171561339e5761339d613349565b5b80604052505050565b5f6133b0612f36565b90506133bc8282613376565b919050565b5f67ffffffffffffffff8211156133db576133da613349565b5b6133e48261303c565b9050602081019050919050565b828183375f83830152505050565b5f61341161340c846133c1565b6133a7565b90508281526020810184848401111561342d5761342c613345565b5b6134388482856133f1565b509392505050565b5f82601f83011261345457613453613341565b5b81356134648482602086016133ff565b91505092915050565b5f805f806080858703121561348557613484612f3f565b5b5f61349287828801613170565b94505060206134a387828801613170565b93505060406134b4878288016130c3565b925050606085013567ffffffffffffffff8111156134d5576134d4612f43565b5b6134e187828801613440565b91505092959194509250565b5f819050919050565b6134ff816134ed565b8114613509575f80fd5b50565b5f8135905061351a816134f6565b92915050565b5f67ffffffffffffffff82111561353a57613539613349565b5b6135438261303c565b9050602081019050919050565b5f61356261355d84613520565b6133a7565b90508281526020810184848401111561357e5761357d613345565b5b6135898482856133f1565b509392505050565b5f82601f8301126135a5576135a4613341565b5b81356135b5848260208601613550565b91505092915050565b5f805f606084860312156135d5576135d4612f3f565b5b5f6135e28682870161350c565b93505060206135f386828701613170565b925050604084013567ffffffffffffffff81111561361457613613612f43565b5b61362086828701613591565b9150509250925092565b613633816134ed565b82525050565b5f60208201905061364c5f83018461362a565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f82825260208201905092915050565b5f61369582612ffa565b61369f818561367b565b93506136af818560208601613014565b6136b88161303c565b840191505092915050565b5f6136ce838361368b565b905092915050565b5f602082019050919050565b5f6136ec82613652565b6136f6818561365c565b9350836020820285016137088561366c565b805f5b85811015613743578484038952815161372485826136c3565b945061372f836136d6565b925060208a0199505060018101905061370b565b50829750879550505050505092915050565b5f6020820190508181035f83015261376d81846136e2565b905092915050565b5f806040838503121561378b5761378a612f3f565b5b5f61379885828601613170565b92505060206137a985828601613170565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806137f757607f821691505b60208210810361380a576138096137b3565b5b50919050565b5f6060820190506138235f830186613132565b61383060208301856131c2565b61383d6040830184613132565b949350505050565b5f6040820190506138585f830185613132565b61386560208301846131c2565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f5f8201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b5f6138f3602f83613004565b91506138fe82613899565b604082019050919050565b5f6020820190508181035f830152613920816138e7565b9050919050565b5f81905092915050565b7f7b226e616d65223a2022000000000000000000000000000000000000000000005f82015250565b5f613965600a83613927565b915061397082613931565b600a82019050919050565b5f61398582612ffa565b61398f8185613927565b935061399f818560208601613014565b80840191505092915050565b7f2e617263222c20000000000000000000000000000000000000000000000000005f82015250565b5f6139df600783613927565b91506139ea826139ab565b600782019050919050565b7f226465736372697074696f6e223a2022596f7572206964656e74697479206f6e5f8201527f2074686520417263204e6574776f726b2e222c20000000000000000000000000602082015250565b5f613a4f603483613927565b9150613a5a826139f5565b603482019050919050565b7f2261747472696275746573223a205b00000000000000000000000000000000005f82015250565b5f613a99600f83613927565b9150613aa482613a65565b600f82019050919050565b7f7b2274726169745f74797065223a20224c656e677468222c202276616c7565225f8201527f3a20000000000000000000000000000000000000000000000000000000000000602082015250565b5f613b09602283613927565b9150613b1482613aaf565b602282019050919050565b7f7d2c0000000000000000000000000000000000000000000000000000000000005f82015250565b5f613b53600283613927565b9150613b5e82613b1f565b600282019050919050565b7f7b2274726169745f74797065223a202254696572222c202276616c7565223a205f8201527f2200000000000000000000000000000000000000000000000000000000000000602082015250565b5f613bc3602183613927565b9150613bce82613b69565b602182019050919050565b7f227d0000000000000000000000000000000000000000000000000000000000005f82015250565b5f613c0d600283613927565b9150613c1882613bd9565b600282019050919050565b7f5d2c0000000000000000000000000000000000000000000000000000000000005f82015250565b5f613c57600283613927565b9150613c6282613c23565b600282019050919050565b7f22696d616765223a2022646174613a696d6167652f7376672b786d6c3b6261735f8201527f6536342c00000000000000000000000000000000000000000000000000000000602082015250565b5f613cc7602483613927565b9150613cd282613c6d565b602482019050919050565b5f613ce782613959565b9150613cf3828761397b565b9150613cfe826139d3565b9150613d0982613a43565b9150613d1482613a8d565b9150613d1f82613afd565b9150613d2b828661397b565b9150613d3682613b47565b9150613d4182613bb7565b9150613d4d828561397b565b9150613d5882613c01565b9150613d6382613c4b565b9150613d6e82613cbb565b9150613d7a828461397b565b9150613d8582613c01565b915081905095945050505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c0000005f82015250565b5f613dc7601d83613927565b9150613dd282613d93565b601d82019050919050565b5f613de782613dbb565b9150613df3828461397b565b915081905092915050565b7f4e6f7420617574686f72697a656420636f6e74726f6c6c6572000000000000005f82015250565b5f613e32601983613004565b9150613e3d82613dfe565b602082019050919050565b5f6020820190508181035f830152613e5f81613e26565b9050919050565b7f416c7265616479207265676973746572656400000000000000000000000000005f82015250565b5f613e9a601283613004565b9150613ea582613e66565b602082019050919050565b5f6020820190508181035f830152613ec781613e8e565b9050919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302613f2a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82613eef565b613f348683613eef565b95508019841693508086168417925050509392505050565b5f613f66613f61613f5c846130a4565b613265565b6130a4565b9050919050565b5f819050919050565b613f7f83613f4c565b613f93613f8b82613f6d565b848454613efb565b825550505050565b5f90565b613fa7613f9b565b613fb2818484613f76565b505050565b5b81811015613fd557613fca5f82613f9f565b600181019050613fb8565b5050565b601f82111561401a57613feb81613ece565b613ff484613ee0565b81016020851015614003578190505b61401761400f85613ee0565b830182613fb7565b50505b505050565b5f82821c905092915050565b5f61403a5f198460080261401f565b1980831691505092915050565b5f614052838361402b565b9150826002028217905092915050565b61406b82612ffa565b67ffffffffffffffff81111561408457614083613349565b5b61408e82546137e0565b614099828285613fd9565b5f60209050601f8311600181146140ca575f84156140b8578287015190505b6140c28582614047565b865550614129565b601f1984166140d886613ece565b5f5b828110156140ff578489015182556001820191506020850194506020810190506140da565b8683101561411c5784890151614118601f89168261402b565b8355505b6001600288020188555050505b505050505050565b5f6060820190506141445f83018661362a565b614151602083018561362a565b61415e6040830184613132565b949350505050565b5f81519050614174816134f6565b92915050565b5f6020828403121561418f5761418e612f3f565b5b5f61419c84828501614166565b91505092915050565b5f6040820190506141b85f83018561362a565b6141c56020830184613132565b9392505050565b5f81519050919050565b5f81905092915050565b5f6141ea826141cc565b6141f481856141d6565b9350614204818560208601613014565b80840191505092915050565b5f61421b82846141e0565b915081905092915050565b7f5265736f6c7665722073657441646472206661696c65640000000000000000005f82015250565b5f61425a601783613004565b915061426582614226565b602082019050919050565b5f6020820190508181035f8301526142878161424e565b9050919050565b5f82825260208201905092915050565b5f6142a8826141cc565b6142b2818561428e565b93506142c2818560208601613014565b6142cb8161303c565b840191505092915050565b5f6080820190506142e95f830187613132565b6142f66020830186613132565b61430360408301856131c2565b8181036060830152614315818461429e565b905095945050505050565b5f8151905061432e81612f72565b92915050565b5f6020828403121561434957614348612f3f565b5b5f61435684828501614320565b91505092915050565b7f3c73766720786d6c6e733d22687474703a2f2f7777772e77332e6f72672f32305f8201527f30302f73766722207072657365727665417370656374526174696f3d22784d6960208201527f6e594d696e206d656574222076696577426f783d22302030203335302033353060408201527f223e000000000000000000000000000000000000000000000000000000000000606082015250565b5f614405606283613927565b91506144108261435f565b606282019050919050565b7f3c7374796c653e2e6e616d65207b2066696c6c3a2077686974653b20666f6e745f8201527f2d66616d696c793a2073616e732d73657269663b20666f6e742d73697a653a20602082015250565b5f614475604083613927565b91506144808261441b565b604082019050919050565b7f3b20666f6e742d7765696768743a20626f6c643b207d202e657874207b2066695f8201527f6c6c3a2072676261283235352c3235352c3235352c302e35293b207d3c2f737460208201527f796c653e00000000000000000000000000000000000000000000000000000000604082015250565b5f61450b604483613927565b91506145168261448b565b604482019050919050565b7f3c726563742077696474683d223130302522206865696768743d2231303025225f8201527f2072783d223230222066696c6c3d222335383635663222202f3e000000000000602082015250565b5f61457b603a83613927565b915061458682614521565b603a82019050919050565b7f3c7465787420783d223530252220793d223530252220646f6d696e616e742d625f8201527f6173656c696e653d226d6964646c652220746578742d616e63686f723d226d6960208201527f64646c6522000000000000000000000000000000000000000000000000000000604082015250565b5f614611604583613927565b915061461c82614591565b604582019050919050565b7f3e000000000000000000000000000000000000000000000000000000000000005f82015250565b5f61465b600183613927565b915061466682614627565b600182019050919050565b7f3c747370616e20636c6173733d226e616d65223e0000000000000000000000005f82015250565b5f6146a5601483613927565b91506146b082614671565b601482019050919050565b7f3c2f747370616e3e0000000000000000000000000000000000000000000000005f82015250565b5f6146ef600883613927565b91506146fa826146bb565b600882019050919050565b7f3c747370616e20636c6173733d226e616d6520657874223e2e6172633c2f74735f8201527f70616e3e00000000000000000000000000000000000000000000000000000000602082015250565b5f61475f602483613927565b915061476a82614705565b602482019050919050565b7f3c2f746578743e000000000000000000000000000000000000000000000000005f82015250565b5f6147a9600783613927565b91506147b482614775565b600782019050919050565b7f3c7465787420783d223530252220793d223332302220646f6d696e616e742d625f8201527f6173656c696e653d226d6964646c652220746578742d616e63686f723d226d6960208201527f64646c6522207374796c653d2266696c6c3a72676261283235352c3235352c3260408201527f35352c302e36293b20666f6e742d66616d696c793a73616e732d73657269663b60608201527f20666f6e742d73697a653a313270783b20666f6e742d7765696768743a626f6c60808201527f643b206c65747465722d73706163696e673a3170783b223e7777772e646f746160a08201527f72632e78797a3c2f746578743e0000000000000000000000000000000000000060c082015250565b5f6148d760cd83613927565b91506148e2826147bf565b60cd82019050919050565b7f3c2f7376673e00000000000000000000000000000000000000000000000000005f82015250565b5f614921600683613927565b915061492c826148ed565b600682019050919050565b5f614941826143f9565b915061494c82614469565b9150614958828661397b565b9150614963826144ff565b915061496e8261456f565b915061497982614605565b9150614985828561397b565b91506149908261464f565b915061499b82614699565b91506149a7828461397b565b91506149b2826146e3565b91506149bd82614753565b91506149c88261479d565b91506149d3826148cb565b91506149de82614915565b9150819050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f614a22826130a4565b9150614a2d836130a4565b9250828201905080821115614a4557614a446149eb565b5b92915050565b5f614a55826130a4565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614a8757614a866149eb565b5b600182019050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f614ac9826130a4565b9150614ad4836130a4565b925082614ae457614ae3614a92565b5b828204905092915050565b5f614af9826130a4565b9150614b04836130a4565b9250828202614b12816130a4565b91508282048414831517614b2957614b286149eb565b5b5092915050565b5f614b3a826130a4565b9150614b45836130a4565b9250828203905081811115614b5d57614b5c6149eb565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfe20746578744c656e6774683d2233313022206c656e67746841646a7573743d2273706163696e67416e64476c7970687322a2646970667358221220dfd258f364e838415e1d793a1caf998a2b458ee99ed3cd1d0479d2d00c8db97c64736f6c63430008180033000000000000000000000000c8659edc09baa1e46c9e24022d6e00406ed3a4089a7ad1c5d8b1c60ef156c6723dbf462681d6462768a9e60c53665d7fc1337bae
Runtime-код, который EVM исполняет при вызове этого адреса, — 19 447 байт, keccak256 0x11d007e8e4d20ebebc4783dfbf00a29fa14ec4cc788754e7fd325d7fece4d9ac. Два адреса с одинаковым хешем исполняют один и тот же код: это самый быстрый способ заметить клон.
0x608060405234801561000f575f80fd5b50600436106101c2575f3560e01c8063828eab0e116100f7578063c87b56dd11610095578063e1bbebcb1161006f578063e1bbebcb14610502578063e985e9c514610532578063f2fde38b14610562578063f77c47911461057e576101c2565b8063c87b56dd14610498578063cf6c4596146104c8578063ddf7fcb0146104e4576101c2565b806395d89b41116100d157806395d89b4114610426578063a22cb46514610444578063b88d4fde14610460578063c66485b21461047c576101c2565b8063828eab0e146103ce5780638da5cb5b146103ec57806392eefe9b1461040a576101c2565b806342842e0e116101645780636352211e1161013e5780636352211e1461034657806370a0823114610376578063715018a6146103a65780637b103999146103b0576101c2565b806342842e0e146102ca5780634622ab03146102e65780634f6ccce714610316576101c2565b8063095ea7b3116101a0578063095ea7b31461024457806318160ddd1461026057806323b872dd1461027e5780632f745c591461029a576101c2565b806301ffc9a7146101c657806306fdde03146101f6578063081812fc14610214575b5f80fd5b6101e060048036038101906101db9190612f9c565b61059c565b6040516101ed9190612fe1565b60405180910390f35b6101fe6105ad565b60405161020b9190613084565b60405180910390f35b61022e600480360381019061022991906130d7565b61063c565b60405161023b9190613141565b60405180910390f35b61025e60048036038101906102599190613184565b610657565b005b61026861066d565b60405161027591906131d1565b60405180910390f35b610298600480360381019061029391906131ea565b610679565b005b6102b460048036038101906102af9190613184565b610778565b6040516102c191906131d1565b60405180910390f35b6102e460048036038101906102df91906131ea565b61081c565b005b61030060048036038101906102fb91906130d7565b61083b565b60405161030d9190613084565b60405180910390f35b610330600480360381019061032b91906130d7565b6108d6565b60405161033d91906131d1565b60405180910390f35b610360600480360381019061035b91906130d7565b610948565b60405161036d9190613141565b60405180910390f35b610390600480360381019061038b919061323a565b610959565b60405161039d91906131d1565b60405180910390f35b6103ae610a0f565b005b6103b8610a22565b6040516103c591906132c0565b60405180910390f35b6103d6610a47565b6040516103e39190613141565b60405180910390f35b6103f4610a6c565b6040516104019190613141565b60405180910390f35b610424600480360381019061041f919061323a565b610a94565b005b61042e610adf565b60405161043b9190613084565b60405180910390f35b61045e60048036038101906104599190613303565b610b6f565b005b61047a6004803603810190610475919061346d565b610b85565b005b6104966004803603810190610491919061323a565b610baa565b005b6104b260048036038101906104ad91906130d7565b610bf5565b6040516104bf9190613084565b60405180910390f35b6104e260048036038101906104dd91906135be565b610d99565b005b6104ec6112fe565b6040516104f99190613639565b60405180910390f35b61051c6004803603810190610517919061323a565b611304565b6040516105299190613755565b60405180910390f35b61054c60048036038101906105479190613775565b611449565b6040516105599190612fe1565b60405180910390f35b61057c6004803603810190610577919061323a565b6114d7565b005b61058661155b565b6040516105939190613141565b60405180910390f35b5f6105a682611580565b9050919050565b60605f80546105bb906137e0565b80601f01602080910402602001604051908101604052809291908181526020018280546105e7906137e0565b80156106325780601f1061060957610100808354040283529160200191610632565b820191905f5260205f20905b81548152906001019060200180831161061557829003601f168201915b5050505050905090565b5f610646826115f9565b506106508261167f565b9050919050565b61066982826106646116b8565b6116bf565b5050565b5f600880549050905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036106e9575f6040517f64a0ae920000000000000000000000000000000000000000000000000000000081526004016106e09190613141565b60405180910390fd5b5f6106fc83836106f76116b8565b6116d1565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610772578382826040517f64283d7b00000000000000000000000000000000000000000000000000000000815260040161076993929190613810565b60405180910390fd5b50505050565b5f61078283610959565b82106107c75782826040517fa57d13dc0000000000000000000000000000000000000000000000000000000081526004016107be929190613845565b60405180910390fd5b60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f2054905092915050565b61083683838360405180602001604052805f815250610b85565b505050565b600e602052805f5260405f205f915090508054610857906137e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610883906137e0565b80156108ce5780601f106108a5576101008083540402835291602001916108ce565b820191905f5260205f20905b8154815290600101906020018083116108b157829003601f168201915b505050505081565b5f6108df61066d565b8210610924575f826040517fa57d13dc00000000000000000000000000000000000000000000000000000000815260040161091b929190613845565b60405180910390fd5b600882815481106109385761093761386c565b5b905f5260205f2001549050919050565b5f610952826115f9565b9050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036109ca575f6040517f89c62b640000000000000000000000000000000000000000000000000000000081526004016109c19190613141565b60405180910390fd5b60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610a176116e6565b610a205f61176d565b565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610a9c6116e6565b80600d5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b606060018054610aee906137e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610b1a906137e0565b8015610b655780601f10610b3c57610100808354040283529160200191610b65565b820191905f5260205f20905b815481529060010190602001808311610b4857829003601f168201915b5050505050905090565b610b81610b7a6116b8565b8383611830565b5050565b610b90848484610679565b610ba4610b9b6116b8565b85858585611a09565b50505050565b610bb26116e6565b80600f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60605f73ffffffffffffffffffffffffffffffffffffffff16610c1783611bb5565b73ffffffffffffffffffffffffffffffffffffffff1603610c6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6490613909565b60405180910390fd5b5f600e5f8481526020019081526020015f208054610c8a906137e0565b80601f0160208091040260200160405190810160405280929190818152602001828054610cb6906137e0565b8015610d015780601f10610cd857610100808354040283529160200191610d01565b820191905f5260205f20905b815481529060010190602001808311610ce457829003601f168201915b505050505090505f610d1282611bee565b90505f610d1e83611d7b565b90505f610d2a82611f2c565b90505f610d6b85610d3a8561203b565b84610d4488612105565b604051602001610d579493929190613cdd565b604051602081830303815290604052612105565b905080604051602001610d7e9190613ddd565b60405160208183030381529060405295505050505050919050565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1f90613e48565b60405180910390fd5b5f835f1c90505f73ffffffffffffffffffffffffffffffffffffffff16610e4e82611bb5565b73ffffffffffffffffffffffffffffffffffffffff1614610ea4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e9b90613eb0565b60405180910390fd5b610eae8382612118565b81600e5f8381526020019081526020015f209081610ecc9190614062565b505f73ffffffffffffffffffffffffffffffffffffffff16600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611256575f600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab5923600c5487306040518463ffffffff1660e01b8152600401610f8293929190614131565b6020604051808303815f875af1158015610f9e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fc2919061417a565b9050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631896f70a82600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff1660e01b81526004016110419291906141a5565b5f604051808303815f87803b158015611058575f80fd5b505af115801561106a573d5f803e3d5ffd5b505050505f600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682866040516024016110ba9291906141a5565b6040516020818303038152906040527fd5fa2b00000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516111449190614210565b5f604051808303815f865af19150503d805f811461117d576040519150601f19603f3d011682016040523d82523d5f602084013e611182565b606091505b50509050806111c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111bd90614270565b60405180910390fd5b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635b0fc9c383876040518363ffffffff1660e01b81526004016112229291906141a5565b5f604051808303815f87803b158015611239575f80fd5b505af115801561124b573d5f803e3d5ffd5b5050505050506112f8565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab5923600c5486866040518463ffffffff1660e01b81526004016112b693929190614131565b6020604051808303815f875af11580156112d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112f6919061417a565b505b50505050565b600c5481565b60605f61131083610959565b90505f8167ffffffffffffffff81111561132d5761132c613349565b5b60405190808252806020026020018201604052801561136057816020015b606081526020019060019003908161134b5790505b5090505f5b8281101561143e575f6113788683610778565b9050600e5f8281526020019081526020015f208054611396906137e0565b80601f01602080910402602001604051908101604052809291908181526020018280546113c2906137e0565b801561140d5780601f106113e45761010080835404028352916020019161140d565b820191905f5260205f20905b8154815290600101906020018083116113f057829003601f168201915b50505050508383815181106114255761142461386c565b5b6020026020010181905250508080600101915050611365565b508092505050919050565b5f60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b6114df6116e6565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361154f575f6040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016115469190613141565b60405180910390fd5b6115588161176d565b50565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f7f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806115f257506115f182612135565b5b9050919050565b5f8061160483611bb5565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361167657826040517f7e27328900000000000000000000000000000000000000000000000000000000815260040161166d91906131d1565b60405180910390fd5b80915050919050565b5f60045f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f33905090565b6116cc8383836001612216565b505050565b5f6116dd8484846123d5565b90509392505050565b6116ee6116b8565b73ffffffffffffffffffffffffffffffffffffffff1661170c610a6c565b73ffffffffffffffffffffffffffffffffffffffff161461176b5761172f6116b8565b6040517f118cdaa70000000000000000000000000000000000000000000000000000000081526004016117629190613141565b60405180910390fd5b565b5f600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118a0575f6040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526004016118979190613141565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361191057816040517f5b08ba180000000000000000000000000000000000000000000000000000000081526004016119079190613141565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516119fc9190612fe1565b60405180910390a3505050565b5f8373ffffffffffffffffffffffffffffffffffffffff163b1115611bae578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02868685856040518563ffffffff1660e01b8152600401611a6794939291906142d6565b6020604051808303815f875af1925050508015611aa257506040513d601f19601f82011682018060405250810190611a9f9190614334565b60015b611b23573d805f8114611ad0576040519150601f19603f3d011682016040523d82523d5f602084013e611ad5565b606091505b505f815103611b1b57836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401611b129190613141565b60405180910390fd5b805160208201fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614611bac57836040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401611ba39190613141565b60405180910390fd5b505b5050505050565b5f60025f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60605f611bfa83611d7b565b90505f6040518060400160405280600481526020017f333270780000000000000000000000000000000000000000000000000000000081525090505f60405180602001604052805f81525090506019831115611ca8576040518060400160405280600481526020017f31347078000000000000000000000000000000000000000000000000000000008152509150604051806060016040528060318152602001614b91603191399050611d4d565b6010831115611d09576040518060400160405280600481526020017f31387078000000000000000000000000000000000000000000000000000000008152509150604051806060016040528060318152602001614b91603191399050611d4c565b600b831115611d4b576040518060400160405280600481526020017f323470780000000000000000000000000000000000000000000000000000000081525091505b5b5b818186604051602001611d6293929190614937565b6040516020818303038152906040529350505050919050565b5f805f80845190505f92505b80821015611f21575f858381518110611da357611da261386c565b5b602001015160f81c60f81b9050608060f81b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015611df257600183611deb9190614a18565b9250611f0d565b60e060f81b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015611e3457600283611e2d9190614a18565b9250611f0c565b60f060f81b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015611e7657600383611e6f9190614a18565b9250611f0b565b60f8801b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015611eb757600483611eb09190614a18565b9250611f0a565b60fc60f81b817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161015611ef957600583611ef29190614a18565b9250611f09565b600683611f069190614a18565b92505b5b5b5b5b508280611f1990614a4b565b935050611d87565b829350505050919050565b606060028211611f73576040518060400160405280600981526020017f4c6567656e6461727900000000000000000000000000000000000000000000008152509050612036565b60038203611fb8576040518060400160405280600481526020017f52617265000000000000000000000000000000000000000000000000000000008152509050612036565b60048203611ffd576040518060400160405280600881526020017f556e636f6d6d6f6e0000000000000000000000000000000000000000000000008152509050612036565b6040518060400160405280600881526020017f5374616e6461726400000000000000000000000000000000000000000000000081525090505b919050565b60605f6001612049846124ef565b0190505f8167ffffffffffffffff81111561206757612066613349565b5b6040519080825280601f01601f1916602001820160405280156120995781602001600182028036833780820191505090505b5090505f82602083010190505b6001156120fa578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816120ef576120ee614a92565b5b0494505f85036120a6575b819350505050919050565b6060612111825f612640565b9050919050565b612131828260405180602001604052805f8152506127ca565b5050565b5f7f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806121ff57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061220f575061220e826127ed565b5b9050919050565b808061224e57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15612380575f61225d846115f9565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156122c757508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b80156122da57506122d88184611449565b155b1561231c57826040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526004016123139190613141565b60405180910390fd5b811561237e57838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b8360045f8581526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b5f806123e2858585612856565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036124255761242084612a61565b612464565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614612463576124628185612aa5565b5b5b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036124a5576124a084612b7c565b6124e4565b8473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146124e3576124e28585612c3c565b5b5b809150509392505050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000831061254b577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161254157612540614a92565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310612588576d04ee2d6d415b85acef8100000000838161257e5761257d614a92565b5b0492506020810190505b662386f26fc1000083106125b757662386f26fc1000083816125ad576125ac614a92565b5b0492506010810190505b6305f5e10083106125e0576305f5e10083816125d6576125d5614a92565b5b0492506008810190505b61271083106126055761271083816125fb576125fa614a92565b5b0492506004810190505b60648310612628576064838161261e5761261d614a92565b5b0492506002810190505b600a8310612637576001810190505b80915050919050565b60605f8351036126605760405180602001604052805f81525090506127c4565b5f82612691576003600285516126769190614a18565b6126809190614abf565b600461268c9190614aef565b6126b8565b60036002855160046126a39190614aef565b6126ad9190614a18565b6126b79190614abf565b5b905060405191507f4142434445464748494a4b4c4d4e4f505152535455565758595a616263646566601f5261067083027f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f18603f526020820181810185865187016020810180515f82525b82841015612776576003840193508351603f8160121c16518753600187019650603f81600c1c16518753600187019650603f8160061c16518753600187019650603f811651875360018701965050612723565b808252886127b55760038a51066001811461279857600281146127ab576127b3565b603d6001880353603d60028803536127b3565b603d60018803535b505b86885284604052505050505050505b92915050565b6127d48383612cc0565b6127e86127df6116b8565b5f858585611a09565b505050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f8061286184611bb5565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146128a2576128a1818486612db3565b5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461292d576128e15f855f80612216565b600160035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825403925050819055505b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146129ac57600160035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8460025f8681526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b60088054905060095f8381526020019081526020015f2081905550600881908060018154018082558091505060019003905f5260205f20015f909190919091505550565b5f612aaf83610959565b90505f60075f8481526020019081526020015f205490505f60065f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f209050828214612b4e575f815f8581526020019081526020015f2054905080825f8581526020019081526020015f20819055508260075f8381526020019081526020015f2081905550505b60075f8581526020019081526020015f205f9055805f8481526020019081526020015f205f90555050505050565b5f6001600880549050612b8f9190614b30565b90505f60095f8481526020019081526020015f205490505f60088381548110612bbb57612bba61386c565b5b905f5260205f20015490508060088381548110612bdb57612bda61386c565b5b905f5260205f2001819055508160095f8381526020019081526020015f208190555060095f8581526020019081526020015f205f90556008805480612c2357612c22614b63565b5b600190038181905f5260205f20015f9055905550505050565b5f6001612c4884610959565b612c529190614b30565b90508160065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f20819055508060075f8481526020019081526020015f2081905550505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612d30575f6040517f64a0ae92000000000000000000000000000000000000000000000000000000008152600401612d279190613141565b60405180910390fd5b5f612d3c83835f6116d1565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614612dae575f6040517f73c6ac6e000000000000000000000000000000000000000000000000000000008152600401612da59190613141565b60405180910390fd5b505050565b612dbe838383612e76565b612e71575f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612e3257806040517f7e273289000000000000000000000000000000000000000000000000000000008152600401612e2991906131d1565b60405180910390fd5b81816040517f177e802f000000000000000000000000000000000000000000000000000000008152600401612e68929190613845565b60405180910390fd5b505050565b5f8073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612f2d57508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480612eee5750612eed8484611449565b5b80612f2c57508273ffffffffffffffffffffffffffffffffffffffff16612f148361167f565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612f7b81612f47565b8114612f85575f80fd5b50565b5f81359050612f9681612f72565b92915050565b5f60208284031215612fb157612fb0612f3f565b5b5f612fbe84828501612f88565b91505092915050565b5f8115159050919050565b612fdb81612fc7565b82525050565b5f602082019050612ff45f830184612fd2565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015613031578082015181840152602081019050613016565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61305682612ffa565b6130608185613004565b9350613070818560208601613014565b6130798161303c565b840191505092915050565b5f6020820190508181035f83015261309c818461304c565b905092915050565b5f819050919050565b6130b6816130a4565b81146130c0575f80fd5b50565b5f813590506130d1816130ad565b92915050565b5f602082840312156130ec576130eb612f3f565b5b5f6130f9848285016130c3565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61312b82613102565b9050919050565b61313b81613121565b82525050565b5f6020820190506131545f830184613132565b92915050565b61316381613121565b811461316d575f80fd5b50565b5f8135905061317e8161315a565b92915050565b5f806040838503121561319a57613199612f3f565b5b5f6131a785828601613170565b92505060206131b8858286016130c3565b9150509250929050565b6131cb816130a4565b82525050565b5f6020820190506131e45f8301846131c2565b92915050565b5f805f6060848603121561320157613200612f3f565b5b5f61320e86828701613170565b935050602061321f86828701613170565b9250506040613230868287016130c3565b9150509250925092565b5f6020828403121561324f5761324e612f3f565b5b5f61325c84828501613170565b91505092915050565b5f819050919050565b5f61328861328361327e84613102565b613265565b613102565b9050919050565b5f6132998261326e565b9050919050565b5f6132aa8261328f565b9050919050565b6132ba816132a0565b82525050565b5f6020820190506132d35f8301846132b1565b92915050565b6132e281612fc7565b81146132ec575f80fd5b50565b5f813590506132fd816132d9565b92915050565b5f806040838503121561331957613318612f3f565b5b5f61332685828601613170565b9250506020613337858286016132ef565b9150509250929050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61337f8261303c565b810181811067ffffffffffffffff8211171561339e5761339d613349565b5b80604052505050565b5f6133b0612f36565b90506133bc8282613376565b919050565b5f67ffffffffffffffff8211156133db576133da613349565b5b6133e48261303c565b9050602081019050919050565b828183375f83830152505050565b5f61341161340c846133c1565b6133a7565b90508281526020810184848401111561342d5761342c613345565b5b6134388482856133f1565b509392505050565b5f82601f83011261345457613453613341565b5b81356134648482602086016133ff565b91505092915050565b5f805f806080858703121561348557613484612f3f565b5b5f61349287828801613170565b94505060206134a387828801613170565b93505060406134b4878288016130c3565b925050606085013567ffffffffffffffff8111156134d5576134d4612f43565b5b6134e187828801613440565b91505092959194509250565b5f819050919050565b6134ff816134ed565b8114613509575f80fd5b50565b5f8135905061351a816134f6565b92915050565b5f67ffffffffffffffff82111561353a57613539613349565b5b6135438261303c565b9050602081019050919050565b5f61356261355d84613520565b6133a7565b90508281526020810184848401111561357e5761357d613345565b5b6135898482856133f1565b509392505050565b5f82601f8301126135a5576135a4613341565b5b81356135b5848260208601613550565b91505092915050565b5f805f606084860312156135d5576135d4612f3f565b5b5f6135e28682870161350c565b93505060206135f386828701613170565b925050604084013567ffffffffffffffff81111561361457613613612f43565b5b61362086828701613591565b9150509250925092565b613633816134ed565b82525050565b5f60208201905061364c5f83018461362a565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f82825260208201905092915050565b5f61369582612ffa565b61369f818561367b565b93506136af818560208601613014565b6136b88161303c565b840191505092915050565b5f6136ce838361368b565b905092915050565b5f602082019050919050565b5f6136ec82613652565b6136f6818561365c565b9350836020820285016137088561366c565b805f5b85811015613743578484038952815161372485826136c3565b945061372f836136d6565b925060208a0199505060018101905061370b565b50829750879550505050505092915050565b5f6020820190508181035f83015261376d81846136e2565b905092915050565b5f806040838503121561378b5761378a612f3f565b5b5f61379885828601613170565b92505060206137a985828601613170565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806137f757607f821691505b60208210810361380a576138096137b3565b5b50919050565b5f6060820190506138235f830186613132565b61383060208301856131c2565b61383d6040830184613132565b949350505050565b5f6040820190506138585f830185613132565b61386560208301846131c2565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f5f8201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b5f6138f3602f83613004565b91506138fe82613899565b604082019050919050565b5f6020820190508181035f830152613920816138e7565b9050919050565b5f81905092915050565b7f7b226e616d65223a2022000000000000000000000000000000000000000000005f82015250565b5f613965600a83613927565b915061397082613931565b600a82019050919050565b5f61398582612ffa565b61398f8185613927565b935061399f818560208601613014565b80840191505092915050565b7f2e617263222c20000000000000000000000000000000000000000000000000005f82015250565b5f6139df600783613927565b91506139ea826139ab565b600782019050919050565b7f226465736372697074696f6e223a2022596f7572206964656e74697479206f6e5f8201527f2074686520417263204e6574776f726b2e222c20000000000000000000000000602082015250565b5f613a4f603483613927565b9150613a5a826139f5565b603482019050919050565b7f2261747472696275746573223a205b00000000000000000000000000000000005f82015250565b5f613a99600f83613927565b9150613aa482613a65565b600f82019050919050565b7f7b2274726169745f74797065223a20224c656e677468222c202276616c7565225f8201527f3a20000000000000000000000000000000000000000000000000000000000000602082015250565b5f613b09602283613927565b9150613b1482613aaf565b602282019050919050565b7f7d2c0000000000000000000000000000000000000000000000000000000000005f82015250565b5f613b53600283613927565b9150613b5e82613b1f565b600282019050919050565b7f7b2274726169745f74797065223a202254696572222c202276616c7565223a205f8201527f2200000000000000000000000000000000000000000000000000000000000000602082015250565b5f613bc3602183613927565b9150613bce82613b69565b602182019050919050565b7f227d0000000000000000000000000000000000000000000000000000000000005f82015250565b5f613c0d600283613927565b9150613c1882613bd9565b600282019050919050565b7f5d2c0000000000000000000000000000000000000000000000000000000000005f82015250565b5f613c57600283613927565b9150613c6282613c23565b600282019050919050565b7f22696d616765223a2022646174613a696d6167652f7376672b786d6c3b6261735f8201527f6536342c00000000000000000000000000000000000000000000000000000000602082015250565b5f613cc7602483613927565b9150613cd282613c6d565b602482019050919050565b5f613ce782613959565b9150613cf3828761397b565b9150613cfe826139d3565b9150613d0982613a43565b9150613d1482613a8d565b9150613d1f82613afd565b9150613d2b828661397b565b9150613d3682613b47565b9150613d4182613bb7565b9150613d4d828561397b565b9150613d5882613c01565b9150613d6382613c4b565b9150613d6e82613cbb565b9150613d7a828461397b565b9150613d8582613c01565b915081905095945050505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c0000005f82015250565b5f613dc7601d83613927565b9150613dd282613d93565b601d82019050919050565b5f613de782613dbb565b9150613df3828461397b565b915081905092915050565b7f4e6f7420617574686f72697a656420636f6e74726f6c6c6572000000000000005f82015250565b5f613e32601983613004565b9150613e3d82613dfe565b602082019050919050565b5f6020820190508181035f830152613e5f81613e26565b9050919050565b7f416c7265616479207265676973746572656400000000000000000000000000005f82015250565b5f613e9a601283613004565b9150613ea582613e66565b602082019050919050565b5f6020820190508181035f830152613ec781613e8e565b9050919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302613f2a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82613eef565b613f348683613eef565b95508019841693508086168417925050509392505050565b5f613f66613f61613f5c846130a4565b613265565b6130a4565b9050919050565b5f819050919050565b613f7f83613f4c565b613f93613f8b82613f6d565b848454613efb565b825550505050565b5f90565b613fa7613f9b565b613fb2818484613f76565b505050565b5b81811015613fd557613fca5f82613f9f565b600181019050613fb8565b5050565b601f82111561401a57613feb81613ece565b613ff484613ee0565b81016020851015614003578190505b61401761400f85613ee0565b830182613fb7565b50505b505050565b5f82821c905092915050565b5f61403a5f198460080261401f565b1980831691505092915050565b5f614052838361402b565b9150826002028217905092915050565b61406b82612ffa565b67ffffffffffffffff81111561408457614083613349565b5b61408e82546137e0565b614099828285613fd9565b5f60209050601f8311600181146140ca575f84156140b8578287015190505b6140c28582614047565b865550614129565b601f1984166140d886613ece565b5f5b828110156140ff578489015182556001820191506020850194506020810190506140da565b8683101561411c5784890151614118601f89168261402b565b8355505b6001600288020188555050505b505050505050565b5f6060820190506141445f83018661362a565b614151602083018561362a565b61415e6040830184613132565b949350505050565b5f81519050614174816134f6565b92915050565b5f6020828403121561418f5761418e612f3f565b5b5f61419c84828501614166565b91505092915050565b5f6040820190506141b85f83018561362a565b6141c56020830184613132565b9392505050565b5f81519050919050565b5f81905092915050565b5f6141ea826141cc565b6141f481856141d6565b9350614204818560208601613014565b80840191505092915050565b5f61421b82846141e0565b915081905092915050565b7f5265736f6c7665722073657441646472206661696c65640000000000000000005f82015250565b5f61425a601783613004565b915061426582614226565b602082019050919050565b5f6020820190508181035f8301526142878161424e565b9050919050565b5f82825260208201905092915050565b5f6142a8826141cc565b6142b2818561428e565b93506142c2818560208601613014565b6142cb8161303c565b840191505092915050565b5f6080820190506142e95f830187613132565b6142f66020830186613132565b61430360408301856131c2565b8181036060830152614315818461429e565b905095945050505050565b5f8151905061432e81612f72565b92915050565b5f6020828403121561434957614348612f3f565b5b5f61435684828501614320565b91505092915050565b7f3c73766720786d6c6e733d22687474703a2f2f7777772e77332e6f72672f32305f8201527f30302f73766722207072657365727665417370656374526174696f3d22784d6960208201527f6e594d696e206d656574222076696577426f783d22302030203335302033353060408201527f223e000000000000000000000000000000000000000000000000000000000000606082015250565b5f614405606283613927565b91506144108261435f565b606282019050919050565b7f3c7374796c653e2e6e616d65207b2066696c6c3a2077686974653b20666f6e745f8201527f2d66616d696c793a2073616e732d73657269663b20666f6e742d73697a653a20602082015250565b5f614475604083613927565b91506144808261441b565b604082019050919050565b7f3b20666f6e742d7765696768743a20626f6c643b207d202e657874207b2066695f8201527f6c6c3a2072676261283235352c3235352c3235352c302e35293b207d3c2f737460208201527f796c653e00000000000000000000000000000000000000000000000000000000604082015250565b5f61450b604483613927565b91506145168261448b565b604482019050919050565b7f3c726563742077696474683d223130302522206865696768743d2231303025225f8201527f2072783d223230222066696c6c3d222335383635663222202f3e000000000000602082015250565b5f61457b603a83613927565b915061458682614521565b603a82019050919050565b7f3c7465787420783d223530252220793d223530252220646f6d696e616e742d625f8201527f6173656c696e653d226d6964646c652220746578742d616e63686f723d226d6960208201527f64646c6522000000000000000000000000000000000000000000000000000000604082015250565b5f614611604583613927565b915061461c82614591565b604582019050919050565b7f3e000000000000000000000000000000000000000000000000000000000000005f82015250565b5f61465b600183613927565b915061466682614627565b600182019050919050565b7f3c747370616e20636c6173733d226e616d65223e0000000000000000000000005f82015250565b5f6146a5601483613927565b91506146b082614671565b601482019050919050565b7f3c2f747370616e3e0000000000000000000000000000000000000000000000005f82015250565b5f6146ef600883613927565b91506146fa826146bb565b600882019050919050565b7f3c747370616e20636c6173733d226e616d6520657874223e2e6172633c2f74735f8201527f70616e3e00000000000000000000000000000000000000000000000000000000602082015250565b5f61475f602483613927565b915061476a82614705565b602482019050919050565b7f3c2f746578743e000000000000000000000000000000000000000000000000005f82015250565b5f6147a9600783613927565b91506147b482614775565b600782019050919050565b7f3c7465787420783d223530252220793d223332302220646f6d696e616e742d625f8201527f6173656c696e653d226d6964646c652220746578742d616e63686f723d226d6960208201527f64646c6522207374796c653d2266696c6c3a72676261283235352c3235352c3260408201527f35352c302e36293b20666f6e742d66616d696c793a73616e732d73657269663b60608201527f20666f6e742d73697a653a313270783b20666f6e742d7765696768743a626f6c60808201527f643b206c65747465722d73706163696e673a3170783b223e7777772e646f746160a08201527f72632e78797a3c2f746578743e0000000000000000000000000000000000000060c082015250565b5f6148d760cd83613927565b91506148e2826147bf565b60cd82019050919050565b7f3c2f7376673e00000000000000000000000000000000000000000000000000005f82015250565b5f614921600683613927565b915061492c826148ed565b600682019050919050565b5f614941826143f9565b915061494c82614469565b9150614958828661397b565b9150614963826144ff565b915061496e8261456f565b915061497982614605565b9150614985828561397b565b91506149908261464f565b915061499b82614699565b91506149a7828461397b565b91506149b2826146e3565b91506149bd82614753565b91506149c88261479d565b91506149d3826148cb565b91506149de82614915565b9150819050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f614a22826130a4565b9150614a2d836130a4565b9250828201905080821115614a4557614a446149eb565b5b92915050565b5f614a55826130a4565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614a8757614a866149eb565b5b600182019050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f614ac9826130a4565b9150614ad4836130a4565b925082614ae457614ae3614a92565b5b828204905092915050565b5f614af9826130a4565b9150614b04836130a4565b9250828202614b12816130a4565b91508282048414831517614b2957614b286149eb565b5b5092915050565b5f614b3a826130a4565b9150614b45836130a4565b9250828203905081811115614b5d57614b5c6149eb565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfe20746578744c656e6774683d2233313022206c656e67746841646a7573743d2273706163696e67416e64476c7970687322a2646970667358221220dfd258f364e838415e1d793a1caf998a2b458ee99ed3cd1d0479d2d00c8db97c64736f6c63430008180033