0x608060405234801561001057600080fd5b5061053b806100206000396000f3fe6080604052600436106100345760003560e01c806327e235e3146100395780632e1a7d4d14610076578063d0e30db01461009f575b600080fd5b34801561004557600080fd5b50610060600480360381019061005b9190610337565b6100a9565b60405161006d919061037d565b60405180910390f35b34801561008257600080fd5b5061009d600480360381019061009891906103c4565b6100c1565b005b6100a761022f565b005b60006020528060005260406000206000915090505481565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610142576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101399061044e565b60405180910390fd5b806000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610190919061049d565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156101dd573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff167f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6582604051610224919061037d565b60405180910390a250565b346000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461027d91906104d1565b925050819055503373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040516102ca919061037d565b60405180910390a2565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610304826102d9565b9050919050565b610314816102f9565b811461031f57600080fd5b50565b6000813590506103318161030b565b92915050565b60006020828403121561034d5761034c6102d4565b5b600061035b84828501610322565b91505092915050565b6000819050919050565b61037781610364565b82525050565b6000602082019050610392600083018461036e565b92915050565b6103a181610364565b81146103ac57600080fd5b50565b6000813590506103be81610398565b92915050565b6000602082840312156103da576103d96102d4565b5b60006103e8848285016103af565b91505092915050565b600082825260208201905092915050565b7f496e73756666696369656e742062616c616e6365000000000000000000000000600082015250565b60006104386014836103f1565b915061044382610402565b602082019050919050565b600060208201905081810360008301526104678161042b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006104a882610364565b91506104b383610364565b92508282039050818111156104cb576104ca61046e565b5b92915050565b60006104dc82610364565b91506104e783610364565b92508282019050808211156104ff576104fe61046e565b5b9291505056fea26469706673582212201cec68883559813d558bb913a14db6acf05bc1984203af575a00d0d3d25d2b5164736f6c63430008120033