0x60806040525f5f5f6101000a81548160ff0219169083151502179055503480156026575f5ffd5b50335f60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506108a4806100745f395ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c80633b111c25146100595780636bedbdb8146100755780638da5cb5b146100a5578063b4ad398d146100c3578063f2fde38b146100f3575b5f5ffd5b610073600480360381019061006e91906104c5565b61010f565b005b61008f600480360381019061008a9190610503565b6102b9565b60405161009c9190610548565b60405180910390f35b6100ad6102c3565b6040516100ba9190610570565b60405180910390f35b6100dd60048036038101906100d891906105b3565b6102e8565b6040516100ea9190610548565b60405180910390f35b61010d60048036038101906101089190610603565b6102f4565b005b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361017d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161017490610688565b60405180910390fd5b5f8273ffffffffffffffffffffffffffffffffffffffff1682836040516024016101a791906106b5565b6040516020818303038152906040527fa6b206bf000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516102319190610720565b5f6040518083038185875af1925050503d805f811461026b576040519150601f19603f3d011682016040523d82523d5f602084013e610270565b606091505b50509050806102b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102ab90610780565b60405180910390fd5b505050565b5f60019050919050565b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600190509392505050565b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610383576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161037a906107e8565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036103f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103e890610850565b60405180910390fd5b805f60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61046182610438565b9050919050565b61047181610457565b811461047b575f5ffd5b50565b5f8135905061048c81610468565b92915050565b5f819050919050565b6104a481610492565b81146104ae575f5ffd5b50565b5f813590506104bf8161049b565b92915050565b5f5f604083850312156104db576104da610434565b5b5f6104e88582860161047e565b92505060206104f9858286016104b1565b9150509250929050565b5f6020828403121561051857610517610434565b5b5f610525848285016104b1565b91505092915050565b5f8115159050919050565b6105428161052e565b82525050565b5f60208201905061055b5f830184610539565b92915050565b61056a81610457565b82525050565b5f6020820190506105835f830184610561565b92915050565b6105928161052e565b811461059c575f5ffd5b50565b5f813590506105ad81610589565b92915050565b5f5f5f606084860312156105ca576105c9610434565b5b5f6105d78682870161059f565b93505060206105e88682870161059f565b92505060406105f9868287016104b1565b9150509250925092565b5f6020828403121561061857610617610434565b5b5f6106258482850161047e565b91505092915050565b5f82825260208201905092915050565b7f496e76616c696420636f6e7472616374206164647265737300000000000000005f82015250565b5f61067260188361062e565b915061067d8261063e565b602082019050919050565b5f6020820190508181035f83015261069f81610666565b9050919050565b6106af81610492565b82525050565b5f6020820190506106c85f8301846106a6565b92915050565b5f81519050919050565b5f81905092915050565b8281835e5f83830152505050565b5f6106fa826106ce565b61070481856106d8565b93506107148185602086016106e2565b80840191505092915050565b5f61072b82846106f0565b915081905092915050565b7f4661696c656420746f2063616c6c206f7468657220636f6e74726163740000005f82015250565b5f61076a601d8361062e565b915061077582610736565b602082019050919050565b5f6020820190508181035f8301526107978161075e565b9050919050565b7f43616c6c6572206973206e6f7420746865206f776e65720000000000000000005f82015250565b5f6107d260178361062e565b91506107dd8261079e565b602082019050919050565b5f6020820190508181035f8301526107ff816107c6565b9050919050565b7f496e76616c6964206164647265737320666f72206e6577206f776e65720000005f82015250565b5f61083a601d8361062e565b915061084582610806565b602082019050919050565b5f6020820190508181035f8301526108678161082e565b905091905056fea26469706673582212209585f8d89b641cf98a613aebe5c65a217401fd773ff4ce28c915311b29155bfd64736f6c634300081c0033