60806040523480156200001157600080fd5b5060405162000f6838038062000f6883398101604081905262000034916200052d565b82828282816200006660017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd6200060d565b60008051602062000f218339815191521462000086576200008662000633565b6200009482826000620000fb565b50620000c4905060017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61046200060d565b60008051602062000f0183398151915214620000e457620000e462000633565b620000ef8262000138565b5050505050506200069c565b620001068362000193565b600082511180620001145750805b156200013357620001318383620001d560201b620002581760201c565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200016362000204565b604080516001600160a01b03928316815291841660208301520160405180910390a162000190816200023d565b50565b6200019e81620002f2565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620001fd838360405180606001604052806027815260200162000f416027913962000395565b9392505050565b60006200022e60008051602062000f0183398151915260001b6200047b60201b6200020a1760201c565b546001600160a01b0316919050565b6001600160a01b038116620002a85760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b80620002d160008051602062000f0183398151915260001b6200047b60201b6200020a1760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b62000308816200047e60201b620002841760201c565b6200036c5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200029f565b80620002d160008051602062000f2183398151915260001b6200047b60201b6200020a1760201c565b60606001600160a01b0384163b620003ff5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016200029f565b600080856001600160a01b0316856040516200041c919062000649565b600060405180830381855af49150503d806000811462000459576040519150601f19603f3d011682016040523d82523d6000602084013e6200045e565b606091505b509092509050620004718282866200048d565b9695505050505050565b90565b6001600160a01b03163b151590565b606083156200049e575081620001fd565b825115620004af5782518084602001fd5b8160405162461bcd60e51b81526004016200029f919062000667565b80516001600160a01b0381168114620004e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200051b57818101518382015260200162000501565b83811115620001315750506000910152565b6000806000606084860312156200054357600080fd5b6200054e84620004cb565b92506200055e60208501620004cb565b60408501519092506001600160401b03808211156200057c57600080fd5b818601915086601f8301126200059157600080fd5b815181811115620005a657620005a6620004e8565b604051601f8201601f19908116603f01168101908382118183101715620005d157620005d1620004e8565b81604052828152896020848701011115620005eb57600080fd5b620005fe836020830160208801620004fe565b80955050505050509250925092565b6000828210156200062e57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052600160045260246000fd5b600082516200065d818460208701620004fe565b9190910192915050565b602081526000825180602084015262000688816040850160208701620004fe565b601f01601f19169190910160400192915050565b61085580620006ac6000396000f3fe6080604052600436106100595760003560e01c80633659cfe6146100705780634f1ef286146100905780635c60da1b146100a35780636e9960c3146100d45780638f283970146100e9578063f851a4401461010957610068565b366100685761006661011e565b005b61006661011e565b34801561007c57600080fd5b5061006661008b3660046106df565b610138565b61006661009e3660046106fa565b610175565b3480156100af57600080fd5b506100b86101dc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100e057600080fd5b506100b861020d565b3480156100f557600080fd5b506100666101043660046106df565b610217565b34801561011557600080fd5b506100b8610237565b610126610293565b610136610131610328565b610332565b565b610140610356565b6001600160a01b0316330361016d5761016a81604051806020016040528060008152506000610389565b50565b61016a61011e565b61017d610356565b6001600160a01b031633036101d4576101cf8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610389915050565b505050565b6101cf61011e565b60006101e6610356565b6001600160a01b03163303610202576101fd610328565b905090565b61020a61011e565b90565b60006101fd610356565b61021f610356565b6001600160a01b0316330361016d5761016a816103b4565b6000610241610356565b6001600160a01b03163303610202576101fd610356565b606061027d83836040518060600160405280602781526020016107f960279139610408565b9392505050565b6001600160a01b03163b151590565b61029b610356565b6001600160a01b031633036101365760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101fd6104e5565b3660008037600080366000845af43d6000803e808015610351573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b6103928361050d565b60008251118061039f5750805b156101cf576103ae8383610258565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103dd610356565b604080516001600160a01b03928316815291841660208301520160405180910390a161016a8161054d565b60606001600160a01b0384163b6104705760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b606482015260840161031f565b600080856001600160a01b03168560405161048b91906107a9565b600060405180830381855af49150503d80600081146104c6576040519150601f19603f3d011682016040523d82523d6000602084013e6104cb565b606091505b50915091506104db8282866105f6565b9695505050505050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61037a565b6105168161062f565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105b25760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161031f565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060831561060557508161027d565b8251156106155782518084602001fd5b8160405162461bcd60e51b815260040161031f91906107c5565b6001600160a01b0381163b61069c5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161031f565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6105d5565b80356001600160a01b03811681146106da57600080fd5b919050565b6000602082840312156106f157600080fd5b61027d826106c3565b60008060006040848603121561070f57600080fd5b610718846106c3565b9250602084013567ffffffffffffffff8082111561073557600080fd5b818601915086601f83011261074957600080fd5b81358181111561075857600080fd5b87602082850101111561076a57600080fd5b6020830194508093505050509250925092565b60005b83811015610798578181015183820152602001610780565b838111156103ae5750506000910152565b600082516107bb81846020870161077d565b9190910192915050565b60208152600082518060208401526107e481604085016020870161077d565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122089b50f2fc262f3027540915b5112fe7c18da3da2d90ed176fc4d21d34e1e80f964736f6c634300080e0033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656400000000000000000000000071c0ddbf6da72a67c29529d6f67f97c00c4751d50000000000000000000000009ada42ed163bb45ea2ff11c06c59cf27d27e6cba000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c4cc2a9a5b0000000000000000000000008cd86fbc94bebfd910caae7ae4ce374886132c480000000000000000000000009715c357cc02a60906e137608f95ca0148f438e7000000000000000000000000888888435fde8e7d4c54cab67f206e4199454c600000000000000000000000003ac91a7a2d30fa25ada4616d337a28ea988988be00000000000000000000000071eb1046607a2496a2fd48ab73d1973ee9fadff000000000000000000000000086e8c4e7549fbca7eba1aefbdbc23993f721e5ca00000000000000000000000000000000000000000000000000000000