6080604052604051620036be380380620036be83398181016040526101408110156200002a57600080fd5b8151602083015160408085015160608601805192519496939591949391820192846401000000008211156200005e57600080fd5b9083019060208201858111156200007457600080fd5b82516401000000008111828201881017156200008f57600080fd5b82525081516020918201929091019080838360005b83811015620000be578181015183820152602001620000a4565b50505050905090810190601f168015620000ec5780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200011057600080fd5b9083019060208201858111156200012657600080fd5b82516401000000008111828201881017156200014157600080fd5b82525081516020918201929091019080838360005b838110156200017057818101518382015260200162000156565b50505050905090810190601f1680156200019e5780820380516001836020036101000a031916815260200191505b5060409081526020820151908201516060830151608084015160a09094015192955090935091908815801590620001d55750883410155b62000227576040805162461bcd60e51b815260206004820152601a60248201527f46756e6374696f6e20666565206973206e6f7420656e6f756768000000000000604482015290519081900360640190fd5b6200023d836200042360201b620020f71760201c565b6200027f576040805162461bcd60e51b815260206004820152600d60248201526c496e76616c696420666c61677360981b604482015290519081900360640190fd5b60008a8a8a8a8760405160200180866001600160a01b03168152602001858152602001846001600160a01b03168152602001806020018363ffffffff168152602001828103825284818151815260200191508051906020019080838360005b83811015620002f8578181015183820152602001620002de565b50505050905090810190601f168015620003265780820380516001836020036101000a031916815260200191505b50965050505050505060405160208183030381529060405280519060200120905080821462000388576040805162461bcd60e51b8152602060048201526009602482015268092dcecc2d8d2c840d60bb1b604482015290519081900360640190fd5b60408051633cc8050960e21b81523060048201523360248201526001600160a01b0385811660448301529151918d169163f3201424913491606480830192600092919082900301818588803b158015620003e157600080fd5b505af1158015620003f6573d6000803e3d6000fd5b50505050506200041289338a8a8a8a8a6200042e60201b60201c565b5050505050505050505050620009e9565b60061c600116151590565b600554610100900460ff16156200048c576040805162461bcd60e51b815260206004820152601e60248201527f4920686164206265656e20696e697469616c697a656420616c72656164790000604482015290519081900360640190fd5b6001600160a01b038716620004e8576040805162461bcd60e51b815260206004820152601f60248201527f4361736869657220616464726573732063616e206e6f74206265207a65726f00604482015290519081900360640190fd5b6005805461ff00191661010017905584516200050c9060029060208801906200094d565b508351620005229060039060208701906200094d565b506005805460ff191660ff85161763ffffffff60b01b1916600160b01b63ffffffff841602179055620005558662000575565b62000560876200063b565b6200056c86836200065f565b50505050505050565b6001600160a01b038116620005d1576040805162461bcd60e51b815260206004820152601960248201527f43616e206e6f7420736574206f776e657220746f207a65726f00000000000000604482015290519081900360640190fd5b6005546040516001600160a01b038084169262010000900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b03909216620100000262010000600160b01b0319909216919091179055565b7fe4daccb11a797004e79d649410b00658e14f3296aae1b244a00c23be3d595cd455565b6001600160a01b038216620006bb576040805162461bcd60e51b815260206004820152601860248201527f4d696e7420746f20746865207a65726f20616464726573730000000000000000604482015290519081900360640190fd5b620006c9600083836200076e565b620006e5816004546200089360201b620021021790919060201c565b6004556001600160a01b03821660009081526020818152604090912054620007189183906200210262000893821b17901c565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b600554600160d01b900460ff1615620007ce576040805162461bcd60e51b815260206004820152601660248201527f5061757361626c653a2070617573656420737461746500000000000000000000604482015290519081900360640190fd5b620007d8620008f5565b156200088e57620007e98362000924565b156200083c576040805162461bcd60e51b815260206004820152601360248201527f46726f6d20697320626c61636b6c697374656400000000000000000000000000604482015290519081900360640190fd5b620008478262000924565b156200088e576040805162461bcd60e51b8152602060048201526011602482015270151bc81a5cc8189b1858dadb1a5cdd1959607a1b604482015290519081900360640190fd5b505050565b600082820183811015620008ee576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b60006200091f600560169054906101000a900463ffffffff166200094260201b620021631760201c565b905090565b6001600160a01b031660009081526006602052604090205460ff1690565b60051c600116151590565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200099057805160ff1916838001178555620009c0565b82800160010185558215620009c0579182015b82811115620009c0578251825591602001919060010190620009a3565b50620009ce929150620009d2565b5090565b5b80821115620009ce5760008155600101620009d3565b612cc580620009f96000396000f3fe60806040526004361061028c5760003560e01c80635c975abb1161015a578063a457c2d7116100c1578063d4feea1b1161007a578063d4feea1b1461090e578063d7cfa9ca14610923578063dd62ed3e14610938578063f2fde38b14610973578063f9f92be414610999578063fe7c5cf8146109bf57610293565b8063a457c2d714610862578063a9059cbb1461089b578063b319031c146108d4578063c9ac0d32146108e9578063cbd411b6146108f1578063cd0d0ce7146108f957610293565b8063883356d911610113578063883356d9146107b75780638da5cb5b146107cc57806395d89b41146107fd578063979271ca146108125780639caf9b001461081a578063a09a16011461084d57610293565b80635c975abb1461074257806364cc4aa51461075757806370a082311461076c578063715018a61461079f5780638456cb59146107a757806387207de3146107af57610293565b8063348a5209116101fe57806348c44712116101b757806348c44712146105545780634bd227661461058a5780634d01fb22146105b65780634fd88bbd1461071d5780635298409d1461072557806354fd4d501461072d57610293565b8063348a52091461049357806339509351146104a85780633f4ba83a146104e157806340c10f19146104e957806342966c681461051557806346b45af71461053f57610293565b80631a895266116102505780631a895266146103c15780631d55c749146103e757806323b872dd146103ef578063241321fe146104325780633008e59c1461043a578063313ce5671461046857610293565b806306fdde0314610295578063095ea7b31461031f578063097798381461036c578063117e1f151461039257806318160ddd1461039a57610293565b3661029357005b005b3480156102a157600080fd5b506102aa6109c7565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102e45781810151838201526020016102cc565b50505050905090810190601f1680156103115780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561032b57600080fd5b506103586004803603604081101561034257600080fd5b506001600160a01b038135169060200135610a5a565b604080519115158252519081900360200190f35b6102936004803603602081101561038257600080fd5b50356001600160a01b0316610a70565b610293610bee565b3480156103a657600080fd5b506103af610cad565b60408051918252519081900360200190f35b610293600480360360208110156103d757600080fd5b50356001600160a01b0316610cb3565b610293610db2565b3480156103fb57600080fd5b506103586004803603606081101561041257600080fd5b506001600160a01b03813581169160208101359091169060400135610e1b565b610293610e84565b6102936004803603604081101561045057600080fd5b506001600160a01b0381358116916020013516610f2f565b34801561047457600080fd5b5061047d61100f565b6040805160ff9092168252519081900360200190f35b34801561049f57600080fd5b50610358611018565b3480156104b457600080fd5b50610358600480360360408110156104cb57600080fd5b506001600160a01b038135169060200135611039565b61029361106f565b610358600480360360408110156104ff57600080fd5b506001600160a01b0381351690602001356111c0565b34801561052157600080fd5b506102936004803603602081101561053857600080fd5b50356112d6565b34801561054b57600080fd5b50610358611394565b6102936004803603606081101561056a57600080fd5b506001600160a01b038135811691602081013590911690604001356113b0565b610293600480360360408110156105a057600080fd5b506001600160a01b0381351690602001356115d8565b3480156105c257600080fd5b50610293600480360360e08110156105d957600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561060d57600080fd5b82018360208201111561061f57600080fd5b8035906020019184600183028401116401000000008311171561064157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929594936020810193503591505064010000000081111561069457600080fd5b8201836020820111156106a657600080fd5b803590602001918460018302840111640100000000831117156106c857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050813560ff169250506020810135906040013563ffffffff1661175a565b610293611895565b6102936118fe565b34801561073957600080fd5b5061047d611967565b34801561074e57600080fd5b50610358611975565b34801561076357600080fd5b506103af611985565b34801561077857600080fd5b506103af6004803603602081101561078f57600080fd5b50356001600160a01b0316611998565b6102936119b3565b610293611a62565b610293611bb3565b3480156107c357600080fd5b50610358611c1c565b3480156107d857600080fd5b506107e1611c38565b604080516001600160a01b039092168252519081900360200190f35b34801561080957600080fd5b506102aa611c4d565b610293611cae565b34801561082657600080fd5b506103586004803603602081101561083d57600080fd5b50356001600160a01b0316611d17565b34801561085957600080fd5b50610358611d35565b34801561086e57600080fd5b506103586004803603604081101561088557600080fd5b506001600160a01b038135169060200135611d51565b3480156108a757600080fd5b50610358600480360360408110156108be57600080fd5b506001600160a01b038135169060200135611dbe565b3480156108e057600080fd5b50610358611dcb565b610293611de7565b610293611e50565b34801561090557600080fd5b506107e1611eb9565b34801561091a57600080fd5b50610358611ec3565b34801561092f57600080fd5b50610358611edf565b34801561094457600080fd5b506103af6004803603604081101561095b57600080fd5b506001600160a01b0381358116916020013516611efb565b6102936004803603602081101561098957600080fd5b50356001600160a01b0316611f26565b610293600480360360208110156109af57600080fd5b50356001600160a01b0316611f8c565b61029361208e565b60028054604080516020601f6000196101006001871615020190941685900493840181900481028201810190925282815260609390929091830182828015610a505780601f10610a2557610100808354040283529160200191610a50565b820191906000526020600020905b815481529060010190602001808311610a3357829003601f168201915b5050505050905090565b6000610a6733848461216e565b50600192915050565b6005546201000090046001600160a01b03163314610ac3576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b610acb611edf565b610b15576040805162461bcd60e51b815260206004820152601660248201527509cdee840e4cacceadcc8c2c4d8ca40ccdee4408aa8960531b604482015290519081900360640190fd5b6001600160a01b038116610b68576040805162461bcd60e51b81526020600482015260156024820152740526566756e6420746f20616464726573732030783605c1b604482015290519081900360640190fd5b610b726001612286565b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610baa573d6000803e3d6000fd5b506040805182815290516001600160a01b038416917f289360176646a5f99cb4b6300628426dca46b723f40db3c04449d6ed1745a0e7919081900360200190a25050565b6005546201000090046001600160a01b03163314610c41576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b610c49611394565b610c95576040805162461bcd60e51b8152602060048201526018602482015277436f6e7472616374206973206e6f74206d696e7461626c6560401b604482015290519081900360640190fd5b610c9f6001612286565b610cab6001600061229c565b565b60045490565b6005546201000090046001600160a01b03163314610d06576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b610d0e611dcb565b610d5f576040805162461bcd60e51b815260206004820152601d60248201527f436f6e7472616374206973206e6f7420626c61636b6c69737461626c65000000604482015290519081900360640190fd5b610d696001612286565b6001600160a01b038116600081815260066020526040808220805460ff19169055517f117e3210bb9aa7d9baff172026820255c6f6c30ba8999d1c2fd88e2848137c4e9190a250565b6005546201000090046001600160a01b03163314610e05576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b610e0f6001612286565b610cab6005600061229c565b6000610e28848484612308565b610e7a8433610e7585604051806060016040528060218152602001612c49602191396001600160a01b038a166000908152600160209081526040808320338452909152902054919061248f565b61216e565b5060019392505050565b600554600160d01b900460ff1615610edc576040805162461bcd60e51b81526020600482015260166024820152755061757361626c653a2070617573656420737461746560501b604482015290519081900360640190fd5b6005546201000090046001600160a01b03163314610c95576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b6005546201000090046001600160a01b03163314610f82576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b6000826001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610fd157600080fd5b505afa158015610fe5573d6000803e3d6000fd5b505050506040513d6020811015610ffb57600080fd5b5051905061100a8383836113b0565b505050565b60055460ff1690565b60055460009061103490600160b01b900463ffffffff16612526565b905090565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610a67918590610e759086612102565b600554600160d01b900460ff166110cd576040805162461bcd60e51b815260206004820152601860248201527f5061757361626c653a20756e7061757365642073746174650000000000000000604482015290519081900360640190fd5b6005546201000090046001600160a01b03163314611120576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b611128611d35565b611174576040805162461bcd60e51b8152602060048201526018602482015277436f6e7472616374206973206e6f74207061757361626c6560401b604482015290519081900360640190fd5b61117e6001612286565b6005805460ff60d01b191690556040805133815290517f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9181900360200190a1565b600554600090600160d01b900460ff161561121b576040805162461bcd60e51b81526020600482015260166024820152755061757361626c653a2070617573656420737461746560501b604482015290519081900360640190fd5b6005546201000090046001600160a01b0316331461126e576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b611276611394565b6112c2576040805162461bcd60e51b8152602060048201526018602482015277436f6e7472616374206973206e6f74206d696e7461626c6560401b604482015290519081900360640190fd5b6112cc6001612286565b610a678383612531565b600554600160d01b900460ff161561132e576040805162461bcd60e51b81526020600482015260166024820152755061757361626c653a2070617573656420737461746560501b604482015290519081900360640190fd5b611336611c1c565b611387576040805162461bcd60e51b815260206004820152601860248201527f436f6e7472616374206973206e6f74206275726e61626c650000000000000000604482015290519081900360640190fd5b6113913382612621565b50565b60055460009061103490600160b01b900463ffffffff16612750565b6005546201000090046001600160a01b03163314611403576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b61140b611018565b61145c576040805162461bcd60e51b815260206004820152601860248201527f4e6f7420726566756e6461626c6520666f722045524332300000000000000000604482015290519081900360640190fd5b6001600160a01b0382166114af576040805162461bcd60e51b81526020600482015260156024820152740526566756e6420746f20616464726573732030783605c1b604482015290519081900360640190fd5b823b151580611505576040805162461bcd60e51b815260206004820152601c60248201527f636f6e7472616374206164647265737320697320726571756972656400000000604482015290519081900360640190fd5b61150f6001612286565b6040805163a9059cbb60e01b81526001600160a01b038581166004830152602482018590529151869283169163a9059cbb9160448083019260209291908290030181600087803b15801561156257600080fd5b505af1158015611576573d6000803e3d6000fd5b505050506040513d602081101561158c57600080fd5b50506040805184815290516001600160a01b0380881692908716917fdbdf8eb487847e4c0f22847f5dac07f2d3690f96f581a6ae4b102769917645a89181900360200190a35050505050565b6005546201000090046001600160a01b0316331461162b576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b611633611edf565b61167d576040805162461bcd60e51b815260206004820152601660248201527509cdee840e4cacceadcc8c2c4d8ca40ccdee4408aa8960531b604482015290519081900360640190fd5b6001600160a01b0382166116d0576040805162461bcd60e51b81526020600482015260156024820152740526566756e6420746f20616464726573732030783605c1b604482015290519081900360640190fd5b6116da6001612286565b47811115611724576040805162461bcd60e51b8152602060048201526012602482015271084c2d8c2dcc6ca40dcdee840cadcdeeaced60731b604482015290519081900360640190fd5b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610baa573d6000803e3d6000fd5b600554610100900460ff16156117b7576040805162461bcd60e51b815260206004820152601e60248201527f4920686164206265656e20696e697469616c697a656420616c72656164790000604482015290519081900360640190fd5b6001600160a01b038716611812576040805162461bcd60e51b815260206004820152601f60248201527f4361736869657220616464726573732063616e206e6f74206265207a65726f00604482015290519081900360640190fd5b6005805461ff0019166101001790558451611834906002906020880190612b95565b508351611848906003906020870190612b95565b506005805460ff191660ff85161763ffffffff60b01b1916600160b01b63ffffffff8416021790556118798661275b565b61188287612820565b61188c8683612531565b50505050505050565b6005546201000090046001600160a01b031633146118e8576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b6118f26001612286565b610cab6004600061229c565b6005546201000090046001600160a01b03163314611951576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b61195b6001612286565b610cab6002600061229c565b600554610100900460ff1690565b600554600160d01b900460ff1690565b600554600160b01b900463ffffffff1690565b6001600160a01b031660009081526020819052604090205490565b6005546201000090046001600160a01b03163314611a06576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b611a106001612286565b6005546040516000916201000090046001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36005805462010000600160b01b0319169055565b600554600160d01b900460ff1615611aba576040805162461bcd60e51b81526020600482015260166024820152755061757361626c653a2070617573656420737461746560501b604482015290519081900360640190fd5b6005546201000090046001600160a01b03163314611b0d576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b611b15611d35565b611b61576040805162461bcd60e51b8152602060048201526018602482015277436f6e7472616374206973206e6f74207061757361626c6560401b604482015290519081900360640190fd5b611b6b6001612286565b6005805460ff60d01b1916600160d01b1790556040805133815290517f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2589181900360200190a1565b6005546201000090046001600160a01b03163314611c06576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b611c106001612286565b610cab6005600161229c565b60055460009061103490600160b01b900463ffffffff16612844565b6005546201000090046001600160a01b031690565b60038054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610a505780601f10610a2557610100808354040283529160200191610a50565b6005546201000090046001600160a01b03163314611d01576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b611d0b6001612286565b610cab6004600161229c565b6001600160a01b031660009081526006602052604090205460ff1690565b60055460009061103490600160b01b900463ffffffff1661284f565b604080518082018252601e81527f44656372656173656420616c6c6f77616e63652062656c6f77207a65726f0000602080830191909152336000818152600183528481206001600160a01b0388168252909252928120549092610a679290918691610e759190879061248f565b6000610a67338484612308565b60055460009061103490600160b01b900463ffffffff16612163565b6005546201000090046001600160a01b03163314611e3a576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b611e446001612286565b610cab6003600061229c565b6005546201000090046001600160a01b03163314611ea3576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b611ead6001612286565b610cab6003600161229c565b6000611034612857565b60055460009061103490600160b01b900463ffffffff166120f7565b60055460009061103490600160b01b900463ffffffff1661287c565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6005546201000090046001600160a01b03163314611f79576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b611f836001612286565b6113918161275b565b6005546201000090046001600160a01b03163314611fdf576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b611fe7611dcb565b612038576040805162461bcd60e51b815260206004820152601d60248201527f436f6e7472616374206973206e6f7420626c61636b6c69737461626c65000000604482015290519081900360640190fd5b6120426001612286565b6001600160a01b038116600081815260066020526040808220805460ff19166001179055517fffa4e6181777692565cf28528fc88fd1516ea86b56da075235fa575af6a4b8559190a250565b6005546201000090046001600160a01b031633146120e1576040805162461bcd60e51b81526020600482015260176024820152600080516020612c29833981519152604482015290519081900360640190fd5b6120eb6001612286565b610cab6002600161229c565b60061c600116151590565b60008282018381101561215c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b60051c600116151590565b6001600160a01b0383166121c9576040805162461bcd60e51b815260206004820152601d60248201527f417070726f76652066726f6d20746865207a65726f2061646472657373000000604482015290519081900360640190fd5b6001600160a01b038216612224576040805162461bcd60e51b815260206004820152601b60248201527f417070726f766520746f20746865207a65726f20616464726573730000000000604482015290519081900360640190fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6113916000356001600160e01b03191682612887565b80156122d35760058054600160b01b80820463ffffffff90811660018288161b17160263ffffffff60b01b19909116179055612304565b6005805463ffffffff60b01b198116600163ffffffff8681169190911b8103600160b01b9384900416169091021790555b5050565b6001600160a01b038316612363576040805162461bcd60e51b815260206004820152601e60248201527f5472616e736665722066726f6d20746865207a65726f20616464726573730000604482015290519081900360640190fd5b6001600160a01b0382166123be576040805162461bcd60e51b815260206004820152601c60248201527f5472616e7366657220746f20746865207a65726f206164647265737300000000604482015290519081900360640190fd5b6123c9838383612a4e565b61240681604051806060016040528060268152602001612c6a602691396001600160a01b038616600090815260208190526040902054919061248f565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546124359082612102565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818484111561251e5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156124e35781810151838201526020016124cb565b50505050905090810190601f1680156125105780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60041c600116151590565b6001600160a01b03821661258c576040805162461bcd60e51b815260206004820152601860248201527f4d696e7420746f20746865207a65726f20616464726573730000000000000000604482015290519081900360640190fd5b61259860008383612a4e565b6004546125a59082612102565b6004556001600160a01b0382166000908152602081905260409020546125cb9082612102565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b03821661267c576040805162461bcd60e51b815260206004820152601a60248201527f4275726e2066726f6d20746865207a65726f2061646472657373000000000000604482015290519081900360640190fd5b61268882600083612a4e565b604080518082018252601b81527f4275726e20616d6f756e7420657863656564732062616c616e636500000000006020808301919091526001600160a01b03851660009081529081905291909120546126e291839061248f565b6001600160a01b0383166000908152602081905260409020556004546127089082612b53565b6004556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b600190811c16151590565b6001600160a01b0381166127b6576040805162461bcd60e51b815260206004820152601960248201527f43616e206e6f7420736574206f776e657220746f207a65726f00000000000000604482015290519081900360640190fd5b6005546040516001600160a01b038084169262010000900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b03909216620100000262010000600160b01b0319909216919091179055565b7fe4daccb11a797004e79d649410b00658e14f3296aae1b244a00c23be3d595cd455565b60021c600116151590565b600116151590565b7fe4daccb11a797004e79d649410b00658e14f3296aae1b244a00c23be3d595cd45490565b60031c600116151590565b6000612891612857565b90506001600160a01b0381166128a75750612304565b6000816001600160a01b031663cd4467356040518163ffffffff1660e01b815260040160206040518083038186803b1580156128e257600080fd5b505afa1580156128f6573d6000803e3d6000fd5b505050506040513d602081101561290c57600080fd5b505190506001600160a01b038116612925575050612304565b6040805163010ec02960e41b8152306004820152602481018590526001600160e01b03198616604482015290516000916001600160a01b038516916310ec029091606480820192602092909190829003018186803b15801561298657600080fd5b505afa15801561299a573d6000803e3d6000fd5b505050506040513d60208110156129b057600080fd5b505190508015612a475780471015612a0f576040805162461bcd60e51b815260206004820152601b60248201527f46756e6374696f6e20666565206973206e6f7420656e6f7567682e0000000000604482015290519081900360640190fd5b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612a45573d6000803e3d6000fd5b505b5050505050565b600554600160d01b900460ff1615612aa6576040805162461bcd60e51b81526020600482015260166024820152755061757361626c653a2070617573656420737461746560501b604482015290519081900360640190fd5b612aae611dcb565b1561100a57612abc83611d17565b15612b04576040805162461bcd60e51b8152602060048201526013602482015272119c9bdb481a5cc8189b1858dadb1a5cdd1959606a1b604482015290519081900360640190fd5b612b0d82611d17565b1561100a576040805162461bcd60e51b8152602060048201526011602482015270151bc81a5cc8189b1858dadb1a5cdd1959607a1b604482015290519081900360640190fd5b600061215c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061248f565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10612bd657805160ff1916838001178555612c03565b82800160010185558215612c03579182015b82811115612c03578251825591602001919060010190612be8565b50612c0f929150612c13565b5090565b5b80821115612c0f5760008155600101612c1456fe43616c6c6572206973206e6f7420746865206f776e65720000000000000000005472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365a2646970667358221220db015549fd50b366b0f103885f8f2f37fe7e17f835dc3633a7d6266eedd51e2764736f6c634300060c00330000000000000000000000001d548432504a1e2651ad597c758da86a6bb2e747000000000000000000000000000000000000000000000000016345785d8a0000000000000000000000000000326949fa7524eba617e3a0bb382c864128d4fb48000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000009000000000000000000000000000000000000000000000000000001e8f1c1080000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000b3d0cf5f73f161e21a12125ec1a8700a823942582468177d9d16f93e65fb7a92000000000000000000000000000000000000000000000000000000000000000c4c697465636f696e20666973000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000046c74637300000000000000000000000000000000000000000000000000000000