60806040523480156200001157600080fd5b50604051620010593803806200105983398101604081905262000034916200052d565b82828282816200006660017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd6200060d565b600080516020620010128339815191521462000086576200008662000633565b6200009482826000620000fb565b50620000c4905060017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61046200060d565b60008051602062000ff283398151915214620000e457620000e462000633565b620000ef8262000138565b5050505050506200069c565b620001068362000193565b600082511180620001145750805b156200013357620001318383620001d560201b620002c41760201c565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200016362000204565b604080516001600160a01b03928316815291841660208301520160405180910390a162000190816200023d565b50565b6200019e81620002f2565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620001fd8383604051806060016040528060278152602001620010326027913962000395565b9392505050565b60006200022e60008051602062000ff283398151915260001b6200047b60201b620002581760201c565b546001600160a01b0316919050565b6001600160a01b038116620002a85760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b80620002d160008051602062000ff283398151915260001b6200047b60201b620002581760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b62000308816200047e60201b620002f01760201c565b6200036c5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200029f565b80620002d16000805160206200101283398151915260001b6200047b60201b620002581760201c565b60606001600160a01b0384163b620003ff5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016200029f565b600080856001600160a01b0316856040516200041c919062000649565b600060405180830381855af49150503d806000811462000459576040519150601f19603f3d011682016040523d82523d6000602084013e6200045e565b606091505b509092509050620004718282866200048d565b9695505050505050565b90565b6001600160a01b03163b151590565b606083156200049e575081620001fd565b825115620004af5782518084602001fd5b8160405162461bcd60e51b81526004016200029f919062000667565b80516001600160a01b0381168114620004e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200051b57818101518382015260200162000501565b83811115620001315750506000910152565b6000806000606084860312156200054357600080fd5b6200054e84620004cb565b92506200055e60208501620004cb565b60408501519092506001600160401b03808211156200057c57600080fd5b818601915086601f8301126200059157600080fd5b815181811115620005a657620005a6620004e8565b604051601f8201601f19908116603f01168101908382118183101715620005d157620005d1620004e8565b81604052828152896020848701011115620005eb57600080fd5b620005fe836020830160208801620004fe565b80955050505050509250925092565b6000828210156200062e57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052600160045260246000fd5b600082516200065d818460208701620004fe565b9190910192915050565b602081526000825180602084015262000688816040850160208701620004fe565b601f01601f19169190910160400192915050565b61094680620006ac6000396000f3fe6080604052600436106100745760003560e01c80636e9960c31161004e5780636e9960c3146100ef5780638f28397014610104578063aaf10f4214610124578063f851a4401461013957610083565b80633659cfe61461008b5780634f1ef286146100ab5780635c60da1b146100be57610083565b366100835761008161014e565b005b61008161014e565b34801561009757600080fd5b506100816100a63660046107d0565b610168565b6100816100b93660046107eb565b6101af565b3480156100ca57600080fd5b506100d3610220565b6040516001600160a01b03909116815260200160405180910390f35b3480156100fb57600080fd5b506100d361025b565b34801561011057600080fd5b5061008161011f3660046107d0565b610265565b34801561013057600080fd5b506100d361028f565b34801561014557600080fd5b506100d3610299565b6101566102ff565b6101666101616103b9565b6103c3565b565b6101706103e7565b6001600160a01b0316336001600160a01b031614156101a7576101a48160405180602001604052806000815250600061041a565b50565b6101a461014e565b6101b76103e7565b6001600160a01b0316336001600160a01b03161415610218576102138383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506001925061041a915050565b505050565b61021361014e565b600061022a6103e7565b6001600160a01b0316336001600160a01b031614156102505761024b6103b9565b905090565b61025861014e565b90565b600061024b610445565b61026d6103e7565b6001600160a01b0316336001600160a01b031614156101a7576101a48161044f565b600061024b6103b9565b60006102a36103e7565b6001600160a01b0316336001600160a01b031614156102505761024b6103e7565b60606102e983836040518060600160405280602781526020016108ea602791396104a3565b9392505050565b6001600160a01b03163b151590565b6103076103e7565b6001600160a01b0316336001600160a01b031614156101665760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f7879207461726760648201527f6574000000000000000000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b600061024b610597565b3660008037600080366000845af43d6000803e8080156103e2573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b610423836105bf565b6000825111806104305750805b156102135761043f83836102c4565b50505050565b600061024b6103e7565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104786103e7565b604080516001600160a01b03928316815291841660208301520160405180910390a16101a4816105ff565b60606001600160a01b0384163b6105225760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f60448201527f6e7472616374000000000000000000000000000000000000000000000000000060648201526084016103b0565b600080856001600160a01b03168560405161053d919061089a565b600060405180830381855af49150503d8060008114610578576040519150601f19603f3d011682016040523d82523d6000602084013e61057d565b606091505b509150915061058d8282866106d7565b9695505050505050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61040b565b6105c881610710565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b03811661067b5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016103b0565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b039290921691909117905550565b606083156106e65750816102e9565b8251156106f65782518084602001fd5b8160405162461bcd60e51b81526004016103b091906108b6565b6001600160a01b0381163b61078d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201527f6f74206120636f6e74726163740000000000000000000000000000000000000060648201526084016103b0565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61069e565b80356001600160a01b03811681146107cb57600080fd5b919050565b6000602082840312156107e257600080fd5b6102e9826107b4565b60008060006040848603121561080057600080fd5b610809846107b4565b9250602084013567ffffffffffffffff8082111561082657600080fd5b818601915086601f83011261083a57600080fd5b81358181111561084957600080fd5b87602082850101111561085b57600080fd5b6020830194508093505050509250925092565b60005b83811015610889578181015183820152602001610871565b8381111561043f5750506000910152565b600082516108ac81846020870161086e565b9190910192915050565b60208152600082518060208401526108d581604085016020870161086e565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212208614b826df6c037b924f0b173d5cf269a491af1fbb425c5b8e2c29d63b91380a64736f6c634300080a0033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c65640000000000000000000000001160a1198cf295c61693a9899cabe2eba6ed45ec0000000000000000000000004b6514a1ede593cac53442eafa936a51ca85fb0b00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000