0x608060405234801561001057600080fd5b50610869806100206000396000f3fe608060405234801561001057600080fd5b5060043610610068577c0100000000000000000000000000000000000000000000000000000000600035046332bf361b811461006d57806353b36015146100ae57806358522947146100d3578063b5c7d0341461014f575b600080fd5b61008a6004803603602081101561008357600080fd5b5035610180565b60408051938452602084019290925263ffffffff1682820152519081900360600190f35b6100d1600480360360408110156100c457600080fd5b50803590602001356101a3565b005b6100d1600480360360608110156100e957600080fd5b81359160208101359181019060608101604082013564010000000081111561011057600080fd5b82018360208201111561012257600080fd5b8035906020019184602083028401116401000000008311171561014457600080fd5b50909250905061036a565b61016c6004803603602081101561016557600080fd5b5035610612565b604080519115158252519081900360200190f35b600081815260346020526040902080546001909101549192909163ffffffff1690565b60008281526034602052604090205415610208576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061081c6022913960400191505060405180910390fd5b61021182610612565b15610267576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806107f76025913960400191505060405180910390fd5b6040805160608101825282815233602080830182815263ffffffff436101e08101821686880190815260008a815260338652889020965187559251600190960180549351831674010000000000000000000000000000000000000000027fffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff73ffffffffffffffffffffffffffffffffffffffff989098167fffffffffffffffffffffffff00000000000000000000000000000000000000009095169490941796909616929092179094558451931683529251859391927faa2928be4e330731bc1f0289edebfc72ccb9979ffc703a3de4edd8ea760462da92908290030190a35050565b6000600285604051602001808281526020019150506040516020818303038152906040526040518082805190602001908083835b602083106103bd5780518252601f19909201916020918201910161039e565b51815160209384036101000a60001901801990921691161790526040519190930194509192505080830381855afa1580156103fc573d6000803e3d6000fd5b5050506040513d602081101561041157600080fd5b50516000818152603460205260409020549091501561042f57600080fd5b61043881610612565b1561058a5760008181526033602052604090206001015473ffffffffffffffffffffffffffffffffffffffff1633146104d257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f507265636f6d6d6974206f776e656420627920736f6d656f6e6520656c736500604482015290519081900360640190fd5b61051d83838080602002602001604051908101604052809392919081815260200183836020028082843760009201829052508681526033602052604090205489935091506106489050565b151561058a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f5369676e696e6720726f6f742076616c69646174696f6e206661696c65640000604482015290519081900360640190fd5b6040805180820182528581524363ffffffff908116602080840182815260008781526034835286902094518555516001909401805463ffffffff191694909316939093179091558251878152918201528151839233927fd1eb81d62e07e99a310f0f4c9a107a644e475be1f4b7eaa3d5c731c140195ee9929081900390910190a35050505050565b600090815260336020526040902060010154437401000000000000000000000000000000000000000090910463ffffffff161190565b600081815b85518110156107eb576000868281518110151561066657fe5b90602001906020020151905080831015610730576002838260405160200180838152602001828152602001925050506040516020818303038152906040526040518082805190602001908083835b602083106106d35780518252601f1990920191602091820191016106b4565b51815160209384036101000a60001901801990921691161790526040519190930194509192505080830381855afa158015610712573d6000803e3d6000fd5b5050506040513d602081101561072757600080fd5b505192506107e2565b6002818460405160200180838152602001828152602001925050506040516020818303038152906040526040518082805190602001908083835b602083106107895780518252601f19909201916020918201910161076a565b51815160209384036101000a60001901801990921691161790526040519190930194509192505080830381855afa1580156107c8573d6000803e3d6000fd5b5050506040513d60208110156107dd57600080fd5b505192505b5060010161064d565b50909214939250505056fe507265636f6d6d69742065786973747320666f722074686520676976656e20616e63686f72436f6d6d69742065786973747320666f722074686520676976656e20616e63686f72a165627a7a72305820ace583c169318403fcb2c9267da172cc669bb43d1ab5ff7775d390dc4baa301b0029