0x60806040523480156200001157600080fd5b50600280546001600160a01b0319163317905560408051808201909152600581526415da19585d60da1b60208201526003906200004f908262000188565b5060408051808201909152600581526415d211505560da1b60208201526004906200007b908262000188565b50620f4240600581905560068190556007805460ff191660021790553360008181526020818152604080832085905551938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a362000254565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200010e57607f821691505b6020821081036200012f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200018357600081815260208120601f850160051c810160208610156200015e5750805b601f850160051c820191505b818110156200017f578281556001016200016a565b5050505b505050565b81516001600160401b03811115620001a457620001a4620000e3565b620001bc81620001b58454620000f9565b8462000135565b602080601f831160018114620001f45760008415620001db5750858301515b600019600386901b1c1916600185901b1785556200017f565b600085815260208120601f198616915b82811015620002255788860151825594840194600190910190840162000204565b5085821015620002445787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610bbd80620002646000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c806370a082311161008c578063a0712d6811610066578063a0712d68146101ae578063a9059cbb146101c1578063d5abeb01146101d4578063dd62ed3e146101dc57600080fd5b806370a0823114610162578063893d20e81461018b57806395d89b41146101a657600080fd5b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461011557806323b872dd14610127578063313ce5671461013a57806342966c681461014f575b600080fd5b6100dc610215565b6040516100e9919061096a565b60405180910390f35b6101056101003660046109d4565b6102a7565b60405190151581526020016100e9565b6005545b6040519081526020016100e9565b6101056101353660046109fe565b6102be565b60075460405160ff90911681526020016100e9565b61010561015d366004610a3a565b610327565b610119610170366004610a53565b6001600160a01b031660009081526020819052604090205490565b6002546040516001600160a01b0390911681526020016100e9565b6100dc61033b565b6101056101bc366004610a3a565b61034a565b6101056101cf3660046109d4565b610356565b600654610119565b6101196101ea366004610a6e565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b60606003805461022490610aa1565b80601f016020809104026020016040519081016040528092919081815260200182805461025090610aa1565b801561029d5780601f106102725761010080835404028352916020019161029d565b820191906000526020600020905b81548152906001019060200180831161028057829003601f168201915b5050505050905090565b60006102b4338484610363565b5060015b92915050565b60006102cb84848461048d565b61031d843361031885604051806060016040528060288152602001610b60602891396001600160a01b038a166000908152600160209081526040808320338452909152902054919061064e565b610363565b5060019392505050565b60006103333383610688565b506001919050565b60606004805461022490610aa1565b600061033333836107d0565b60006102b433848461048d565b6001600160a01b0383166103ca5760405162461bcd60e51b8152602060048201526024808201527f45545032303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b03821661042b5760405162461bcd60e51b815260206004820152602260248201527f45545032303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103c1565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166104f15760405162461bcd60e51b815260206004820152602560248201527f45545032303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103c1565b6001600160a01b0382166105535760405162461bcd60e51b815260206004820152602360248201527f45545032303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103c1565b61059081604051806060016040528060268152602001610b3a602691396001600160a01b038616600090815260208190526040902054919061064e565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105bf90826108c2565b6001600160a01b03808416600090815260208190526040808220939093559085168152908120549003610609576001600160a01b0383166000908152602081905260409020600190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161048091815260200190565b600081848411156106725760405162461bcd60e51b81526004016103c1919061096a565b50600061067f8486610af1565b95945050505050565b6001600160a01b0382166106e85760405162461bcd60e51b815260206004820152602160248201527f45545032303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103c1565b61072581604051806060016040528060228152602001610b18602291396001600160a01b038516600090815260208190526040902054919061064e565b6001600160a01b03831660009081526020819052604090205560055461074b9082610928565b6005556001600160a01b038216600090815260208190526040812054900361078a576001600160a01b0382166000908152602081905260409020600190555b6040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906020015b60405180910390a35050565b6002546001600160a01b038381169116146108385760405162461bcd60e51b815260206004820152602260248201527f45545032303a206d696e742066726f6d206e6f6e206f776e6572206164647265604482015261737360f01b60648201526084016103c1565b6001600160a01b03821660009081526020819052604090205461085b90826108c2565b6001600160a01b03831660009081526020819052604090205560055461088190826108c2565b6005556040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906020016107c4565b6000806108cf8385610b04565b9050838110156109215760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103c1565b9392505050565b600061092183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061064e565b600060208083528351808285015260005b818110156109975785810183015185820160400152820161097b565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146109cf57600080fd5b919050565b600080604083850312156109e757600080fd5b6109f0836109b8565b946020939093013593505050565b600080600060608486031215610a1357600080fd5b610a1c846109b8565b9250610a2a602085016109b8565b9150604084013590509250925092565b600060208284031215610a4c57600080fd5b5035919050565b600060208284031215610a6557600080fd5b610921826109b8565b60008060408385031215610a8157600080fd5b610a8a836109b8565b9150610a98602084016109b8565b90509250929050565b600181811c90821680610ab557607f821691505b602082108103610ad557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b818103818111156102b8576102b8610adb565b808201808211156102b8576102b8610adb56fe45545032303a206275726e20616d6f756e7420657863656564732062616c616e636545545032303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545545032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d81ea2e7d68a965ca765b87df67c91508c6e59aa906be3b4fe102dfa5dae039d64736f6c63430008130033
0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c806370a082311161008c578063a0712d6811610066578063a0712d68146101ae578063a9059cbb146101c1578063d5abeb01146101d4578063dd62ed3e146101dc57600080fd5b806370a0823114610162578063893d20e81461018b57806395d89b41146101a657600080fd5b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461011557806323b872dd14610127578063313ce5671461013a57806342966c681461014f575b600080fd5b6100dc610215565b6040516100e9919061096a565b60405180910390f35b6101056101003660046109d4565b6102a7565b60405190151581526020016100e9565b6005545b6040519081526020016100e9565b6101056101353660046109fe565b6102be565b60075460405160ff90911681526020016100e9565b61010561015d366004610a3a565b610327565b610119610170366004610a53565b6001600160a01b031660009081526020819052604090205490565b6002546040516001600160a01b0390911681526020016100e9565b6100dc61033b565b6101056101bc366004610a3a565b61034a565b6101056101cf3660046109d4565b610356565b600654610119565b6101196101ea366004610a6e565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b60606003805461022490610aa1565b80601f016020809104026020016040519081016040528092919081815260200182805461025090610aa1565b801561029d5780601f106102725761010080835404028352916020019161029d565b820191906000526020600020905b81548152906001019060200180831161028057829003601f168201915b5050505050905090565b60006102b4338484610363565b5060015b92915050565b60006102cb84848461048d565b61031d843361031885604051806060016040528060288152602001610b60602891396001600160a01b038a166000908152600160209081526040808320338452909152902054919061064e565b610363565b5060019392505050565b60006103333383610688565b506001919050565b60606004805461022490610aa1565b600061033333836107d0565b60006102b433848461048d565b6001600160a01b0383166103ca5760405162461bcd60e51b8152602060048201526024808201527f45545032303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b03821661042b5760405162461bcd60e51b815260206004820152602260248201527f45545032303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103c1565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166104f15760405162461bcd60e51b815260206004820152602560248201527f45545032303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103c1565b6001600160a01b0382166105535760405162461bcd60e51b815260206004820152602360248201527f45545032303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103c1565b61059081604051806060016040528060268152602001610b3a602691396001600160a01b038616600090815260208190526040902054919061064e565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105bf90826108c2565b6001600160a01b03808416600090815260208190526040808220939093559085168152908120549003610609576001600160a01b0383166000908152602081905260409020600190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161048091815260200190565b600081848411156106725760405162461bcd60e51b81526004016103c1919061096a565b50600061067f8486610af1565b95945050505050565b6001600160a01b0382166106e85760405162461bcd60e51b815260206004820152602160248201527f45545032303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103c1565b61072581604051806060016040528060228152602001610b18602291396001600160a01b038516600090815260208190526040902054919061064e565b6001600160a01b03831660009081526020819052604090205560055461074b9082610928565b6005556001600160a01b038216600090815260208190526040812054900361078a576001600160a01b0382166000908152602081905260409020600190555b6040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906020015b60405180910390a35050565b6002546001600160a01b038381169116146108385760405162461bcd60e51b815260206004820152602260248201527f45545032303a206d696e742066726f6d206e6f6e206f776e6572206164647265604482015261737360f01b60648201526084016103c1565b6001600160a01b03821660009081526020819052604090205461085b90826108c2565b6001600160a01b03831660009081526020819052604090205560055461088190826108c2565b6005556040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906020016107c4565b6000806108cf8385610b04565b9050838110156109215760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103c1565b9392505050565b600061092183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061064e565b600060208083528351808285015260005b818110156109975785810183015185820160400152820161097b565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146109cf57600080fd5b919050565b600080604083850312156109e757600080fd5b6109f0836109b8565b946020939093013593505050565b600080600060608486031215610a1357600080fd5b610a1c846109b8565b9250610a2a602085016109b8565b9150604084013590509250925092565b600060208284031215610a4c57600080fd5b5035919050565b600060208284031215610a6557600080fd5b610921826109b8565b60008060408385031215610a8157600080fd5b610a8a836109b8565b9150610a98602084016109b8565b90509250929050565b600181811c90821680610ab557607f821691505b602082108103610ad557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b818103818111156102b8576102b8610adb565b808201808211156102b8576102b8610adb56fe45545032303a206275726e20616d6f756e7420657863656564732062616c616e636545545032303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545545032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d81ea2e7d68a965ca765b87df67c91508c6e59aa906be3b4fe102dfa5dae039d64736f6c63430008130033