0x608060405234801561001057600080fd5b50604051610bab380380610bab833981810160405281019061003291906101d6565b61004e61004361009560201b60201c565b61009d60201b60201c565b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610203565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061019182610166565b9050919050565b60006101a382610186565b9050919050565b6101b381610198565b81146101be57600080fd5b50565b6000815190506101d0816101aa565b92915050565b6000602082840312156101ec576101eb610161565b5b60006101fa848285016101c1565b91505092915050565b610999806102126000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80634f188a7514610067578063715018a6146100835780638da5cb5b1461008d578063a94bcea2146100ab578063f2fde38b146100c7578063f9ce733b146100e3575b600080fd5b610081600480360381019061007c9190610605565b610101565b005b61008b6101c1565b005b610095610249565b6040516100a29190610641565b60405180910390f35b6100c560048036038101906100c09190610692565b610272565b005b6100e160048036038101906100dc91906106fe565b6103a7565b005b6100eb61049e565b6040516100f8919061078a565b60405180910390f35b6101096104c4565b73ffffffffffffffffffffffffffffffffffffffff16610127610249565b73ffffffffffffffffffffffffffffffffffffffff161461017d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161017490610802565b60405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6101c96104c4565b73ffffffffffffffffffffffffffffffffffffffff166101e7610249565b73ffffffffffffffffffffffffffffffffffffffff161461023d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161023490610802565b60405180910390fd5b61024760006104cc565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61027a6104c4565b73ffffffffffffffffffffffffffffffffffffffff16610298610249565b73ffffffffffffffffffffffffffffffffffffffff16146102ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102e590610802565b60405180910390fd5b60005b828110156103a257600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639d034fe983610340610249565b6040518363ffffffff1660e01b815260040161035d929190610831565b600060405180830381600087803b15801561037757600080fd5b505af115801561038b573d6000803e3d6000fd5b50505050808061039a90610889565b9150506102f1565b505050565b6103af6104c4565b73ffffffffffffffffffffffffffffffffffffffff166103cd610249565b73ffffffffffffffffffffffffffffffffffffffff1614610423576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161041a90610802565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610492576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161048990610943565b60405180910390fd5b61049b816104cc565b50565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006105c082610595565b9050919050565b60006105d2826105b5565b9050919050565b6105e2816105c7565b81146105ed57600080fd5b50565b6000813590506105ff816105d9565b92915050565b60006020828403121561061b5761061a610590565b5b6000610629848285016105f0565b91505092915050565b61063b816105b5565b82525050565b60006020820190506106566000830184610632565b92915050565b6000819050919050565b61066f8161065c565b811461067a57600080fd5b50565b60008135905061068c81610666565b92915050565b600080604083850312156106a9576106a8610590565b5b60006106b78582860161067d565b92505060206106c88582860161067d565b9150509250929050565b6106db816105b5565b81146106e657600080fd5b50565b6000813590506106f8816106d2565b92915050565b60006020828403121561071457610713610590565b5b6000610722848285016106e9565b91505092915050565b6000819050919050565b600061075061074b61074684610595565b61072b565b610595565b9050919050565b600061076282610735565b9050919050565b600061077482610757565b9050919050565b61078481610769565b82525050565b600060208201905061079f600083018461077b565b92915050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006107ec6020836107a5565b91506107f7826107b6565b602082019050919050565b6000602082019050818103600083015261081b816107df565b9050919050565b61082b8161065c565b82525050565b60006040820190506108466000830185610822565b6108536020830184610632565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006108948261065c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036108c6576108c561085a565b5b600182019050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061092d6026836107a5565b9150610938826108d1565b604082019050919050565b6000602082019050818103600083015261095c81610920565b905091905056fea26469706673582212200926b56dfe75ef710c5b75eb2c8af79c544705c8cf6bb00b9374cd40f172750d64736f6c634300080d003300000000000000000000000094a8e24f22ea5700f9fe56d2719cd1a12341fb4a