Contract Address Details

0xD95086Fe465a2DC59F989B927472a901E2e05ff2

Token
USDoge Experimental Release (USDO)
Creator
0xea9a06–ddd06e at 0x5caf7f–22a616
Balance
217,805.077701897055089151 Doge
Tokens
Fetching tokens...
Transactions
59,873 Transactions
Transfers
0 Transfers
Gas Used
5,100,860,704
Last Balance Update
27607536

Contract Creation Code

Verify & Publish
0x60806040526000600760016101000a81548160ff021916908315150217905550601e6008556000601755620c3500601855610258601a5567016345785d8a0000601b556014601c556000601d556000601e5568056bc75e2d63100000601f553480156200006b57600080fd5b5060405162005ce138038062005ce18339818101604052810190620000919190620007f3565b336040518060400160405280601b81526020017f5553446f6765204578706572696d656e74616c2052656c6561736500000000008152506040518060400160405280600481526020017f5553444f0000000000000000000000000000000000000000000000000000000081525081600390816200010f919062000a95565b50806004908162000121919062000a95565b505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620001995760006040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040162000190919062000bc1565b60405180910390fd5b620001aa816200021360201b60201c565b5060016006819055506000600760006101000a81548160ff02191690831515021790555062989680601481905550600062010234905060006125ee9050620001f98282620002d960201b60201c565b6200020a836200034660201b60201c565b50505062000eb0565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620002e96200054160201b60201c565b81601581905550629896808162000301919062000c0d565b6016819055507f416cd495d2099a252a98abab54007d069c13a921ef9d0ac5a1373d234c103aac82826040516200033a92919062000c69565b60405180910390a15050565b620003566200054160201b60201c565b600081116200039c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003939062000cf7565b60405180910390fd5b4260198190555080601881905550620003bb81620005e360201b60201c565b60006064600854600b54620003d1919062000c0d565b620003dd919062000d48565b9050600081600b54620003f1919062000d80565b905060008211156200047c5781600b600082825462000411919062000d80565b9250508190555081600d60008282546200042c919062000dbb565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156200047a573d6000803e3d6000fd5b505b6000811115620004bd5780600c60008282546200049a919062000dbb565b9250508190555080600a6000828254620004b5919062000dbb565b925050819055505b6064601c5447620004cf919062000c0d565b620004db919062000d48565b601d819055506000601e819055506000600b819055507fc103c723b7378333fae15e2260564b6a0a971fc36b7f939d2ffe646a63066e0b4284600f54600e54601754878760405162000534979695949392919062000df6565b60405180910390a1505050565b62000551620006ab60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1662000577620006b360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614620005e157620005a3620006ab60201b60201c565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401620005d8919062000bc1565b60405180910390fd5b565b620005f58147620006dd60201b60201c565b600f819055506200060f81600a54620006dd60201b60201c565b60108190555062000626816200075e60201b60201c565b600e81905550600081600a546200063e919062000c0d565b9050600a600e548262000652919062000d48565b6200065e919062000d48565b6017819055507ffdf1fd40a766e17db01029a960e17dddf80c08c93ceb8607b35ae2446a7b1cd5600f54600e546017546040516200069f9392919062000e73565b60405180910390a15050565b600033905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000808383620006ee919062000c0d565b9050600062000702620007a960201b60201c565b905060008203620007195760009250505062000758565b601f5481101562000731576014549250505062000758565b6000818362000741919062000d48565b9050600a8162000752919062000d48565b93505050505b92915050565b6000806016548360155462000774919062000c0d565b62000780919062000dbb565b90506298968060648262000795919062000c0d565b620007a1919062000d48565b915050919050565b6000600254905090565b600080fd5b6000819050919050565b620007cd81620007b8565b8114620007d957600080fd5b50565b600081519050620007ed81620007c2565b92915050565b6000602082840312156200080c576200080b620007b3565b5b60006200081c84828501620007dc565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620008a757607f821691505b602082108103620008bd57620008bc6200085f565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620009277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620008e8565b620009338683620008e8565b95508019841693508086168417925050509392505050565b6000819050919050565b600062000976620009706200096a84620007b8565b6200094b565b620007b8565b9050919050565b6000819050919050565b620009928362000955565b620009aa620009a1826200097d565b848454620008f5565b825550505050565b600090565b620009c1620009b2565b620009ce81848462000987565b505050565b5b81811015620009f657620009ea600082620009b7565b600181019050620009d4565b5050565b601f82111562000a455762000a0f81620008c3565b62000a1a84620008d8565b8101602085101562000a2a578190505b62000a4262000a3985620008d8565b830182620009d3565b50505b505050565b600082821c905092915050565b600062000a6a6000198460080262000a4a565b1980831691505092915050565b600062000a85838362000a57565b9150826002028217905092915050565b62000aa08262000825565b67ffffffffffffffff81111562000abc5762000abb62000830565b5b62000ac882546200088e565b62000ad5828285620009fa565b600060209050601f83116001811462000b0d576000841562000af8578287015190505b62000b04858262000a77565b86555062000b74565b601f19841662000b1d86620008c3565b60005b8281101562000b475784890151825560018201915060208501945060208101905062000b20565b8683101562000b67578489015162000b63601f89168262000a57565b8355505b6001600288020188555050505b505050505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000ba98262000b7c565b9050919050565b62000bbb8162000b9c565b82525050565b600060208201905062000bd8600083018462000bb0565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000c1a82620007b8565b915062000c2783620007b8565b925082820262000c3781620007b8565b9150828204841483151762000c515762000c5062000bde565b5b5092915050565b62000c6381620007b8565b82525050565b600060408201905062000c80600083018562000c58565b62000c8f602083018462000c58565b9392505050565b600082825260208201905092915050565b7f496e76616c696420746f6b656e20707269636500000000000000000000000000600082015250565b600062000cdf60138362000c96565b915062000cec8262000ca7565b602082019050919050565b6000602082019050818103600083015262000d128162000cd0565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000d5582620007b8565b915062000d6283620007b8565b92508262000d755762000d7462000d19565b5b828204905092915050565b600062000d8d82620007b8565b915062000d9a83620007b8565b925082820390508181111562000db55762000db462000bde565b5b92915050565b600062000dc882620007b8565b915062000dd583620007b8565b925082820190508082111562000df05762000def62000bde565b5b92915050565b600060e08201905062000e0d600083018a62000c58565b62000e1c602083018962000c58565b62000e2b604083018862000c58565b62000e3a606083018762000c58565b62000e49608083018662000c58565b62000e5860a083018562000c58565b62000e6760c083018462000c58565b98975050505050505050565b600060608201905062000e8a600083018662000c58565b62000e99602083018562000c58565b62000ea8604083018462000c58565b949350505050565b614e218062000ec06000396000f3fe6080604052600436106104355760003560e01c8063715018a611610229578063b9e1e0ee1161012e578063d414c1a9116100b6578063f136ea771161007a578063f136ea771461104c578063f2fa1a3114611077578063f2fde38b146110a2578063fe57b3c3146110cb578063feb2686c146111085761043c565b8063d414c1a914610f63578063d871b7ed14610f8e578063dd62ed3e14610fb9578063e592b84e14610ff6578063e719f6ff146110215761043c565b8063c673f3f3116100fd578063c673f3f314610e8e578063c8da04f214610ea5578063ce7c2ac214610ed0578063cfdd59a014610f0d578063d04aa44214610f385761043c565b8063b9e1e0ee14610de4578063bc13f8bd14610dfb578063c272ab8d14610e26578063c59af0a614610e515761043c565b806399a1fe97116101b15780639ce499b4116101805780639ce499b414610d2d578063a0712d6814610d37578063a829f81214610d53578063a9059cbb14610d7e578063b390c0ab14610dbb5761043c565b806399a1fe9714610c7157806399a5d74714610c9c57806399e040fa14610cd95780639a9fb43614610d045761043c565b806385520b0f116101f857806385520b0f14610b9e5780638d3abbd014610bb55780638da5cb5b14610bde5780638fdcd46714610c0957806395d89b4114610c465761043c565b8063715018a614610af4578063719d87ff14610b0b578063795f5b3c14610b365780637bb1ca1914610b615761043c565b80633906f3ee1161033a57806355f243f9116102c25780636403f9b3116102865780636403f9b314610a0a578063659b4d8b14610a4757806369c1a71214610a635780636e029ad114610a8e57806370a0823114610ab75761043c565b806355f243f914610921578063561a4fac1461094c57806358469526146109775780635b9f0016146109b45780635c975abb146109df5761043c565b806341c41baf1161030957806341c41baf14610838578063486019c8146108635780634dd292401461088e578063500eabae146108b9578063545b97f3146108f65761043c565b80633906f3ee146107995780633a4b66f1146107d85780633a98ef39146107e25780633b2b00131461080d5761043c565b806323b872dd116103bd5780632c14c40c1161038c5780632c14c40c146106b45780632e17de78146106dd578063313ce56714610706578063332e48891461073157806336254a551461075c5761043c565b806323b872dd146105d257806323f3fc621461060f57806327701be11461064c5780632859710a146106895761043c565b80631371d092116104045780631371d092146104fd57806313bf629a1461052857806316c38b3c1461055357806318160ddd1461057c5780631f6de60a146105a75761043c565b806306fdde0314610441578063095ea7b31461046c5780630d0c794a146104a95780630f050dc0146104d25761043c565b3661043c57005b600080fd5b34801561044d57600080fd5b50610456611131565b6040516104639190613e64565b60405180910390f35b34801561047857600080fd5b50610493600480360381019061048e9190613f1f565b6111c3565b6040516104a09190613f7a565b60405180910390f35b3480156104b557600080fd5b506104d060048036038101906104cb9190613f95565b6111e6565b005b3480156104de57600080fd5b506104e761131f565b6040516104f49190613fd1565b60405180910390f35b34801561050957600080fd5b50610512611325565b60405161051f9190613fd1565b60405180910390f35b34801561053457600080fd5b5061053d61132b565b60405161054a9190613fd1565b60405180910390f35b34801561055f57600080fd5b5061057a60048036038101906105759190614018565b611331565b005b34801561058857600080fd5b50610591611358565b60405161059e9190613fd1565b60405180910390f35b3480156105b357600080fd5b506105bc611362565b6040516105c99190613fd1565b60405180910390f35b3480156105de57600080fd5b506105f960048036038101906105f49190614045565b611368565b6040516106069190613f7a565b60405180910390f35b34801561061b57600080fd5b5061063660048036038101906106319190614098565b611397565b6040516106439190613fd1565b60405180910390f35b34801561065857600080fd5b50610673600480360381019061066e91906140d8565b611406565b6040516106809190613fd1565b60405180910390f35b34801561069557600080fd5b5061069e61142b565b6040516106ab9190613fd1565b60405180910390f35b3480156106c057600080fd5b506106db60048036038101906106d691906140d8565b61145a565b005b3480156106e957600080fd5b5061070460048036038101906106ff91906140d8565b6114bd565b005b34801561071257600080fd5b5061071b611991565b6040516107289190614121565b60405180910390f35b34801561073d57600080fd5b5061074661199a565b6040516107539190613fd1565b60405180910390f35b34801561076857600080fd5b50610783600480360381019061077e91906140d8565b6119a0565b6040516107909190613fd1565b60405180910390f35b3480156107a557600080fd5b506107c060048036038101906107bb9190614098565b6119c5565b6040516107cf9392919061413c565b60405180910390f35b6107e0611a31565b005b3480156107ee57600080fd5b506107f7611c4d565b6040516108049190613fd1565b60405180910390f35b34801561081957600080fd5b50610822611c53565b60405161082f9190613fd1565b60405180910390f35b34801561084457600080fd5b5061084d611ca3565b60405161085a9190613fd1565b60405180910390f35b34801561086f57600080fd5b50610878611d37565b6040516108859190613fd1565b60405180910390f35b34801561089a57600080fd5b506108a3611d3d565b6040516108b09190613fd1565b60405180910390f35b3480156108c557600080fd5b506108e060048036038101906108db91906140d8565b611d43565b6040516108ed9190613f7a565b60405180910390f35b34801561090257600080fd5b5061090b611d83565b6040516109189190613fd1565b60405180910390f35b34801561092d57600080fd5b50610936611d9f565b6040516109439190613fd1565b60405180910390f35b34801561095857600080fd5b50610961611da5565b60405161096e9190613fd1565b60405180910390f35b34801561098357600080fd5b5061099e600480360381019061099991906140d8565b611dab565b6040516109ab9190613fd1565b60405180910390f35b3480156109c057600080fd5b506109c9611dcf565b6040516109d69190613fd1565b60405180910390f35b3480156109eb57600080fd5b506109f4611dd5565b604051610a019190613f7a565b60405180910390f35b348015610a1657600080fd5b50610a316004803603810190610a2c91906140d8565b611dec565b604051610a3e9190613fd1565b60405180910390f35b610a616004803603810190610a5c91906140d8565b611e28565b005b348015610a6f57600080fd5b50610a78611fcc565b604051610a859190613fd1565b60405180910390f35b348015610a9a57600080fd5b50610ab56004803603810190610ab091906140d8565b611fd2565b005b348015610ac357600080fd5b50610ade6004803603810190610ad99190613f95565b6121a3565b604051610aeb9190613fd1565b60405180910390f35b348015610b0057600080fd5b50610b096121eb565b005b348015610b1757600080fd5b50610b206121ff565b604051610b2d9190613fd1565b60405180910390f35b348015610b4257600080fd5b50610b4b612205565b604051610b589190613f7a565b60405180910390f35b348015610b6d57600080fd5b50610b886004803603810190610b839190613f95565b612218565b604051610b959190613fd1565b60405180910390f35b348015610baa57600080fd5b50610bb3612230565b005b348015610bc157600080fd5b50610bdc6004803603810190610bd79190614098565b61228c565b005b348015610bea57600080fd5b50610bf36122ed565b604051610c009190614182565b60405180910390f35b348015610c1557600080fd5b50610c306004803603810190610c2b91906140d8565b612317565b604051610c3d9190613fd1565b60405180910390f35b348015610c5257600080fd5b50610c5b61235a565b604051610c689190613e64565b60405180910390f35b348015610c7d57600080fd5b50610c866123ec565b604051610c939190613fd1565b60405180910390f35b348015610ca857600080fd5b50610cc36004803603810190610cbe91906140d8565b6123f2565b604051610cd09190613fd1565b60405180910390f35b348015610ce557600080fd5b50610cee61247a565b604051610cfb9190613fd1565b60405180910390f35b348015610d1057600080fd5b50610d2b6004803603810190610d269190614098565b6124be565b005b610d3561268b565b005b610d516004803603810190610d4c91906140d8565b61279c565b005b348015610d5f57600080fd5b50610d68612a4b565b604051610d759190613fd1565b60405180910390f35b348015610d8a57600080fd5b50610da56004803603810190610da09190613f1f565b612a51565b604051610db29190613f7a565b60405180910390f35b348015610dc757600080fd5b50610de26004803603810190610ddd9190614098565b612a74565b005b348015610df057600080fd5b50610df9612d38565b005b348015610e0757600080fd5b50610e10612d8f565b604051610e1d9190613fd1565b60405180910390f35b348015610e3257600080fd5b50610e3b612da6565b604051610e489190613fd1565b60405180910390f35b348015610e5d57600080fd5b50610e786004803603810190610e7391906140d8565b612dac565b604051610e859190613fd1565b60405180910390f35b348015610e9a57600080fd5b50610ea3612e14565b005b348015610eb157600080fd5b50610eba612fa3565b604051610ec79190613fd1565b60405180910390f35b348015610edc57600080fd5b50610ef76004803603810190610ef29190613f95565b612fa9565b604051610f049190613fd1565b60405180910390f35b348015610f1957600080fd5b50610f22612fc1565b604051610f2f9190613fd1565b60405180910390f35b348015610f4457600080fd5b50610f4d612fc7565b604051610f5a9190613fd1565b60405180910390f35b348015610f6f57600080fd5b50610f78612fcd565b604051610f859190613fd1565b60405180910390f35b348015610f9a57600080fd5b50610fa3612fd3565b604051610fb09190613fd1565b60405180910390f35b348015610fc557600080fd5b50610fe06004803603810190610fdb919061419d565b613002565b604051610fed9190613fd1565b60405180910390f35b34801561100257600080fd5b5061100b613089565b6040516110189190613fd1565b60405180910390f35b34801561102d57600080fd5b5061103661308f565b6040516110439190613fd1565b60405180910390f35b34801561105857600080fd5b50611061613096565b60405161106e9190613fd1565b60405180910390f35b34801561108357600080fd5b5061108c61309c565b6040516110999190613fd1565b60405180910390f35b3480156110ae57600080fd5b506110c960048036038101906110c49190613f95565b613140565b005b3480156110d757600080fd5b506110f260048036038101906110ed91906140d8565b6131c6565b6040516110ff9190613fd1565b60405180910390f35b34801561111457600080fd5b5061112f600480360381019061112a91906140d8565b6131e5565b005b6060600380546111409061420c565b80601f016020809104026020016040519081016040528092919081815260200182805461116c9061420c565b80156111b95780601f1061118e576101008083540402835291602001916111b9565b820191906000526020600020905b81548152906001019060200180831161119c57829003601f168201915b5050505050905090565b6000806111ce6133a6565b90506111db8185856133ae565b600191505092915050565b6111ee6133c0565b6000601260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000601154600a5483611245919061426c565b61124f91906142dd565b90506000601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081601160008282546112a8919061430e565b9250508190555080600a60008282546112c1919061430e565b925050819055508273ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561130e573d6000803e3d6000fd5b5061131a601854613447565b505050565b600b5481565b600e5481565b600d5481565b6113396133c0565b801561134c576113476134ef565b611355565b611354613552565b5b50565b6000600254905090565b601b5481565b6000806113736133a6565b90506113808582856135b5565b61138b858585613649565b60019150509392505050565b60008083836113a6919061426c565b905060006113b2611358565b9050600082036113c757600092505050611400565b601f548110156113dd5760145492505050611400565b600081836113eb91906142dd565b9050600a816113fa91906142dd565b93505050505b92915050565b6000629896806018548361141a919061426c565b61142491906142dd565b9050919050565b60008061143a60185447611397565b9050620f4240811061145257620f4240915050611457565b809150505b90565b6114626133c0565b600a8110158015611474575060648111155b6114b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114aa906143b4565b60405180910390fd5b80601c8190555050565b6114c561373d565b6114cd613783565b6000601954426114dd919061430e565b9050601a54811115611524576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151b90614420565b60405180910390fd5b600060115411611569576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115609061448c565b60405180910390fd5b6000600a54116115ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a5906144f8565b60405180910390fd5b6000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411611630576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162790614564565b60405180910390fd5b6000820361167b57601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205491505b81601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156116fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f4906145d0565b60405180910390fd5b62015180601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461174b91906145f0565b421161178c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178390614670565b60405180910390fd5b600061179783611dab565b905060006117a482611406565b9050601b548110156117eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e2906146dc565b60405180910390fd5b6117f482611d43565b611833576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182a9061476e565b60405180910390fd5b600e5461184f60185484600a5461184a919061430e565b611397565b1015611890576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188790614800565b60405180910390fd5b83601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546118df919061430e565b9250508190555083601160008282546118f8919061430e565b9250508190555081600a6000828254611911919061430e565b9250508190555081601e600082825461192a91906145f0565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015611977573d6000803e3d6000fd5b50611983601854613447565b50505061198e6137c4565b50565b60006012905090565b60095481565b600060185462989680836119b4919061426c565b6119be91906142dd565b9050919050565b6000806000806119e08686476119db91906145f0565b611397565b905060006119ed87612317565b9050600087476119fd919061426c565b90506000600a600e5483611a1191906142dd565b611a1b91906142dd565b9050838382965096509650505050509250925092565b600060195442611a41919061430e565b9050601a54811115611a88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7f90614420565b60405180910390fd5b611a9061373d565b611a98613783565b600760019054906101000a900460ff1615611ae8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611adf90614892565b60405180910390fd5b6000611af334611406565b9050601b54811015611b3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b31906146dc565b60405180910390fd5b60008060115414611b6557600a5460115434611b56919061426c565b611b6091906142dd565b611b67565b345b905042601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bfc91906145f0565b925050819055508060116000828254611c1591906145f0565b9250508190555034600a6000828254611c2e91906145f0565b92505081905550611c40601854613447565b5050611c4a6137c4565b50565b60115481565b6000601754611c60611358565b10611c6e5760009050611ca0565b6000611c78611358565b601754611c85919061430e565b9050601b54811015611c9b576000915050611ca0565b809150505b90565b600080611cae611358565b1480611cbe5750601d54601e5410155b15611ccc5760009050611d34565b686c6b935b8bbd400000611cde611358565b11611d1957680ad78ebc5ac6200000611cf5611358565b11611d0757611d02611358565b611d12565b680ad78ebc5ac62000005b9050611d34565b611d31601e54601d54611d2c919061430e565b611406565b90505b90565b60185481565b601c5481565b6000601f54611d536011546131c6565b1015611d625760019050611d7e565b6000601e54601d54611d74919061430e565b9050808311159150505b919050565b600080611d8e611c53565b9050611d99816119a0565b91505090565b600f5481565b601a5481565b6000601154600a5483611dbe919061426c565b611dc891906142dd565b9050919050565b600a5481565b6000600760009054906101000a900460ff16905090565b600080611e066018548447611e01919061430e565b611397565b9050620f42408110611e1e57620f4240915050611e23565b809150505b919050565b611e306133c0565b6000611e3b346123f2565b905060008134611e4b919061430e565b90506000611e5882611406565b9050611e62611d83565b341115611ea4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e9b9061494a565b60405180910390fd5b611eac611c53565b811115611eee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ee590614a02565b60405180910390fd5b6000611ef861142b565b905084811015611f3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f3490614a6e565b60405180910390fd5b620f4240811015611f6557620f42408183611f58919061426c565b611f6291906142dd565b91505b83600b6000828254611f7791906145f0565b925050819055508260096000828254611f9091906145f0565b9250508190555082601e6000828254611fa991906145f0565b92505081905550611fba33836137ce565b611fc5601854613447565b5050505050565b60195481565b611fda6133c0565b6000811161201d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201490614ada565b60405180910390fd5b426019819055508060188190555061203481613447565b60006064600854600b54612048919061426c565b61205291906142dd565b9050600081600b54612064919061430e565b905060008211156120e95781600b6000828254612081919061430e565b9250508190555081600d600082825461209a91906145f0565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156120e7573d6000803e3d6000fd5b505b60008111156121255780600c600082825461210491906145f0565b9250508190555080600a600082825461211d91906145f0565b925050819055505b6064601c5447612135919061426c565b61213f91906142dd565b601d819055506000601e819055506000600b819055507fc103c723b7378333fae15e2260564b6a0a971fc36b7f939d2ffe646a63066e0b4284600f54600e5460175487876040516121969796959493929190614afa565b60405180910390a1505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6121f36133c0565b6121fd6000613850565b565b60175481565b600760019054906101000a900460ff1681565b60136020528060005260406000206000915090505481565b6122386133c0565b6001600760016101000a81548160ff0219169083151502179055507f4cd148a3ad6a049b84253c6fe2dfeabc8da63c1a008f588d674707cdd43d725c426040516122829190613fd1565b60405180910390a1565b6122946133c0565b8160158190555062989680816122aa919061426c565b6016819055507f416cd495d2099a252a98abab54007d069c13a921ef9d0ac5a1373d234c103aac82826040516122e1929190614b69565b60405180910390a15050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000806016548360155461232b919061426c565b61233591906145f0565b905062989680606482612348919061426c565b61235291906142dd565b915050919050565b6060600480546123699061420c565b80601f01602080910402602001604051908101604052809291908181526020018280546123959061420c565b80156123e25780601f106123b7576101008083540402835291602001916123e2565b820191906000526020600020905b8154815290600101906020018083116123c557829003601f168201915b5050505050905090565b60155481565b60006002600e5461240391906142dd565b600f54101561242c57606460058361241b919061426c565b61242591906142dd565b9050612475565b600e54600f541015612458576064600183612447919061426c565b61245191906142dd565b9050612475565b612710601983612468919061426c565b61247291906142dd565b90505b919050565b6000601f5461248a6011546131c6565b101561249a5760115490506124bb565b6000601e54601d546124ac919061430e565b90506124b781612dac565b9150505b90565b6124c66133c0565b60006124d1836119a0565b905060006124de826123f2565b9050600081836124ee919061430e565b905060006124fb84611dec565b905084811015612540576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161253790614a6e565b60405180910390fd5b620f424081101561256857620f4240818361255b919061426c565b61256591906142dd565b91505b82600b600082825461257a91906145f0565b9250508190555061258b3387613916565b8160095411156125b35781600960008282546125a7919061430e565b92505081905550612618565b600060095411156125fd57600060095490506000600981905550600081846125db919061430e565b905080600a60008282546125ef919061430e565b925050819055505050612617565b81600a600082825461260f919061430e565b925050819055505b5b81601e600082825461262a91906145f0565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015612677573d6000803e3d6000fd5b50612683601854613447565b505050505050565b6126936133c0565b600080601154146126be57600a54601154346126af919061426c565b6126b991906142dd565b6126c0565b345b905042601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461275591906145f0565b92505081905550806011600082825461276e91906145f0565b9250508190555034600a600082825461278791906145f0565b92505081905550612799601854613447565b50565b6127a4613783565b6127ac61373d565b6000601954426127bc919061430e565b9050601a54811115612803576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127fa90614420565b60405180910390fd5b600760019054906101000a900460ff1615612853576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161284a90614892565b60405180910390fd5b600061285e34611406565b9050601b548110156128a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161289c906146dc565b60405180910390fd5b60006128b0346123f2565b9050600081346128c0919061430e565b905060006128cd82611406565b90506128d7611d83565b341115612919576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129109061494a565b60405180910390fd5b612921611c53565b811115612963576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161295a90614a02565b60405180910390fd5b600061296d61142b565b9050868110156129b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129a990614a6e565b60405180910390fd5b620f42408110156129da57620f424081836129cd919061426c565b6129d791906142dd565b91505b83600b60008282546129ec91906145f0565b925050819055508260096000828254612a0591906145f0565b9250508190555082601e6000828254612a1e91906145f0565b92505081905550612a2f33836137ce565b612a3a601854613447565b505050505050612a486137c4565b50565b60085481565b600080612a5c6133a6565b9050612a69818585613649565b600191505092915050565b612a7c613783565b612a8461373d565b600060195442612a94919061430e565b9050601a54811115612adb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ad290614420565b60405180910390fd5b601b54831015612b20576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b17906146dc565b60405180910390fd5b6000612b2b846119a0565b90506000612b38826123f2565b905060008183612b48919061430e565b90506000612b5584611dec565b905085811015612b9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b9190614a6e565b60405180910390fd5b620f4240811015612bc257620f42408183612bb5919061426c565b612bbf91906142dd565b91505b82600b6000828254612bd491906145f0565b92505081905550612be3611ca3565b871115612c25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c1c90614c04565b60405180910390fd5b612c2f3388613916565b816009541115612c57578160096000828254612c4b919061430e565b92505081905550612cbc565b60006009541115612ca15760006009549050600060098190555060008184612c7f919061430e565b905080600a6000828254612c93919061430e565b925050819055505050612cbb565b81600a6000828254612cb3919061430e565b925050819055505b5b81601e6000828254612cce91906145f0565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015612d1b573d6000803e3d6000fd5b50612d27601854613447565b5050505050612d346137c4565b5050565b612d406133c0565b60004790503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612d8b573d6000803e3d6000fd5b5050565b6000601e54601d54612da1919061430e565b905090565b60105481565b600080600a5411612df2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612de990614c96565b60405180910390fd5b600a5460115483612e03919061426c565b612e0d91906142dd565b9050919050565b612e1c61373d565b600760019054906101000a900460ff16612e6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e6290614d02565b60405180910390fd5b6000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000601154600a5483612ec2919061426c565b612ecc91906142dd565b90506000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160116000828254612f25919061430e565b9250508190555080600a6000828254612f3e919061430e565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612f8b573d6000803e3d6000fd5b50612f97601854613447565b5050612fa16137c4565b565b600c5481565b60126020528060005260406000206000915090505481565b60145481565b60165481565b601f5481565b600080612fde61247a565b90506000612fea61309c565b9050808210612ff95780612ffb565b815b9250505090565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601e5481565b6298968081565b601d5481565b6000600e5460105410156130e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130dc90614d94565b60405180910390fd5b6000600e546010546130f7919061430e565b9050600060105482600a5461310c919061426c565b61311691906142dd565b90506000600a546011548361312b919061426c565b61313591906142dd565b905080935050505090565b6131486133c0565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036131ba5760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016131b19190614182565b60405180910390fd5b6131c381613850565b50565b6000806131d283611dab565b90506131dd81611406565b915050919050565b6131ed6133c0565b6000810361323857601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b80601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156132ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016132b1906145d0565b60405180910390fd5b6000601154600a54836132cd919061426c565b6132d791906142dd565b90506000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160116000828254613330919061430e565b9250508190555080600a6000828254613349919061430e565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015613396573d6000803e3d6000fd5b506133a2601854613447565b5050565b600033905090565b6133bb8383836001613998565b505050565b6133c86133a6565b73ffffffffffffffffffffffffffffffffffffffff166133e66122ed565b73ffffffffffffffffffffffffffffffffffffffff1614613445576134096133a6565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815260040161343c9190614182565b60405180910390fd5b565b6134518147611397565b600f8190555061346381600a54611397565b60108190555061347281612317565b600e81905550600081600a54613488919061426c565b9050600a600e548261349a91906142dd565b6134a491906142dd565b6017819055507ffdf1fd40a766e17db01029a960e17dddf80c08c93ceb8607b35ae2446a7b1cd5600f54600e546017546040516134e39392919061413c565b60405180910390a15050565b6134f7613783565b6001600760006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861353b6133a6565b6040516135489190614182565b60405180910390a1565b61355a613b6f565b6000600760006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61359e6133a6565b6040516135ab9190614182565b60405180910390a1565b60006135c18484613002565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146136435781811015613633578281836040517ffb8f41b200000000000000000000000000000000000000000000000000000000815260040161362a93929190614db4565b60405180910390fd5b61364284848484036000613998565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036136bb5760006040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081526004016136b29190614182565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361372d5760006040517fec442f050000000000000000000000000000000000000000000000000000000081526004016137249190614182565b60405180910390fd5b613738838383613baf565b505050565b600260065403613779576040517f3ee5aeb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600681905550565b61378b611dd5565b156137c2576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6001600681905550565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036138405760006040517fec442f050000000000000000000000000000000000000000000000000000000081526004016138379190614182565b60405180910390fd5b61384c60008383613baf565b5050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036139885760006040517f96c6fd1e00000000000000000000000000000000000000000000000000000000815260040161397f9190614182565b60405180910390fd5b61399482600083613baf565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603613a0a5760006040517fe602df05000000000000000000000000000000000000000000000000000000008152600401613a019190614182565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613a7c5760006040517f94280d62000000000000000000000000000000000000000000000000000000008152600401613a739190614182565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508015613b69578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051613b609190613fd1565b60405180910390a35b50505050565b613b77611dd5565b613bad576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613c01578060026000828254613bf591906145f0565b92505081905550613cd4565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015613c8d578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401613c8493929190614db4565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613d1d5780600260008282540392505081905550613d6a565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051613dc79190613fd1565b60405180910390a3505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613e0e578082015181840152602081019050613df3565b60008484015250505050565b6000601f19601f8301169050919050565b6000613e3682613dd4565b613e408185613ddf565b9350613e50818560208601613df0565b613e5981613e1a565b840191505092915050565b60006020820190508181036000830152613e7e8184613e2b565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613eb682613e8b565b9050919050565b613ec681613eab565b8114613ed157600080fd5b50565b600081359050613ee381613ebd565b92915050565b6000819050919050565b613efc81613ee9565b8114613f0757600080fd5b50565b600081359050613f1981613ef3565b92915050565b60008060408385031215613f3657613f35613e86565b5b6000613f4485828601613ed4565b9250506020613f5585828601613f0a565b9150509250929050565b60008115159050919050565b613f7481613f5f565b82525050565b6000602082019050613f8f6000830184613f6b565b92915050565b600060208284031215613fab57613faa613e86565b5b6000613fb984828501613ed4565b91505092915050565b613fcb81613ee9565b82525050565b6000602082019050613fe66000830184613fc2565b92915050565b613ff581613f5f565b811461400057600080fd5b50565b60008135905061401281613fec565b92915050565b60006020828403121561402e5761402d613e86565b5b600061403c84828501614003565b91505092915050565b60008060006060848603121561405e5761405d613e86565b5b600061406c86828701613ed4565b935050602061407d86828701613ed4565b925050604061408e86828701613f0a565b9150509250925092565b600080604083850312156140af576140ae613e86565b5b60006140bd85828601613f0a565b92505060206140ce85828601613f0a565b9150509250929050565b6000602082840312156140ee576140ed613e86565b5b60006140fc84828501613f0a565b91505092915050565b600060ff82169050919050565b61411b81614105565b82525050565b60006020820190506141366000830184614112565b92915050565b60006060820190506141516000830186613fc2565b61415e6020830185613fc2565b61416b6040830184613fc2565b949350505050565b61417c81613eab565b82525050565b60006020820190506141976000830184614173565b92915050565b600080604083850312156141b4576141b3613e86565b5b60006141c285828601613ed4565b92505060206141d385828601613ed4565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061422457607f821691505b602082108103614237576142366141dd565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061427782613ee9565b915061428283613ee9565b925082820261429081613ee9565b915082820484148315176142a7576142a661423d565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006142e882613ee9565b91506142f383613ee9565b925082614303576143026142ae565b5b828204905092915050565b600061431982613ee9565b915061432483613ee9565b925082820390508181111561433c5761433b61423d565b5b92915050565b7f4d6178696d756d20737570706c79206368616e6765207065722068656172746260008201527f656174206d757374206265206265747765656e2031302520616e642031303025602082015250565b600061439e604083613ddf565b91506143a982614342565b604082019050919050565b600060208201905081810360008301526143cd81614391565b9050919050565b7f4865617274626561742075706461746520726571756972656400000000000000600082015250565b600061440a601983613ddf565b9150614415826143d4565b602082019050919050565b60006020820190508181036000830152614439816143fd565b9050919050565b7f4e6f207368617265732064697374726962757465640000000000000000000000600082015250565b6000614476601583613ddf565b915061448182614440565b602082019050919050565b600060208201905081810360008301526144a581614469565b9050919050565b7f4e6f207374616b65642062616c616e6365000000000000000000000000000000600082015250565b60006144e2601183613ddf565b91506144ed826144ac565b602082019050919050565b60006020820190508181036000830152614511816144d5565b9050919050565b7f4e6f20736861726573206f776e65640000000000000000000000000000000000600082015250565b600061454e600f83613ddf565b915061455982614518565b602082019050919050565b6000602082019050818103600083015261457d81614541565b9050919050565b7f496e73756666696369656e742073686172657300000000000000000000000000600082015250565b60006145ba601383613ddf565b91506145c582614584565b602082019050919050565b600060208201905081810360008301526145e9816145ad565b9050919050565b60006145fb82613ee9565b915061460683613ee9565b925082820190508082111561461e5761461d61423d565b5b92915050565b7f5374616b65206c6f636b65640000000000000000000000000000000000000000600082015250565b600061465a600c83613ddf565b915061466582614624565b602082019050919050565b600060208201905081810360008301526146898161464d565b9050919050565b7f4d696e696d756d2076616c7565206e6f74206d65740000000000000000000000600082015250565b60006146c6601583613ddf565b91506146d182614690565b602082019050919050565b600060208201905081810360008301526146f5816146b9565b9050919050565b7f5769746864726177616c20616d6f756e742065786365656473206d617820737560008201527f70706c79206368616e6765207468697320686561727462656174000000000000602082015250565b6000614758603a83613ddf565b9150614763826146fc565b604082019050919050565b600060208201905081810360008301526147878161474b565b9050919050565b7f496e73756666696369656e7420636f6c6c61746572616c697a6174696f6e206660008201527f6f72207769746864726177616c00000000000000000000000000000000000000602082015250565b60006147ea602d83613ddf565b91506147f58261478e565b604082019050919050565b60006020820190508181036000830152614819816147dd565b9050919050565b7f5553444f20696e206d6967726174696f6e3a2063616e206e6f206c6f6e67657260008201527f206d696e74206e657720746f6b656e7300000000000000000000000000000000602082015250565b600061487c603083613ddf565b915061488782614820565b604082019050919050565b600060208201905081810360008301526148ab8161486f565b9050919050565b7f43616e6e6f74206d696e743a206d696e7420616d6f756e7420776f756c64206560008201527f786365656420746865206d6178696d756d20636f6c6c61746572616c697a656460208201527f20737570706c79202857446f6765290000000000000000000000000000000000604082015250565b6000614934604f83613ddf565b915061493f826148b2565b606082019050919050565b6000602082019050818103600083015261496381614927565b9050919050565b7f43616e6e6f74206d696e743a206d696e7420616d6f756e7420776f756c64206560008201527f786365656420746865206d6178696d756d20636f6c6c61746572616c697a656460208201527f20737570706c7920285553444f29000000000000000000000000000000000000604082015250565b60006149ec604e83613ddf565b91506149f78261496a565b606082019050919050565b60006020820190508181036000830152614a1b816149df565b9050919050565b7f506172697479206e6f74206d6574000000000000000000000000000000000000600082015250565b6000614a58600e83613ddf565b9150614a6382614a22565b602082019050919050565b60006020820190508181036000830152614a8781614a4b565b9050919050565b7f496e76616c696420746f6b656e20707269636500000000000000000000000000600082015250565b6000614ac4601383613ddf565b9150614acf82614a8e565b602082019050919050565b60006020820190508181036000830152614af381614ab7565b9050919050565b600060e082019050614b0f600083018a613fc2565b614b1c6020830189613fc2565b614b296040830188613fc2565b614b366060830187613fc2565b614b436080830186613fc2565b614b5060a0830185613fc2565b614b5d60c0830184613fc2565b98975050505050505050565b6000604082019050614b7e6000830185613fc2565b614b8b6020830184613fc2565b9392505050565b7f4d61782068656172746265617420737570706c79206368616e6765207265616360008201527f6865640000000000000000000000000000000000000000000000000000000000602082015250565b6000614bee602383613ddf565b9150614bf982614b92565b604082019050919050565b60006020820190508181036000830152614c1d81614be1565b9050919050565b7f5374616b65642062616c616e6365206d7573742062652067726561746572207460008201527f68616e2030000000000000000000000000000000000000000000000000000000602082015250565b6000614c80602583613ddf565b9150614c8b82614c24565b604082019050919050565b60006020820190508181036000830152614caf81614c73565b9050919050565b7f4d6967726174696f6e207769746864726177616c206e6f7420656e61626c6564600082015250565b6000614cec602083613ddf565b9150614cf782614cb6565b602082019050919050565b60006020820190508181036000830152614d1b81614cdf565b9050919050565b7f496e73756666696369656e7420636f6c6c61746572616c697a6174696f6e206660008201527f6f7220756e7374616b696e670000000000000000000000000000000000000000602082015250565b6000614d7e602c83613ddf565b9150614d8982614d22565b604082019050919050565b60006020820190508181036000830152614dad81614d71565b9050919050565b6000606082019050614dc96000830186614173565b614dd66020830185613fc2565b614de36040830184613fc2565b94935050505056fea26469706673582212207cab98b1e247607412dab1bb66bd4ba93e378dee80b6240526bd121846e047ae64736f6c6343000814003300000000000000000000000000000000000000000000000000000000000d041f

Deployed ByteCode

0x6080604052600436106104355760003560e01c8063715018a611610229578063b9e1e0ee1161012e578063d414c1a9116100b6578063f136ea771161007a578063f136ea771461104c578063f2fa1a3114611077578063f2fde38b146110a2578063fe57b3c3146110cb578063feb2686c146111085761043c565b8063d414c1a914610f63578063d871b7ed14610f8e578063dd62ed3e14610fb9578063e592b84e14610ff6578063e719f6ff146110215761043c565b8063c673f3f3116100fd578063c673f3f314610e8e578063c8da04f214610ea5578063ce7c2ac214610ed0578063cfdd59a014610f0d578063d04aa44214610f385761043c565b8063b9e1e0ee14610de4578063bc13f8bd14610dfb578063c272ab8d14610e26578063c59af0a614610e515761043c565b806399a1fe97116101b15780639ce499b4116101805780639ce499b414610d2d578063a0712d6814610d37578063a829f81214610d53578063a9059cbb14610d7e578063b390c0ab14610dbb5761043c565b806399a1fe9714610c7157806399a5d74714610c9c57806399e040fa14610cd95780639a9fb43614610d045761043c565b806385520b0f116101f857806385520b0f14610b9e5780638d3abbd014610bb55780638da5cb5b14610bde5780638fdcd46714610c0957806395d89b4114610c465761043c565b8063715018a614610af4578063719d87ff14610b0b578063795f5b3c14610b365780637bb1ca1914610b615761043c565b80633906f3ee1161033a57806355f243f9116102c25780636403f9b3116102865780636403f9b314610a0a578063659b4d8b14610a4757806369c1a71214610a635780636e029ad114610a8e57806370a0823114610ab75761043c565b806355f243f914610921578063561a4fac1461094c57806358469526146109775780635b9f0016146109b45780635c975abb146109df5761043c565b806341c41baf1161030957806341c41baf14610838578063486019c8146108635780634dd292401461088e578063500eabae146108b9578063545b97f3146108f65761043c565b80633906f3ee146107995780633a4b66f1146107d85780633a98ef39146107e25780633b2b00131461080d5761043c565b806323b872dd116103bd5780632c14c40c1161038c5780632c14c40c146106b45780632e17de78146106dd578063313ce56714610706578063332e48891461073157806336254a551461075c5761043c565b806323b872dd146105d257806323f3fc621461060f57806327701be11461064c5780632859710a146106895761043c565b80631371d092116104045780631371d092146104fd57806313bf629a1461052857806316c38b3c1461055357806318160ddd1461057c5780631f6de60a146105a75761043c565b806306fdde0314610441578063095ea7b31461046c5780630d0c794a146104a95780630f050dc0146104d25761043c565b3661043c57005b600080fd5b34801561044d57600080fd5b50610456611131565b6040516104639190613e64565b60405180910390f35b34801561047857600080fd5b50610493600480360381019061048e9190613f1f565b6111c3565b6040516104a09190613f7a565b60405180910390f35b3480156104b557600080fd5b506104d060048036038101906104cb9190613f95565b6111e6565b005b3480156104de57600080fd5b506104e761131f565b6040516104f49190613fd1565b60405180910390f35b34801561050957600080fd5b50610512611325565b60405161051f9190613fd1565b60405180910390f35b34801561053457600080fd5b5061053d61132b565b60405161054a9190613fd1565b60405180910390f35b34801561055f57600080fd5b5061057a60048036038101906105759190614018565b611331565b005b34801561058857600080fd5b50610591611358565b60405161059e9190613fd1565b60405180910390f35b3480156105b357600080fd5b506105bc611362565b6040516105c99190613fd1565b60405180910390f35b3480156105de57600080fd5b506105f960048036038101906105f49190614045565b611368565b6040516106069190613f7a565b60405180910390f35b34801561061b57600080fd5b5061063660048036038101906106319190614098565b611397565b6040516106439190613fd1565b60405180910390f35b34801561065857600080fd5b50610673600480360381019061066e91906140d8565b611406565b6040516106809190613fd1565b60405180910390f35b34801561069557600080fd5b5061069e61142b565b6040516106ab9190613fd1565b60405180910390f35b3480156106c057600080fd5b506106db60048036038101906106d691906140d8565b61145a565b005b3480156106e957600080fd5b5061070460048036038101906106ff91906140d8565b6114bd565b005b34801561071257600080fd5b5061071b611991565b6040516107289190614121565b60405180910390f35b34801561073d57600080fd5b5061074661199a565b6040516107539190613fd1565b60405180910390f35b34801561076857600080fd5b50610783600480360381019061077e91906140d8565b6119a0565b6040516107909190613fd1565b60405180910390f35b3480156107a557600080fd5b506107c060048036038101906107bb9190614098565b6119c5565b6040516107cf9392919061413c565b60405180910390f35b6107e0611a31565b005b3480156107ee57600080fd5b506107f7611c4d565b6040516108049190613fd1565b60405180910390f35b34801561081957600080fd5b50610822611c53565b60405161082f9190613fd1565b60405180910390f35b34801561084457600080fd5b5061084d611ca3565b60405161085a9190613fd1565b60405180910390f35b34801561086f57600080fd5b50610878611d37565b6040516108859190613fd1565b60405180910390f35b34801561089a57600080fd5b506108a3611d3d565b6040516108b09190613fd1565b60405180910390f35b3480156108c557600080fd5b506108e060048036038101906108db91906140d8565b611d43565b6040516108ed9190613f7a565b60405180910390f35b34801561090257600080fd5b5061090b611d83565b6040516109189190613fd1565b60405180910390f35b34801561092d57600080fd5b50610936611d9f565b6040516109439190613fd1565b60405180910390f35b34801561095857600080fd5b50610961611da5565b60405161096e9190613fd1565b60405180910390f35b34801561098357600080fd5b5061099e600480360381019061099991906140d8565b611dab565b6040516109ab9190613fd1565b60405180910390f35b3480156109c057600080fd5b506109c9611dcf565b6040516109d69190613fd1565b60405180910390f35b3480156109eb57600080fd5b506109f4611dd5565b604051610a019190613f7a565b60405180910390f35b348015610a1657600080fd5b50610a316004803603810190610a2c91906140d8565b611dec565b604051610a3e9190613fd1565b60405180910390f35b610a616004803603810190610a5c91906140d8565b611e28565b005b348015610a6f57600080fd5b50610a78611fcc565b604051610a859190613fd1565b60405180910390f35b348015610a9a57600080fd5b50610ab56004803603810190610ab091906140d8565b611fd2565b005b348015610ac357600080fd5b50610ade6004803603810190610ad99190613f95565b6121a3565b604051610aeb9190613fd1565b60405180910390f35b348015610b0057600080fd5b50610b096121eb565b005b348015610b1757600080fd5b50610b206121ff565b604051610b2d9190613fd1565b60405180910390f35b348015610b4257600080fd5b50610b4b612205565b604051610b589190613f7a565b60405180910390f35b348015610b6d57600080fd5b50610b886004803603810190610b839190613f95565b612218565b604051610b959190613fd1565b60405180910390f35b348015610baa57600080fd5b50610bb3612230565b005b348015610bc157600080fd5b50610bdc6004803603810190610bd79190614098565b61228c565b005b348015610bea57600080fd5b50610bf36122ed565b604051610c009190614182565b60405180910390f35b348015610c1557600080fd5b50610c306004803603810190610c2b91906140d8565b612317565b604051610c3d9190613fd1565b60405180910390f35b348015610c5257600080fd5b50610c5b61235a565b604051610c689190613e64565b60405180910390f35b348015610c7d57600080fd5b50610c866123ec565b604051610c939190613fd1565b60405180910390f35b348015610ca857600080fd5b50610cc36004803603810190610cbe91906140d8565b6123f2565b604051610cd09190613fd1565b60405180910390f35b348015610ce557600080fd5b50610cee61247a565b604051610cfb9190613fd1565b60405180910390f35b348015610d1057600080fd5b50610d2b6004803603810190610d269190614098565b6124be565b005b610d3561268b565b005b610d516004803603810190610d4c91906140d8565b61279c565b005b348015610d5f57600080fd5b50610d68612a4b565b604051610d759190613fd1565b60405180910390f35b348015610d8a57600080fd5b50610da56004803603810190610da09190613f1f565b612a51565b604051610db29190613f7a565b60405180910390f35b348015610dc757600080fd5b50610de26004803603810190610ddd9190614098565b612a74565b005b348015610df057600080fd5b50610df9612d38565b005b348015610e0757600080fd5b50610e10612d8f565b604051610e1d9190613fd1565b60405180910390f35b348015610e3257600080fd5b50610e3b612da6565b604051610e489190613fd1565b60405180910390f35b348015610e5d57600080fd5b50610e786004803603810190610e7391906140d8565b612dac565b604051610e859190613fd1565b60405180910390f35b348015610e9a57600080fd5b50610ea3612e14565b005b348015610eb157600080fd5b50610eba612fa3565b604051610ec79190613fd1565b60405180910390f35b348015610edc57600080fd5b50610ef76004803603810190610ef29190613f95565b612fa9565b604051610f049190613fd1565b60405180910390f35b348015610f1957600080fd5b50610f22612fc1565b604051610f2f9190613fd1565b60405180910390f35b348015610f4457600080fd5b50610f4d612fc7565b604051610f5a9190613fd1565b60405180910390f35b348015610f6f57600080fd5b50610f78612fcd565b604051610f859190613fd1565b60405180910390f35b348015610f9a57600080fd5b50610fa3612fd3565b604051610fb09190613fd1565b60405180910390f35b348015610fc557600080fd5b50610fe06004803603810190610fdb919061419d565b613002565b604051610fed9190613fd1565b60405180910390f35b34801561100257600080fd5b5061100b613089565b6040516110189190613fd1565b60405180910390f35b34801561102d57600080fd5b5061103661308f565b6040516110439190613fd1565b60405180910390f35b34801561105857600080fd5b50611061613096565b60405161106e9190613fd1565b60405180910390f35b34801561108357600080fd5b5061108c61309c565b6040516110999190613fd1565b60405180910390f35b3480156110ae57600080fd5b506110c960048036038101906110c49190613f95565b613140565b005b3480156110d757600080fd5b506110f260048036038101906110ed91906140d8565b6131c6565b6040516110ff9190613fd1565b60405180910390f35b34801561111457600080fd5b5061112f600480360381019061112a91906140d8565b6131e5565b005b6060600380546111409061420c565b80601f016020809104026020016040519081016040528092919081815260200182805461116c9061420c565b80156111b95780601f1061118e576101008083540402835291602001916111b9565b820191906000526020600020905b81548152906001019060200180831161119c57829003601f168201915b5050505050905090565b6000806111ce6133a6565b90506111db8185856133ae565b600191505092915050565b6111ee6133c0565b6000601260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000601154600a5483611245919061426c565b61124f91906142dd565b90506000601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081601160008282546112a8919061430e565b9250508190555080600a60008282546112c1919061430e565b925050819055508273ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561130e573d6000803e3d6000fd5b5061131a601854613447565b505050565b600b5481565b600e5481565b600d5481565b6113396133c0565b801561134c576113476134ef565b611355565b611354613552565b5b50565b6000600254905090565b601b5481565b6000806113736133a6565b90506113808582856135b5565b61138b858585613649565b60019150509392505050565b60008083836113a6919061426c565b905060006113b2611358565b9050600082036113c757600092505050611400565b601f548110156113dd5760145492505050611400565b600081836113eb91906142dd565b9050600a816113fa91906142dd565b93505050505b92915050565b6000629896806018548361141a919061426c565b61142491906142dd565b9050919050565b60008061143a60185447611397565b9050620f4240811061145257620f4240915050611457565b809150505b90565b6114626133c0565b600a8110158015611474575060648111155b6114b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114aa906143b4565b60405180910390fd5b80601c8190555050565b6114c561373d565b6114cd613783565b6000601954426114dd919061430e565b9050601a54811115611524576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151b90614420565b60405180910390fd5b600060115411611569576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115609061448c565b60405180910390fd5b6000600a54116115ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a5906144f8565b60405180910390fd5b6000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411611630576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162790614564565b60405180910390fd5b6000820361167b57601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205491505b81601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156116fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f4906145d0565b60405180910390fd5b62015180601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461174b91906145f0565b421161178c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178390614670565b60405180910390fd5b600061179783611dab565b905060006117a482611406565b9050601b548110156117eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e2906146dc565b60405180910390fd5b6117f482611d43565b611833576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182a9061476e565b60405180910390fd5b600e5461184f60185484600a5461184a919061430e565b611397565b1015611890576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188790614800565b60405180910390fd5b83601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546118df919061430e565b9250508190555083601160008282546118f8919061430e565b9250508190555081600a6000828254611911919061430e565b9250508190555081601e600082825461192a91906145f0565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015611977573d6000803e3d6000fd5b50611983601854613447565b50505061198e6137c4565b50565b60006012905090565b60095481565b600060185462989680836119b4919061426c565b6119be91906142dd565b9050919050565b6000806000806119e08686476119db91906145f0565b611397565b905060006119ed87612317565b9050600087476119fd919061426c565b90506000600a600e5483611a1191906142dd565b611a1b91906142dd565b9050838382965096509650505050509250925092565b600060195442611a41919061430e565b9050601a54811115611a88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7f90614420565b60405180910390fd5b611a9061373d565b611a98613783565b600760019054906101000a900460ff1615611ae8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611adf90614892565b60405180910390fd5b6000611af334611406565b9050601b54811015611b3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b31906146dc565b60405180910390fd5b60008060115414611b6557600a5460115434611b56919061426c565b611b6091906142dd565b611b67565b345b905042601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bfc91906145f0565b925050819055508060116000828254611c1591906145f0565b9250508190555034600a6000828254611c2e91906145f0565b92505081905550611c40601854613447565b5050611c4a6137c4565b50565b60115481565b6000601754611c60611358565b10611c6e5760009050611ca0565b6000611c78611358565b601754611c85919061430e565b9050601b54811015611c9b576000915050611ca0565b809150505b90565b600080611cae611358565b1480611cbe5750601d54601e5410155b15611ccc5760009050611d34565b686c6b935b8bbd400000611cde611358565b11611d1957680ad78ebc5ac6200000611cf5611358565b11611d0757611d02611358565b611d12565b680ad78ebc5ac62000005b9050611d34565b611d31601e54601d54611d2c919061430e565b611406565b90505b90565b60185481565b601c5481565b6000601f54611d536011546131c6565b1015611d625760019050611d7e565b6000601e54601d54611d74919061430e565b9050808311159150505b919050565b600080611d8e611c53565b9050611d99816119a0565b91505090565b600f5481565b601a5481565b6000601154600a5483611dbe919061426c565b611dc891906142dd565b9050919050565b600a5481565b6000600760009054906101000a900460ff16905090565b600080611e066018548447611e01919061430e565b611397565b9050620f42408110611e1e57620f4240915050611e23565b809150505b919050565b611e306133c0565b6000611e3b346123f2565b905060008134611e4b919061430e565b90506000611e5882611406565b9050611e62611d83565b341115611ea4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e9b9061494a565b60405180910390fd5b611eac611c53565b811115611eee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ee590614a02565b60405180910390fd5b6000611ef861142b565b905084811015611f3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f3490614a6e565b60405180910390fd5b620f4240811015611f6557620f42408183611f58919061426c565b611f6291906142dd565b91505b83600b6000828254611f7791906145f0565b925050819055508260096000828254611f9091906145f0565b9250508190555082601e6000828254611fa991906145f0565b92505081905550611fba33836137ce565b611fc5601854613447565b5050505050565b60195481565b611fda6133c0565b6000811161201d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201490614ada565b60405180910390fd5b426019819055508060188190555061203481613447565b60006064600854600b54612048919061426c565b61205291906142dd565b9050600081600b54612064919061430e565b905060008211156120e95781600b6000828254612081919061430e565b9250508190555081600d600082825461209a91906145f0565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156120e7573d6000803e3d6000fd5b505b60008111156121255780600c600082825461210491906145f0565b9250508190555080600a600082825461211d91906145f0565b925050819055505b6064601c5447612135919061426c565b61213f91906142dd565b601d819055506000601e819055506000600b819055507fc103c723b7378333fae15e2260564b6a0a971fc36b7f939d2ffe646a63066e0b4284600f54600e5460175487876040516121969796959493929190614afa565b60405180910390a1505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6121f36133c0565b6121fd6000613850565b565b60175481565b600760019054906101000a900460ff1681565b60136020528060005260406000206000915090505481565b6122386133c0565b6001600760016101000a81548160ff0219169083151502179055507f4cd148a3ad6a049b84253c6fe2dfeabc8da63c1a008f588d674707cdd43d725c426040516122829190613fd1565b60405180910390a1565b6122946133c0565b8160158190555062989680816122aa919061426c565b6016819055507f416cd495d2099a252a98abab54007d069c13a921ef9d0ac5a1373d234c103aac82826040516122e1929190614b69565b60405180910390a15050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000806016548360155461232b919061426c565b61233591906145f0565b905062989680606482612348919061426c565b61235291906142dd565b915050919050565b6060600480546123699061420c565b80601f01602080910402602001604051908101604052809291908181526020018280546123959061420c565b80156123e25780601f106123b7576101008083540402835291602001916123e2565b820191906000526020600020905b8154815290600101906020018083116123c557829003601f168201915b5050505050905090565b60155481565b60006002600e5461240391906142dd565b600f54101561242c57606460058361241b919061426c565b61242591906142dd565b9050612475565b600e54600f541015612458576064600183612447919061426c565b61245191906142dd565b9050612475565b612710601983612468919061426c565b61247291906142dd565b90505b919050565b6000601f5461248a6011546131c6565b101561249a5760115490506124bb565b6000601e54601d546124ac919061430e565b90506124b781612dac565b9150505b90565b6124c66133c0565b60006124d1836119a0565b905060006124de826123f2565b9050600081836124ee919061430e565b905060006124fb84611dec565b905084811015612540576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161253790614a6e565b60405180910390fd5b620f424081101561256857620f4240818361255b919061426c565b61256591906142dd565b91505b82600b600082825461257a91906145f0565b9250508190555061258b3387613916565b8160095411156125b35781600960008282546125a7919061430e565b92505081905550612618565b600060095411156125fd57600060095490506000600981905550600081846125db919061430e565b905080600a60008282546125ef919061430e565b925050819055505050612617565b81600a600082825461260f919061430e565b925050819055505b5b81601e600082825461262a91906145f0565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015612677573d6000803e3d6000fd5b50612683601854613447565b505050505050565b6126936133c0565b600080601154146126be57600a54601154346126af919061426c565b6126b991906142dd565b6126c0565b345b905042601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461275591906145f0565b92505081905550806011600082825461276e91906145f0565b9250508190555034600a600082825461278791906145f0565b92505081905550612799601854613447565b50565b6127a4613783565b6127ac61373d565b6000601954426127bc919061430e565b9050601a54811115612803576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127fa90614420565b60405180910390fd5b600760019054906101000a900460ff1615612853576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161284a90614892565b60405180910390fd5b600061285e34611406565b9050601b548110156128a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161289c906146dc565b60405180910390fd5b60006128b0346123f2565b9050600081346128c0919061430e565b905060006128cd82611406565b90506128d7611d83565b341115612919576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129109061494a565b60405180910390fd5b612921611c53565b811115612963576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161295a90614a02565b60405180910390fd5b600061296d61142b565b9050868110156129b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129a990614a6e565b60405180910390fd5b620f42408110156129da57620f424081836129cd919061426c565b6129d791906142dd565b91505b83600b60008282546129ec91906145f0565b925050819055508260096000828254612a0591906145f0565b9250508190555082601e6000828254612a1e91906145f0565b92505081905550612a2f33836137ce565b612a3a601854613447565b505050505050612a486137c4565b50565b60085481565b600080612a5c6133a6565b9050612a69818585613649565b600191505092915050565b612a7c613783565b612a8461373d565b600060195442612a94919061430e565b9050601a54811115612adb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ad290614420565b60405180910390fd5b601b54831015612b20576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b17906146dc565b60405180910390fd5b6000612b2b846119a0565b90506000612b38826123f2565b905060008183612b48919061430e565b90506000612b5584611dec565b905085811015612b9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b9190614a6e565b60405180910390fd5b620f4240811015612bc257620f42408183612bb5919061426c565b612bbf91906142dd565b91505b82600b6000828254612bd491906145f0565b92505081905550612be3611ca3565b871115612c25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c1c90614c04565b60405180910390fd5b612c2f3388613916565b816009541115612c57578160096000828254612c4b919061430e565b92505081905550612cbc565b60006009541115612ca15760006009549050600060098190555060008184612c7f919061430e565b905080600a6000828254612c93919061430e565b925050819055505050612cbb565b81600a6000828254612cb3919061430e565b925050819055505b5b81601e6000828254612cce91906145f0565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015612d1b573d6000803e3d6000fd5b50612d27601854613447565b5050505050612d346137c4565b5050565b612d406133c0565b60004790503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612d8b573d6000803e3d6000fd5b5050565b6000601e54601d54612da1919061430e565b905090565b60105481565b600080600a5411612df2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612de990614c96565b60405180910390fd5b600a5460115483612e03919061426c565b612e0d91906142dd565b9050919050565b612e1c61373d565b600760019054906101000a900460ff16612e6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e6290614d02565b60405180910390fd5b6000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000601154600a5483612ec2919061426c565b612ecc91906142dd565b90506000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160116000828254612f25919061430e565b9250508190555080600a6000828254612f3e919061430e565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612f8b573d6000803e3d6000fd5b50612f97601854613447565b5050612fa16137c4565b565b600c5481565b60126020528060005260406000206000915090505481565b60145481565b60165481565b601f5481565b600080612fde61247a565b90506000612fea61309c565b9050808210612ff95780612ffb565b815b9250505090565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601e5481565b6298968081565b601d5481565b6000600e5460105410156130e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130dc90614d94565b60405180910390fd5b6000600e546010546130f7919061430e565b9050600060105482600a5461310c919061426c565b61311691906142dd565b90506000600a546011548361312b919061426c565b61313591906142dd565b905080935050505090565b6131486133c0565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036131ba5760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016131b19190614182565b60405180910390fd5b6131c381613850565b50565b6000806131d283611dab565b90506131dd81611406565b915050919050565b6131ed6133c0565b6000810361323857601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b80601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156132ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016132b1906145d0565b60405180910390fd5b6000601154600a54836132cd919061426c565b6132d791906142dd565b90506000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160116000828254613330919061430e565b9250508190555080600a6000828254613349919061430e565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015613396573d6000803e3d6000fd5b506133a2601854613447565b5050565b600033905090565b6133bb8383836001613998565b505050565b6133c86133a6565b73ffffffffffffffffffffffffffffffffffffffff166133e66122ed565b73ffffffffffffffffffffffffffffffffffffffff1614613445576134096133a6565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815260040161343c9190614182565b60405180910390fd5b565b6134518147611397565b600f8190555061346381600a54611397565b60108190555061347281612317565b600e81905550600081600a54613488919061426c565b9050600a600e548261349a91906142dd565b6134a491906142dd565b6017819055507ffdf1fd40a766e17db01029a960e17dddf80c08c93ceb8607b35ae2446a7b1cd5600f54600e546017546040516134e39392919061413c565b60405180910390a15050565b6134f7613783565b6001600760006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861353b6133a6565b6040516135489190614182565b60405180910390a1565b61355a613b6f565b6000600760006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61359e6133a6565b6040516135ab9190614182565b60405180910390a1565b60006135c18484613002565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146136435781811015613633578281836040517ffb8f41b200000000000000000000000000000000000000000000000000000000815260040161362a93929190614db4565b60405180910390fd5b61364284848484036000613998565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036136bb5760006040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081526004016136b29190614182565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361372d5760006040517fec442f050000000000000000000000000000000000000000000000000000000081526004016137249190614182565b60405180910390fd5b613738838383613baf565b505050565b600260065403613779576040517f3ee5aeb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600681905550565b61378b611dd5565b156137c2576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6001600681905550565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036138405760006040517fec442f050000000000000000000000000000000000000000000000000000000081526004016138379190614182565b60405180910390fd5b61384c60008383613baf565b5050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036139885760006040517f96c6fd1e00000000000000000000000000000000000000000000000000000000815260040161397f9190614182565b60405180910390fd5b61399482600083613baf565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603613a0a5760006040517fe602df05000000000000000000000000000000000000000000000000000000008152600401613a019190614182565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613a7c5760006040517f94280d62000000000000000000000000000000000000000000000000000000008152600401613a739190614182565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508015613b69578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051613b609190613fd1565b60405180910390a35b50505050565b613b77611dd5565b613bad576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613c01578060026000828254613bf591906145f0565b92505081905550613cd4565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015613c8d578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401613c8493929190614db4565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613d1d5780600260008282540392505081905550613d6a565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051613dc79190613fd1565b60405180910390a3505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613e0e578082015181840152602081019050613df3565b60008484015250505050565b6000601f19601f8301169050919050565b6000613e3682613dd4565b613e408185613ddf565b9350613e50818560208601613df0565b613e5981613e1a565b840191505092915050565b60006020820190508181036000830152613e7e8184613e2b565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613eb682613e8b565b9050919050565b613ec681613eab565b8114613ed157600080fd5b50565b600081359050613ee381613ebd565b92915050565b6000819050919050565b613efc81613ee9565b8114613f0757600080fd5b50565b600081359050613f1981613ef3565b92915050565b60008060408385031215613f3657613f35613e86565b5b6000613f4485828601613ed4565b9250506020613f5585828601613f0a565b9150509250929050565b60008115159050919050565b613f7481613f5f565b82525050565b6000602082019050613f8f6000830184613f6b565b92915050565b600060208284031215613fab57613faa613e86565b5b6000613fb984828501613ed4565b91505092915050565b613fcb81613ee9565b82525050565b6000602082019050613fe66000830184613fc2565b92915050565b613ff581613f5f565b811461400057600080fd5b50565b60008135905061401281613fec565b92915050565b60006020828403121561402e5761402d613e86565b5b600061403c84828501614003565b91505092915050565b60008060006060848603121561405e5761405d613e86565b5b600061406c86828701613ed4565b935050602061407d86828701613ed4565b925050604061408e86828701613f0a565b9150509250925092565b600080604083850312156140af576140ae613e86565b5b60006140bd85828601613f0a565b92505060206140ce85828601613f0a565b9150509250929050565b6000602082840312156140ee576140ed613e86565b5b60006140fc84828501613f0a565b91505092915050565b600060ff82169050919050565b61411b81614105565b82525050565b60006020820190506141366000830184614112565b92915050565b60006060820190506141516000830186613fc2565b61415e6020830185613fc2565b61416b6040830184613fc2565b949350505050565b61417c81613eab565b82525050565b60006020820190506141976000830184614173565b92915050565b600080604083850312156141b4576141b3613e86565b5b60006141c285828601613ed4565b92505060206141d385828601613ed4565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061422457607f821691505b602082108103614237576142366141dd565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061427782613ee9565b915061428283613ee9565b925082820261429081613ee9565b915082820484148315176142a7576142a661423d565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006142e882613ee9565b91506142f383613ee9565b925082614303576143026142ae565b5b828204905092915050565b600061431982613ee9565b915061432483613ee9565b925082820390508181111561433c5761433b61423d565b5b92915050565b7f4d6178696d756d20737570706c79206368616e6765207065722068656172746260008201527f656174206d757374206265206265747765656e2031302520616e642031303025602082015250565b600061439e604083613ddf565b91506143a982614342565b604082019050919050565b600060208201905081810360008301526143cd81614391565b9050919050565b7f4865617274626561742075706461746520726571756972656400000000000000600082015250565b600061440a601983613ddf565b9150614415826143d4565b602082019050919050565b60006020820190508181036000830152614439816143fd565b9050919050565b7f4e6f207368617265732064697374726962757465640000000000000000000000600082015250565b6000614476601583613ddf565b915061448182614440565b602082019050919050565b600060208201905081810360008301526144a581614469565b9050919050565b7f4e6f207374616b65642062616c616e6365000000000000000000000000000000600082015250565b60006144e2601183613ddf565b91506144ed826144ac565b602082019050919050565b60006020820190508181036000830152614511816144d5565b9050919050565b7f4e6f20736861726573206f776e65640000000000000000000000000000000000600082015250565b600061454e600f83613ddf565b915061455982614518565b602082019050919050565b6000602082019050818103600083015261457d81614541565b9050919050565b7f496e73756666696369656e742073686172657300000000000000000000000000600082015250565b60006145ba601383613ddf565b91506145c582614584565b602082019050919050565b600060208201905081810360008301526145e9816145ad565b9050919050565b60006145fb82613ee9565b915061460683613ee9565b925082820190508082111561461e5761461d61423d565b5b92915050565b7f5374616b65206c6f636b65640000000000000000000000000000000000000000600082015250565b600061465a600c83613ddf565b915061466582614624565b602082019050919050565b600060208201905081810360008301526146898161464d565b9050919050565b7f4d696e696d756d2076616c7565206e6f74206d65740000000000000000000000600082015250565b60006146c6601583613ddf565b91506146d182614690565b602082019050919050565b600060208201905081810360008301526146f5816146b9565b9050919050565b7f5769746864726177616c20616d6f756e742065786365656473206d617820737560008201527f70706c79206368616e6765207468697320686561727462656174000000000000602082015250565b6000614758603a83613ddf565b9150614763826146fc565b604082019050919050565b600060208201905081810360008301526147878161474b565b9050919050565b7f496e73756666696369656e7420636f6c6c61746572616c697a6174696f6e206660008201527f6f72207769746864726177616c00000000000000000000000000000000000000602082015250565b60006147ea602d83613ddf565b91506147f58261478e565b604082019050919050565b60006020820190508181036000830152614819816147dd565b9050919050565b7f5553444f20696e206d6967726174696f6e3a2063616e206e6f206c6f6e67657260008201527f206d696e74206e657720746f6b656e7300000000000000000000000000000000602082015250565b600061487c603083613ddf565b915061488782614820565b604082019050919050565b600060208201905081810360008301526148ab8161486f565b9050919050565b7f43616e6e6f74206d696e743a206d696e7420616d6f756e7420776f756c64206560008201527f786365656420746865206d6178696d756d20636f6c6c61746572616c697a656460208201527f20737570706c79202857446f6765290000000000000000000000000000000000604082015250565b6000614934604f83613ddf565b915061493f826148b2565b606082019050919050565b6000602082019050818103600083015261496381614927565b9050919050565b7f43616e6e6f74206d696e743a206d696e7420616d6f756e7420776f756c64206560008201527f786365656420746865206d6178696d756d20636f6c6c61746572616c697a656460208201527f20737570706c7920285553444f29000000000000000000000000000000000000604082015250565b60006149ec604e83613ddf565b91506149f78261496a565b606082019050919050565b60006020820190508181036000830152614a1b816149df565b9050919050565b7f506172697479206e6f74206d6574000000000000000000000000000000000000600082015250565b6000614a58600e83613ddf565b9150614a6382614a22565b602082019050919050565b60006020820190508181036000830152614a8781614a4b565b9050919050565b7f496e76616c696420746f6b656e20707269636500000000000000000000000000600082015250565b6000614ac4601383613ddf565b9150614acf82614a8e565b602082019050919050565b60006020820190508181036000830152614af381614ab7565b9050919050565b600060e082019050614b0f600083018a613fc2565b614b1c6020830189613fc2565b614b296040830188613fc2565b614b366060830187613fc2565b614b436080830186613fc2565b614b5060a0830185613fc2565b614b5d60c0830184613fc2565b98975050505050505050565b6000604082019050614b7e6000830185613fc2565b614b8b6020830184613fc2565b9392505050565b7f4d61782068656172746265617420737570706c79206368616e6765207265616360008201527f6865640000000000000000000000000000000000000000000000000000000000602082015250565b6000614bee602383613ddf565b9150614bf982614b92565b604082019050919050565b60006020820190508181036000830152614c1d81614be1565b9050919050565b7f5374616b65642062616c616e6365206d7573742062652067726561746572207460008201527f68616e2030000000000000000000000000000000000000000000000000000000602082015250565b6000614c80602583613ddf565b9150614c8b82614c24565b604082019050919050565b60006020820190508181036000830152614caf81614c73565b9050919050565b7f4d6967726174696f6e207769746864726177616c206e6f7420656e61626c6564600082015250565b6000614cec602083613ddf565b9150614cf782614cb6565b602082019050919050565b60006020820190508181036000830152614d1b81614cdf565b9050919050565b7f496e73756666696369656e7420636f6c6c61746572616c697a6174696f6e206660008201527f6f7220756e7374616b696e670000000000000000000000000000000000000000602082015250565b6000614d7e602c83613ddf565b9150614d8982614d22565b604082019050919050565b60006020820190508181036000830152614dad81614d71565b9050919050565b6000606082019050614dc96000830186614173565b614dd66020830185613fc2565b614de36040830184613fc2565b94935050505056fea26469706673582212207cab98b1e247607412dab1bb66bd4ba93e378dee80b6240526bd121846e047ae64736f6c63430008140033