0x608060405234801561001057600080fd5b50600436106100f55760003560e01c8063715018a61161009757806395d89b411161006657806395d89b4114610288578063a9059cbb146102a6578063dd62ed3e146102d6578063f2fde38b14610306576100f5565b8063715018a6146102145780637ad3def21461021e5780638da5cb5b1461023a57806392a950b614610258576100f5565b806323b872dd116100d357806323b872dd146101665780632a7d61b714610196578063313ce567146101c657806370a08231146101e4576100f5565b806306fdde03146100fa578063095ea7b31461011857806318160ddd14610148575b600080fd5b610102610322565b60405161010f9190611742565b60405180910390f35b610132600480360381019061012d919061145f565b6103b4565b60405161013f9190611727565b60405180910390f35b6101506103bc565b60405161015d9190611824565b60405180910390f35b610180600480360381019061017b9190611410565b6103c6565b60405161018d9190611727565b60405180910390f35b6101b060048036038101906101ab91906113ab565b6103cf565b6040516101bd9190611824565b60405180910390f35b6101ce610418565b6040516101db919061183f565b60405180910390f35b6101fe60048036038101906101f991906113ab565b61042f565b60405161020b9190611824565b60405180910390f35b61021c610478565b005b610238600480360381019061023391906113ab565b6105b2565b005b6102426106d5565b60405161024f9190611683565b60405180910390f35b610272600480360381019061026d919061149b565b6106fe565b60405161027f9190611727565b60405180910390f35b610290610bc1565b60405161029d9190611742565b60405180910390f35b6102c060048036038101906102bb919061145f565b610c53565b6040516102cd9190611727565b60405180910390f35b6102f060048036038101906102eb91906113d4565b610cd4565b6040516102fd9190611824565b60405180910390f35b610320600480360381019061031b91906113ab565b610cdc565b005b60606001805461033190611988565b80601f016020809104026020016040519081016040528092919081815260200182805461035d90611988565b80156103aa5780601f1061037f576101008083540402835291602001916103aa565b820191906000526020600020905b81548152906001019060200180831161038d57829003601f168201915b5050505050905090565b600092915050565b6000600454905090565b60009392505050565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360009054906101000a900460ff16905090565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610480610e85565b73ffffffffffffffffffffffffffffffffffffffff1661049e6106d5565b73ffffffffffffffffffffffffffffffffffffffff16146104f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104eb90611804565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6105ba610e85565b73ffffffffffffffffffffffffffffffffffffffff166105d86106d5565b73ffffffffffffffffffffffffffffffffffffffff161461062e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062590611804565b60405180910390fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008061070a8561042f565b1461074a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610741906117c4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156107ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b1906117e4565b60405180910390fd5b60075482106107fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f590611784565b60405180910390fd5b82600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b815260040161085c92919061169e565b60206040518083038186803b15801561087457600080fd5b505afa158015610888573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ac9190611513565b10156108ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e490611764565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330866040518463ffffffff1660e01b815260040161094c939291906116c7565b602060405180830381600087803b15801561096657600080fd5b505af115801561097a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099e91906114ea565b50600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610a1f9190611824565b60405180910390a33373ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610aa69190611824565b60405180910390a38373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610b0b9190611824565b60405180910390a382600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610bb083600454610e8d90919063ffffffff16565b600481905550600190509392505050565b606060028054610bd090611988565b80601f0160208091040260200160405190810160405280929190818152602001828054610bfc90611988565b8015610c495780601f10610c1e57610100808354040283529160200191610c49565b820191906000526020600020905b815481529060010190602001808311610c2c57829003601f168201915b5050505050905090565b600081610c5f3361042f565b1015610c6a57600080fd5b42600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411610cbf57610cba8383610ea3565b610cca565b610cc98383611116565b5b6001905092915050565b600092915050565b610ce4610e85565b73ffffffffffffffffffffffffffffffffffffffff16610d026106d5565b73ffffffffffffffffffffffffffffffffffffffff1614610d58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4f90611804565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610dc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dbf906117a4565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b60008183610e9b9190611876565b905092915050565b610ef581600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461134190919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401610f959291906116fe565b602060405180830381600087803b158015610faf57600080fd5b505af1158015610fc3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fe791906114ea565b50610ffd8160045461134190919063ffffffff16565b600481905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110829190611824565b60405180910390a3600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161110a9190611824565b60405180910390a35050565b60006111218361042f565b1461112b57600080fd5b61117d81600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461134190919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061121281600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e8d90919063ffffffff16565b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516113359190611824565b60405180910390a35050565b6000818361134f91906118cc565b905092915050565b60008135905061136681611b91565b92915050565b60008151905061137b81611ba8565b92915050565b60008135905061139081611bbf565b92915050565b6000815190506113a581611bbf565b92915050565b6000602082840312156113bd57600080fd5b60006113cb84828501611357565b91505092915050565b600080604083850312156113e757600080fd5b60006113f585828601611357565b925050602061140685828601611357565b9150509250929050565b60008060006060848603121561142557600080fd5b600061143386828701611357565b935050602061144486828701611357565b925050604061145586828701611381565b9150509250925092565b6000806040838503121561147257600080fd5b600061148085828601611357565b925050602061149185828601611381565b9150509250929050565b6000806000606084860312156114b057600080fd5b60006114be86828701611357565b93505060206114cf86828701611381565b92505060406114e086828701611381565b9150509250925092565b6000602082840312156114fc57600080fd5b600061150a8482850161136c565b91505092915050565b60006020828403121561152557600080fd5b600061153384828501611396565b91505092915050565b61154581611900565b82525050565b61155481611912565b82525050565b60006115658261185a565b61156f8185611865565b935061157f818560208601611955565b61158881611a18565b840191505092915050565b60006115a0601683611865565b91506115ab82611a29565b602082019050919050565b60006115c3602183611865565b91506115ce82611a52565b604082019050919050565b60006115e6602683611865565b91506115f182611aa1565b604082019050919050565b6000611609602983611865565b915061161482611af0565b604082019050919050565b600061162c601d83611865565b915061163782611b3f565b602082019050919050565b600061164f602083611865565b915061165a82611b68565b602082019050919050565b61166e8161193e565b82525050565b61167d81611948565b82525050565b6000602082019050611698600083018461153c565b92915050565b60006040820190506116b3600083018561153c565b6116c0602083018461153c565b9392505050565b60006060820190506116dc600083018661153c565b6116e9602083018561153c565b6116f66040830184611665565b949350505050565b6000604082019050611713600083018561153c565b6117206020830184611665565b9392505050565b600060208201905061173c600083018461154b565b92915050565b6000602082019050818103600083015261175c818461155a565b905092915050565b6000602082019050818103600083015261177d81611593565b9050919050565b6000602082019050818103600083015261179d816115b6565b9050919050565b600060208201905081810360008301526117bd816115d9565b9050919050565b600060208201905081810360008301526117dd816115fc565b9050919050565b600060208201905081810360008301526117fd8161161f565b9050919050565b6000602082019050818103600083015261181d81611642565b9050919050565b60006020820190506118396000830184611665565b92915050565b60006020820190506118546000830184611674565b92915050565b600081519050919050565b600082825260208201905092915050565b60006118818261193e565b915061188c8361193e565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156118c1576118c06119ba565b5b828201905092915050565b60006118d78261193e565b91506118e28361193e565b9250828210156118f5576118f46119ba565b5b828203905092915050565b600061190b8261191e565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611973578082015181840152602081019050611958565b83811115611982576000848401525b50505050565b600060028204905060018216806119a057607f821691505b602082108114156119b4576119b36119e9565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b7f416c6f77616e6365206973206e6f7420656e6f75676800000000000000000000600082015250565b7f556e74696c2073686f756c642062652070617373656420696e207365636f6e6460008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f44657374696e6174696f6e2073686f756c64206e6f742068617665206c6f636b60008201527f656420746f6b656e730000000000000000000000000000000000000000000000602082015250565b7f44657374696e6174696f6e2073686f756c64206e6f7420626520307830000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b611b9a81611900565b8114611ba557600080fd5b50565b611bb181611912565b8114611bbc57600080fd5b50565b611bc88161193e565b8114611bd357600080fd5b5056fea264697066735822122044f022fc864b0a82044945c8ccac9ab9e57ec6ae8eb99f718116504898ef2daa64736f6c63430008030033
0x60806040526040518060400160405280600e81526020017f54696d654c6f636b65645141524b000000000000000000000000000000000000815250600190805190602001906200005192919062000302565b506040518060400160405280600681526020017f544c5141524b0000000000000000000000000000000000000000000000000000815250600290805190602001906200009f92919062000302565b506012600360006101000a81548160ff021916908360ff1602179055506402540be3ff600755348015620000d257600080fd5b506000620000e56200019b60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001956000620001a360201b60201c565b6200049a565b600033905090565b620001b36200019b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620001d9620002d960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000232576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200022990620003d9565b60405180910390fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b82805462000310906200040c565b90600052602060002090601f01602090048101928262000334576000855562000380565b82601f106200034f57805160ff191683800117855562000380565b8280016001018555821562000380579182015b828111156200037f57825182559160200191906001019062000362565b5b5090506200038f919062000393565b5090565b5b80821115620003ae57600081600090555060010162000394565b5090565b6000620003c1602083620003fb565b9150620003ce8262000471565b602082019050919050565b60006020820190508181036000830152620003f481620003b2565b9050919050565b600082825260208201905092915050565b600060028204905060018216806200042557607f821691505b602082108114156200043c576200043b62000442565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b611c0c80620004aa6000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063715018a61161009757806395d89b411161006657806395d89b4114610288578063a9059cbb146102a6578063dd62ed3e146102d6578063f2fde38b14610306576100f5565b8063715018a6146102145780637ad3def21461021e5780638da5cb5b1461023a57806392a950b614610258576100f5565b806323b872dd116100d357806323b872dd146101665780632a7d61b714610196578063313ce567146101c657806370a08231146101e4576100f5565b806306fdde03146100fa578063095ea7b31461011857806318160ddd14610148575b600080fd5b610102610322565b60405161010f9190611742565b60405180910390f35b610132600480360381019061012d919061145f565b6103b4565b60405161013f9190611727565b60405180910390f35b6101506103bc565b60405161015d9190611824565b60405180910390f35b610180600480360381019061017b9190611410565b6103c6565b60405161018d9190611727565b60405180910390f35b6101b060048036038101906101ab91906113ab565b6103cf565b6040516101bd9190611824565b60405180910390f35b6101ce610418565b6040516101db919061183f565b60405180910390f35b6101fe60048036038101906101f991906113ab565b61042f565b60405161020b9190611824565b60405180910390f35b61021c610478565b005b610238600480360381019061023391906113ab565b6105b2565b005b6102426106d5565b60405161024f9190611683565b60405180910390f35b610272600480360381019061026d919061149b565b6106fe565b60405161027f9190611727565b60405180910390f35b610290610bc1565b60405161029d9190611742565b60405180910390f35b6102c060048036038101906102bb919061145f565b610c53565b6040516102cd9190611727565b60405180910390f35b6102f060048036038101906102eb91906113d4565b610cd4565b6040516102fd9190611824565b60405180910390f35b610320600480360381019061031b91906113ab565b610cdc565b005b60606001805461033190611988565b80601f016020809104026020016040519081016040528092919081815260200182805461035d90611988565b80156103aa5780601f1061037f576101008083540402835291602001916103aa565b820191906000526020600020905b81548152906001019060200180831161038d57829003601f168201915b5050505050905090565b600092915050565b6000600454905090565b60009392505050565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360009054906101000a900460ff16905090565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610480610e85565b73ffffffffffffffffffffffffffffffffffffffff1661049e6106d5565b73ffffffffffffffffffffffffffffffffffffffff16146104f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104eb90611804565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6105ba610e85565b73ffffffffffffffffffffffffffffffffffffffff166105d86106d5565b73ffffffffffffffffffffffffffffffffffffffff161461062e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062590611804565b60405180910390fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008061070a8561042f565b1461074a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610741906117c4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156107ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b1906117e4565b60405180910390fd5b60075482106107fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f590611784565b60405180910390fd5b82600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b815260040161085c92919061169e565b60206040518083038186803b15801561087457600080fd5b505afa158015610888573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ac9190611513565b10156108ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e490611764565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330866040518463ffffffff1660e01b815260040161094c939291906116c7565b602060405180830381600087803b15801561096657600080fd5b505af115801561097a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099e91906114ea565b50600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610a1f9190611824565b60405180910390a33373ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610aa69190611824565b60405180910390a38373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610b0b9190611824565b60405180910390a382600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610bb083600454610e8d90919063ffffffff16565b600481905550600190509392505050565b606060028054610bd090611988565b80601f0160208091040260200160405190810160405280929190818152602001828054610bfc90611988565b8015610c495780601f10610c1e57610100808354040283529160200191610c49565b820191906000526020600020905b815481529060010190602001808311610c2c57829003601f168201915b5050505050905090565b600081610c5f3361042f565b1015610c6a57600080fd5b42600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411610cbf57610cba8383610ea3565b610cca565b610cc98383611116565b5b6001905092915050565b600092915050565b610ce4610e85565b73ffffffffffffffffffffffffffffffffffffffff16610d026106d5565b73ffffffffffffffffffffffffffffffffffffffff1614610d58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4f90611804565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610dc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dbf906117a4565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b60008183610e9b9190611876565b905092915050565b610ef581600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461134190919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401610f959291906116fe565b602060405180830381600087803b158015610faf57600080fd5b505af1158015610fc3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fe791906114ea565b50610ffd8160045461134190919063ffffffff16565b600481905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110829190611824565b60405180910390a3600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161110a9190611824565b60405180910390a35050565b60006111218361042f565b1461112b57600080fd5b61117d81600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461134190919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061121281600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e8d90919063ffffffff16565b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516113359190611824565b60405180910390a35050565b6000818361134f91906118cc565b905092915050565b60008135905061136681611b91565b92915050565b60008151905061137b81611ba8565b92915050565b60008135905061139081611bbf565b92915050565b6000815190506113a581611bbf565b92915050565b6000602082840312156113bd57600080fd5b60006113cb84828501611357565b91505092915050565b600080604083850312156113e757600080fd5b60006113f585828601611357565b925050602061140685828601611357565b9150509250929050565b60008060006060848603121561142557600080fd5b600061143386828701611357565b935050602061144486828701611357565b925050604061145586828701611381565b9150509250925092565b6000806040838503121561147257600080fd5b600061148085828601611357565b925050602061149185828601611381565b9150509250929050565b6000806000606084860312156114b057600080fd5b60006114be86828701611357565b93505060206114cf86828701611381565b92505060406114e086828701611381565b9150509250925092565b6000602082840312156114fc57600080fd5b600061150a8482850161136c565b91505092915050565b60006020828403121561152557600080fd5b600061153384828501611396565b91505092915050565b61154581611900565b82525050565b61155481611912565b82525050565b60006115658261185a565b61156f8185611865565b935061157f818560208601611955565b61158881611a18565b840191505092915050565b60006115a0601683611865565b91506115ab82611a29565b602082019050919050565b60006115c3602183611865565b91506115ce82611a52565b604082019050919050565b60006115e6602683611865565b91506115f182611aa1565b604082019050919050565b6000611609602983611865565b915061161482611af0565b604082019050919050565b600061162c601d83611865565b915061163782611b3f565b602082019050919050565b600061164f602083611865565b915061165a82611b68565b602082019050919050565b61166e8161193e565b82525050565b61167d81611948565b82525050565b6000602082019050611698600083018461153c565b92915050565b60006040820190506116b3600083018561153c565b6116c0602083018461153c565b9392505050565b60006060820190506116dc600083018661153c565b6116e9602083018561153c565b6116f66040830184611665565b949350505050565b6000604082019050611713600083018561153c565b6117206020830184611665565b9392505050565b600060208201905061173c600083018461154b565b92915050565b6000602082019050818103600083015261175c818461155a565b905092915050565b6000602082019050818103600083015261177d81611593565b9050919050565b6000602082019050818103600083015261179d816115b6565b9050919050565b600060208201905081810360008301526117bd816115d9565b9050919050565b600060208201905081810360008301526117dd816115fc565b9050919050565b600060208201905081810360008301526117fd8161161f565b9050919050565b6000602082019050818103600083015261181d81611642565b9050919050565b60006020820190506118396000830184611665565b92915050565b60006020820190506118546000830184611674565b92915050565b600081519050919050565b600082825260208201905092915050565b60006118818261193e565b915061188c8361193e565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156118c1576118c06119ba565b5b828201905092915050565b60006118d78261193e565b91506118e28361193e565b9250828210156118f5576118f46119ba565b5b828203905092915050565b600061190b8261191e565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611973578082015181840152602081019050611958565b83811115611982576000848401525b50505050565b600060028204905060018216806119a057607f821691505b602082108114156119b4576119b36119e9565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b7f416c6f77616e6365206973206e6f7420656e6f75676800000000000000000000600082015250565b7f556e74696c2073686f756c642062652070617373656420696e207365636f6e6460008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f44657374696e6174696f6e2073686f756c64206e6f742068617665206c6f636b60008201527f656420746f6b656e730000000000000000000000000000000000000000000000602082015250565b7f44657374696e6174696f6e2073686f756c64206e6f7420626520307830000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b611b9a81611900565b8114611ba557600080fd5b50565b611bb181611912565b8114611bbc57600080fd5b50565b611bc88161193e565b8114611bd357600080fd5b5056fea264697066735822122044f022fc864b0a82044945c8ccac9ab9e57ec6ae8eb99f718116504898ef2daa64736f6c63430008030033