0x60c060405234801561001057600080fd5b5060405161078e38038061078e83398181016040528101906100329190610120565b8173ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508060a081815250505050610160565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006100a58261007a565b9050919050565b60006100b78261009a565b9050919050565b6100c7816100ac565b81146100d257600080fd5b50565b6000815190506100e4816100be565b92915050565b6000819050919050565b6100fd816100ea565b811461010857600080fd5b50565b60008151905061011a816100f4565b92915050565b6000806040838503121561013757610136610075565b5b6000610145858286016100d5565b92505060206101568582860161010b565b9150509250929050565b60805160a05161060b610183600039600060780152600060dc015261060b6000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80634e71d92d1461003b578063cf6ce65314610045575b600080fd5b610043610075565b005b61005f600480360381019061005a9190610316565b6102bb565b60405161006c9190610352565b60405180910390f35b427f000000000000000000000000000000000000000000000000000000000000000011156100d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100cf906103f0565b60405180910390fd5b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663282de01f61011e6102d3565b6040518263ffffffff1660e01b815260040161013a9190610451565b602060405180830381865afa158015610157573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061017b9190610481565b9050600081036101c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101b790610520565b60405180910390fd5b60008060008381526020019081526020016000205490506000811161021a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102119061058c565b60405180910390fd5b600080838152602001908152602001600020600090556102386102d3565b73ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561027d573d6000803e3d6000fd5b507fc83b5086ce94ec8d5a88a9f5fea4b18a522bb238ed0d2d8abd959549a80c16b882826040516102af9291906105ac565b60405180910390a15050565b60006020528060005260406000206000915090505481565b600033905090565b600080fd5b6000819050919050565b6102f3816102e0565b81146102fe57600080fd5b50565b600081359050610310816102ea565b92915050565b60006020828403121561032c5761032b6102db565b5b600061033a84828501610301565b91505092915050565b61034c816102e0565b82525050565b60006020820190506103676000830184610343565b92915050565b600082825260208201905092915050565b7f526574726f44726f703a2064726f7020686173206e6f74206265656e2073746160008201527f7274656420796574000000000000000000000000000000000000000000000000602082015250565b60006103da60288361036d565b91506103e58261037e565b604082019050919050565b60006020820190508181036000830152610409816103cd565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061043b82610410565b9050919050565b61044b81610430565b82525050565b60006020820190506104666000830184610442565b92915050565b60008151905061047b816102ea565b92915050565b600060208284031215610497576104966102db565b5b60006104a58482850161046c565b91505092915050565b7f526574726f44726f703a2073656e646572206973206e6f742070726573656e7460008201527f20696e20736f756c732072656769737472790000000000000000000000000000602082015250565b600061050a60328361036d565b9150610515826104ae565b604082019050919050565b60006020820190508181036000830152610539816104fd565b9050919050565b7f526574726f44726f703a206e6f7468696e6720746f20636c61696d0000000000600082015250565b6000610576601b8361036d565b915061058182610540565b602082019050919050565b600060208201905081810360008301526105a581610569565b9050919050565b60006040820190506105c16000830185610343565b6105ce6020830184610343565b939250505056fea2646970667358221220281df7fe42ff33aeb2e3df76d2baa1890c0c0af7518a9fa5488221d37760d8bb64736f6c6343000813003300000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000064cba4d0