0 txs
0 calls
constructor
constructor(address _token, address _extensions, uint32 _maxConversionFee, address _connectorToken, uint32 _connectorWeight)
functions
connectors
viewfunction connectors(address) view returns (uint256 virtualBalance, uint32 weight, bool isVirtualBalanceEnabled, bool isPurchaseEnabled, bool isSet)
connectorTokenCount
viewfunction connectorTokenCount() view returns (uint16)
connectorTokens
viewfunction connectorTokens(uint256) view returns (address)
conversionFee
viewfunction conversionFee() view returns (uint32)
conversionsEnabled
viewfunction conversionsEnabled() view returns (bool)
converterType
viewfunction converterType() view returns (string)
convertibleToken
viewfunction convertibleToken(uint16 _tokenIndex) view returns (address)
convertibleTokenCount
viewfunction convertibleTokenCount() view returns (uint16)
extensions
viewfunction extensions() view returns (address)
getConnectorBalance
viewfunction getConnectorBalance(address _connectorToken) view returns (uint256)
getConversionFeeAmount
viewfunction getConversionFeeAmount(uint256 _amount) view returns (uint256)
getPurchaseReturn
viewfunction getPurchaseReturn(address _connectorToken, uint256 _depositAmount) view returns (uint256)
getQuickBuyPathLength
viewfunction getQuickBuyPathLength() view returns (uint256)
getReturn
viewfunction getReturn(address _fromToken, address _toToken, uint256 _amount) view returns (uint256)
getSaleReturn
viewfunction getSaleReturn(address _connectorToken, uint256 _sellAmount) view returns (uint256)
manager
viewfunction manager() view returns (address)
maxConversionFee
viewfunction maxConversionFee() view returns (uint32)
newManager
viewfunction newManager() view returns (address)
newOwner
viewfunction newOwner() view returns (address)
owner
viewfunction owner() view returns (address)
quickBuyPath
viewfunction quickBuyPath(uint256) view returns (address)
token
viewfunction token() view returns (address)
version
viewfunction version() view returns (string)
acceptManagement
nonpayablefunction acceptManagement()
acceptOwnership
nonpayablefunction acceptOwnership()
acceptTokenOwnership
nonpayablefunction acceptTokenOwnership()
addConnector
nonpayablefunction addConnector(address _token, uint32 _weight, bool _enableVirtualBalance)
buy
nonpayablefunction buy(address _connectorToken, uint256 _depositAmount, uint256 _minReturn) returns (uint256)
change
nonpayablefunction change(address _fromToken, address _toToken, uint256 _amount, uint256 _minReturn) returns (uint256)
clearQuickBuyPath
nonpayablefunction clearQuickBuyPath()
convert
nonpayablefunction convert(address _fromToken, address _toToken, uint256 _amount, uint256 _minReturn) returns (uint256)
disableConnectorPurchases
nonpayablefunction disableConnectorPurchases(address _connectorToken, bool _disable)
disableConversions
nonpayablefunction disableConversions(bool _disable)
disableTokenTransfers
nonpayablefunction disableTokenTransfers(bool _disable)
quickConvert
payablefunction quickConvert(address[] _path, uint256 _amount, uint256 _minReturn) payable returns (uint256)
sell
nonpayablefunction sell(address _connectorToken, uint256 _sellAmount, uint256 _minReturn) returns (uint256)
setConversionFee
nonpayablefunction setConversionFee(uint32 _conversionFee)
setExtensions
nonpayablefunction setExtensions(address _extensions)
setQuickBuyPath
nonpayablefunction setQuickBuyPath(address[] _path)
transferManagement
nonpayablefunction transferManagement(address _newManager)
transferOwnership
nonpayablefunction transferOwnership(address _newOwner)
transferTokenOwnership
nonpayablefunction transferTokenOwnership(address _newOwner)
updateConnector
nonpayablefunction updateConnector(address _connectorToken, uint32 _weight, bool _enableVirtualBalance, uint256 _virtualBalance)
withdrawFromToken
nonpayablefunction withdrawFromToken(address _token, address _to, uint256 _amount)
withdrawTokens
nonpayablefunction withdrawTokens(address _token, address _to, uint256 _amount)
events
Conversion
event Conversion(address indexed _fromToken, address indexed _toToken, address indexed _trader, uint256 _amount, uint256 _return, uint256 _currentPriceN, uint256 _currentPriceD)
ConversionFeeUpdate
event ConversionFeeUpdate(uint32 _prevFee, uint32 _newFee)
ManagerUpdate
event ManagerUpdate(address _prevManager, address _newManager)
OwnerUpdate
event OwnerUpdate(address _prevOwner, address _newOwner)
errors
No errors.
creation bytecode
0x606060405260408051908101604052600381527f302e360000000000000000000000000000000000000000000000000000000000602082015260059080516200004d92916020019062000485565b506040805190810160405260068082527f62616e636f72000000000000000000000000000000000000000000000000000060208301529080516200009692916020019062000485565b50600b80546001606860020a0319166c010000000000000000000000001790553415620000c257600080fd5b60405160a0806200338783398101604052808051919060200180519190602001805191906020018051919060200180519150505b5b845b5b5b5b60008054600160a060020a03191633600160a060020a03161790555b5b5b80600160a060020a03811615156200013157600080fd5b60028054600160a060020a031916600160a060020a0384161790555b5b505060038054600160a060020a03191633600160a060020a03161790555b83600160a060020a03811615156200018357600080fd5b8360008163ffffffff1610158015620001a55750620f424063ffffffff821611155b1515620001b157600080fd5b60078054600160a060020a031916600160a060020a0388811691909117909155600b805467ffffffff00000000191664010000000063ffffffff89160217905584161562000215576200021584846000640100000000620013676200022682021704565b5b5b5b505b5050505050506200055c565b60005433600160a060020a039081169116146200023f57fe5b600254600160a060020a033081169116638da5cb5b6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515620002a557600080fd5b6102c65a03f11515620002b757600080fd5b50505060405180519050600160a060020a031614151515620002d557fe5b82600160a060020a0381161515620002ec57600080fd5b8330600160a060020a031681600160a060020a0316141515156200030f57600080fd5b8360008163ffffffff16118015620003305750620f424063ffffffff821611155b15156200033c57600080fd5b600254600160a060020a03878116911614801590620003815750600160a060020a0386166000908152600a60205260409020600101546601000000000000900460ff16155b8015620003a05750600b54620f424063ffffffff918216870190911611155b1515620003ac57600080fd5b600160a060020a0386166000908152600a602052604081209081556001908101805466010000000000006501000000000063ffffffff1990921663ffffffff8a161764ff000000001916640100000000891515021765ff000000000019169190911766ff000000000000191617905560088054909181016200042f83826200050b565b916000526020600020900160005b8154600160a060020a03808b166101009390930a9283029202191617905550600b805463ffffffff80821688011663ffffffff199091161790555b5b505b505b505b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620004c857805160ff1916838001178555620004f8565b82800160010185558215620004f8579182015b82811115620004f8578251825591602001919060010190620004db565b5b506200050792915062000538565b5090565b8154818355818115116200047f576000838152602090206200047f91810190830162000538565b5b505050565b6200055991905b808211156200050757600081556001016200053f565b5090565b90565b612e1b806200056c6000396000f300606060405236156102095763ffffffff60e060020a6000350416630ca7892381146102745780630e53aae9146102a657806319b64015146103015780631e1401f81461033357806321e6b53d1461036d578063228d28201461038e5780632314aad6146103a857806324f159c2146103c95780632a3c2c56146103f857806338a5e016146104205780633e8ff43f146104355780633f4d2fc2146104c057806341a5b33d146104ef5780634290602914610519578063481c6a75146105485780634e2280c414610577578063514385be1461058c57806354fd4d50146105b2578063579cd3ca1461063d5780635e35359e146106695780635e5144eb146106935780636a272462146106d057806371f52bf31461070757806372b44b2c1461073157806375892cf11461076557806379ba5097146107a257806385d5e631146107b75780638da5cb5b146107d15780639396a7f01461080057806394c275ad14610825578063a2c4c33614610851578063a59ac6dd14610885578063ba9a8b37146108bc578063bf754558146108e6578063c8c2fe6c1461090d578063d395ee0f14610922578063d4ee1d9014610973578063d8959512146109a2578063e4edf852146109d3578063e7ee85a5146109f4578063ecbca55d14610a26578063f0843ba914610a44578063f2c8d24714610aa1578063f2fde38b14610ad7578063fc0c546a14610af8575b5b610270600980548060200260200160405190810160405280929190818152602001828054801561026357602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610245575b5050505050346001610b27565b505b005b341561027f57600080fd5b610272600160a060020a036004351663ffffffff602435166044351515606435610e4b565b005b34156102b157600080fd5b6102c5600160a060020a0360043516610f62565b60405194855263ffffffff90931660208501529015156040808501919091529015156060840152901515608083015260a0909101905180910390f35b341561030c57600080fd5b610317600435610fa8565b604051600160a060020a03909116815260200160405180910390f35b341561033e57600080fd5b61035b600160a060020a0360043581169060243516604435610fda565b60405190815260200160405180910390f35b341561037857600080fd5b610272600160a060020a03600435166110d7565b005b341561039957600080fd5b6102726004351515611158565b005b34156103b357600080fd5b610272600160a060020a036004351661119d565b005b34156103d457600080fd5b610317611211565b604051600160a060020a03909116815260200160405180910390f35b341561040357600080fd5b61035b600435611220565b60405190815260200160405180910390f35b341561042b57600080fd5b61027261125a565b005b341561044057600080fd5b6104486112c9565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156104855780820151818401525b60200161046c565b50505050905090810190601f1680156104b25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156104cb57600080fd5b610272600160a060020a036004351663ffffffff602435166044351515611367565b005b34156104fa57600080fd5b610272600160a060020a03600435811690602435166044356115a0565b005b341561052457600080fd5b610317611636565b604051600160a060020a03909116815260200160405180910390f35b341561055357600080fd5b610317611645565b604051600160a060020a03909116815260200160405180910390f35b341561058257600080fd5b610272611654565b005b341561059757600080fd5b610272600160a060020a0360043516602435151561167e565b005b34156105bd57600080fd5b610448611707565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156104855780820151818401525b60200161046c565b50505050905090810190601f1680156104b25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561064857600080fd5b6106506117a5565b60405163ffffffff909116815260200160405180910390f35b341561067457600080fd5b610272600160a060020a03600435811690602435166044356117bd565b005b341561069e57600080fd5b61035b600160a060020a03600435811690602435166044356064356118b0565b60405190815260200160405180910390f35b34156106db57600080fd5b61035b600160a060020a03600435166024356044356118c9565b60405190815260200160405180910390f35b341561071257600080fd5b61071a611c3f565b60405161ffff909116815260200160405180910390f35b341561073c57600080fd5b61035b600160a060020a0360043516602435611c46565b60405190815260200160405180910390f35b341561077057600080fd5b61035b600160a060020a0360043581169060243516604435606435611cc1565b60405190815260200160405180910390f35b34156107ad57600080fd5b610272611d53565b005b34156107c257600080fd5b6102726004351515611dee565b005b34156107dc57600080fd5b610317611e67565b604051600160a060020a03909116815260200160405180910390f35b341561080b57600080fd5b61035b611e76565b60405190815260200160405180910390f35b341561083057600080fd5b610650611e7d565b60405163ffffffff909116815260200160405180910390f35b341561085c57600080fd5b61035b600160a060020a0360043516602435611e91565b60405190815260200160405180910390f35b341561089057600080fd5b61035b600160a060020a036004351660243560443561211d565b60405190815260200160405180910390f35b34156108c757600080fd5b61071a61238b565b60405161ffff909116815260200160405180910390f35b34156108f157600080fd5b6108f961239e565b604051901515815260200160405180910390f35b341561091857600080fd5b6102726123b7565b005b341561092d57600080fd5b610272600460248135818101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061245295505050505050565b005b341561097e57600080fd5b6103176124bd565b604051600160a060020a03909116815260200160405180910390f35b34156109ad57600080fd5b61035b600160a060020a03600435166124cc565b60405190815260200160405180910390f35b34156109de57600080fd5b610272600160a060020a03600435166125b8565b005b34156109ff57600080fd5b61031760043561260b565b604051600160a060020a03909116815260200160405180910390f35b3415610a3157600080fd5b61027263ffffffff6004351661263d565b005b61035b600460248135818101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965050843594602001359350610b2792505050565b60405190815260200160405180910390f35b3415610aac57600080fd5b61031761ffff60043516612713565b604051600160a060020a03909116815260200160405180910390f35b3415610ae257600080fd5b610272600160a060020a0360043516612770565b005b3415610b0357600080fd5b6103176127c3565b604051600160a060020a03909116815260200160405180910390f35b60008060008560028151118015610b4057506015815111155b8015610b59575060028151811515610b5457fe5b066001145b1515610b6457600080fd5b86600081518110610b7157fe5b90602001906020020151600754909350600160a060020a031663c31e05476000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610bc657600080fd5b6102c65a03f11515610bd757600080fd5b5050506040518051925050341515610d6657600254600160a060020a0384811691161415610cd957600254600160a060020a031663a24835d1338860405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515610c5557600080fd5b6102c65a03f11515610c6657600080fd5b5050600254600160a060020a0316905063867904b4838860405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515610cc057600080fd5b6102c65a03f11515610cd157600080fd5b505050610d66565b82600160a060020a03166323b872dd33848960006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610d4357600080fd5b6102c65a03f11515610d5457600080fd5b505050604051805190501515610d6657fe5b5b5b81600160a060020a031663c98fefed34898989336000604051602001526040518663ffffffff1660e060020a028152600401808060200185815260200184815260200183600160a060020a0316600160a060020a03168152602001828103825286818151815260200191508051906020019060200280838360005b83811015610dfc5780820151818401525b602001610de3565b50505050905001955050505050506020604051808303818588803b1515610e2257600080fd5b6125ee5a03f11515610e3357600080fd5b5050505060405180519450505b5b5050509392505050565b6000805433600160a060020a03908116911614610e6457fe5b600160a060020a0385166000908152600a602052604090206001015485906601000000000000900460ff161515610e9a57600080fd5b8460008163ffffffff16118015610eba5750620f424063ffffffff821611155b1515610ec557600080fd5b600160a060020a0387166000908152600a602052604090206001810154600b54919450620f424063ffffffff918216928216929092038801161115610f0957600080fd5b600183018054600b805463ffffffff928316818416038a01831663ffffffff199182161790915582548815156401000000000264ff0000000019938b169190921617919091161790558383555b5b505b505b5050505050565b600a602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b6008805482908110610fb657fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600080600160a060020a038581169085161415610ff657600080fd5b600254600160a060020a038581169116141561101d576110168584611e91565b91506110cf565b600254600160a060020a0386811691161415611044576110168484611c46565b91506110cf565b5b61104f8584611e91565b6002549091506110cc90859083906110c790600160a060020a03166318160ddd6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156110a657600080fd5b6102c65a03f115156110b757600080fd5b50505060405180519050856127d2565b6127ec565b91505b509392505050565b60005433600160a060020a039081169116146110ef57fe5b600254600160a060020a031663f2fde38b8260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b151561113f57600080fd5b6102c65a03f1151561115057600080fd5b5050505b5b50565b60035433600160a060020a0390811691161461117057fe5b600b80546cff000000000000000000000000191682156c01000000000000000000000000021790555b5b50565b60005433600160a060020a039081169116146111b557fe5b80600160a060020a03811615156111cb57600080fd5b8130600160a060020a031681600160a060020a0316141515156111ed57600080fd5b60078054600160a060020a031916600160a060020a0385161790555b5b505b505b50565b600754600160a060020a031681565b600b54600090620f42409061124890849068010000000000000000900463ffffffff16612a04565b81151561125157fe5b0490505b919050565b60005433600160a060020a0390811691161461127257fe5b600254600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b15156112b157600080fd5b6102c65a03f1151561120957600080fd5b5050505b5b565b60068054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561135f5780601f106113345761010080835404028352916020019161135f565b820191906000526020600020905b81548152906001019060200180831161134257829003601f168201915b505050505081565b60005433600160a060020a0390811691161461137f57fe5b600254600160a060020a033081169116638da5cb5b6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156113cb57600080fd5b6102c65a03f115156113dc57600080fd5b50505060405180519050600160a060020a0316141515156113f957fe5b82600160a060020a038116151561140f57600080fd5b8330600160a060020a031681600160a060020a03161415151561143157600080fd5b8360008163ffffffff161180156114515750620f424063ffffffff821611155b151561145c57600080fd5b600254600160a060020a038781169116148015906114a05750600160a060020a0386166000908152600a60205260409020600101546601000000000000900460ff16155b80156114be5750600b54620f424063ffffffff918216870190911611155b15156114c957600080fd5b600160a060020a0386166000908152600a602052604081209081556001908101805466010000000000006501000000000063ffffffff1990921663ffffffff8a161764ff000000001916640100000000891515021765ff000000000019169190911766ff0000000000001916179055600880549091810161154a8382612ce7565b916000526020600020900160005b8154600160a060020a03808b166101009390930a9283029202191617905550600b805463ffffffff80821688011663ffffffff199091161790555b5b505b505b505b5b505050565b60005433600160a060020a039081169116146115b857fe5b600254600160a060020a0316635e35359e84848460405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561161b57600080fd5b6102c65a03f11515610f5957600080fd5b5050505b5b505050565b600454600160a060020a031681565b600354600160a060020a031681565b60005433600160a060020a0390811691161461166c57fe5b6000611154600982612ce7565b505b5b565b60005433600160a060020a0390811691161461169657fe5b600160a060020a0382166000908152600a602052604090206001015482906601000000000000900460ff1615156116cc57600080fd5b600160a060020a0383166000908152600a60205260409020600101805465ff00000000001916831565010000000000021790555b5b505b5050565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561135f5780601f106113345761010080835404028352916020019161135f565b820191906000526020600020905b81548152906001019060200180831161134257829003601f168201915b505050505081565b600b5468010000000000000000900463ffffffff1681565b60005433600160a060020a039081169116146117d557fe5b82600160a060020a03811615156117eb57600080fd5b82600160a060020a038116151561180157600080fd5b8330600160a060020a031681600160a060020a03161415151561182357600080fd5b85600160a060020a031663a9059cbb868660006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561188057600080fd5b6102c65a03f1151561189157600080fd5b505050604051805190501515610f5957fe5b5b5b505b505b505b505050565b60006118be85858585611cc1565b90505b949350505050565b6000806000806000600b600c9054906101000a900460ff1615156118e957fe5b600754600160a060020a031663961a929c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561193157600080fd5b6102c65a03f1151561194257600080fd5b50505060405180519050600160a060020a031663fe173b976000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561199157600080fd5b6102c65a03f115156119a257600080fd5b50505060405180513a111590506119b557fe5b85600081116119c357600080fd5b600254600160a060020a03166370a082313360006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515611a1c57600080fd5b6102c65a03f11515611a2d57600080fd5b50505060405180518911159050611a4357600080fd5b611a4d8989611c46565b94508415801590611a5e5750868510155b1515611a6657fe5b600254600160a060020a03166318160ddd6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611aae57600080fd5b6102c65a03f11515611abf57600080fd5b505050604051805190509350611ad4896124cc565b925082851080611aed57508285148015611aed57508388145b5b1515611af657fe5b600160a060020a0389166000908152600a602052604090206001810154909250640100000000900460ff1615611b35578154611b329086612a33565b82555b600254600160a060020a031663a24835d1338a60405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515611b8b57600080fd5b6102c65a03f11515611b9c57600080fd5b50505088600160a060020a031663a9059cbb338760006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515611bfc57600080fd5b6102c65a03f11515611c0d57600080fd5b505050604051805190501515611c1f57fe5b611c2c8989876000612a4a565b8495505b5b505b5b505050509392505050565b6008545b90565b600254600090611cb89084908490600160a060020a03166318160ddd85604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611c9857600080fd5b6102c65a03f11515611ca957600080fd5b505050604051805190506127ec565b90505b92915050565b600080600160a060020a038681169086161415611cdd57600080fd5b600254600160a060020a0386811691161415611d0557611cfe86858561211d565b9150611d4a565b600254600160a060020a0387811691161415611d2d57611cfe8585856118c9565b9150611d4a565b5b611d3a8685600161211d565b9050611d478582856118c9565b91505b50949350505050565b60015433600160a060020a03908116911614611d6e57600080fd5b6000546001547f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91600160a060020a039081169116604051600160a060020a039283168152911660208201526040908101905180910390a16001805460008054600160a060020a0319908116600160a060020a038416179091551690555b565b60005433600160a060020a03908116911614611e0657fe5b600254600160a060020a0316631608f18f8260405160e060020a63ffffffff84160281529015156004820152602401600060405180830381600087803b151561113f57600080fd5b6102c65a03f1151561115057600080fd5b5050505b5b50565b600054600160a060020a031681565b6009545b90565b600b54640100000000900463ffffffff1681565b60025460009081908190819081908190600160a060020a033081169116638da5cb5b83604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611ee957600080fd5b6102c65a03f11515611efa57600080fd5b50505060405180519050600160a060020a0316141515611f1657fe5b600160a060020a0388166000908152600a602052604090206001015488906601000000000000900460ff161515611f4c57600080fd5b600160a060020a0389166000908152600a60205260409020600181015490965065010000000000900460ff161515611f8357600080fd5b600254600160a060020a03166318160ddd6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611fcb57600080fd5b6102c65a03f11515611fdc57600080fd5b505050604051805190509450611ff1896124cc565b600754909450600160a060020a0316634b75f54f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561203c57600080fd5b6102c65a03f1151561204d57600080fd5b50505060405180516001880154600160a060020a0390911691506329a00e7c908790879063ffffffff168c6000604051602001526040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b15156120da57600080fd5b6102c65a03f115156120eb57600080fd5b50505060405180519050925061210083611220565b915061210c8383612a33565b96505b5b505b505050505092915050565b6000806000600b600c9054906101000a900460ff16151561213a57fe5b600754600160a060020a031663961a929c6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561218257600080fd5b6102c65a03f1151561219357600080fd5b50505060405180519050600160a060020a031663fe173b976000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156121e257600080fd5b6102c65a03f115156121f357600080fd5b50505060405180513a1115905061220657fe5b836000811161221457600080fd5b61221e8787611e91565b9250821580159061222f5750848310155b151561223757fe5b600160a060020a0387166000908152600a602052604090206001810154909250640100000000900460ff161561227657815461227390876127d2565b82555b86600160a060020a03166323b872dd33308960006040516020015260405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b15156122e057600080fd5b6102c65a03f115156122f157600080fd5b50505060405180519050151561230357fe5b600254600160a060020a031663867904b4338560405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561235957600080fd5b6102c65a03f1151561236a57600080fd5b50505061237a8787856001612a4a565b8293505b5b505b5b50509392505050565b6000612395611c3f565b60010190505b90565b600b546c01000000000000000000000000900460ff1681565b60045433600160a060020a039081169116146123d257600080fd5b6003546004547fbe4cc281795971a471c980e842627a7f1ea3892ddfce8c5b6357cd2611c1973291600160a060020a039081169116604051600160a060020a039283168152911660208201526040908101905180910390a16004805460038054600160a060020a0319908116600160a060020a038416179091551690555b565b60005433600160a060020a0390811691161461246a57fe5b806002815111801561247e57506015815111155b801561249757506002815181151561249257fe5b066001145b15156124a257600080fd5b6009828051611209929160200190612d3b565b505b5b505b50565b600154600160a060020a031681565b600160a060020a0381166000908152600a6020526040812060010154819083906601000000000000900460ff16151561250457600080fd5b600160a060020a0384166000908152600a602052604090206001810154909250640100000000900460ff166125aa5783600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561258a57600080fd5b6102c65a03f1151561259b57600080fd5b505050604051805190506125ad565b81545b92505b5b5050919050565b60035433600160a060020a039081169116146125d057fe5b600354600160a060020a03828116911614156125eb57600080fd5b60048054600160a060020a031916600160a060020a0383161790555b5b50565b6009805482908110610fb657fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b60035433600160a060020a0390811691161461265557fe5b8060008163ffffffff16101580156126815750600b5463ffffffff640100000000909104811690821611155b151561268c57600080fd5b600b547f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009068010000000000000000900463ffffffff168360405163ffffffff9283168152911660208201526040908101905180910390a1600b80546bffffffff000000000000000019166801000000000000000063ffffffff8516021790555b5b505b50565b600061ffff821615156127325750600254600160a060020a0316611255565b6008805461ffff60001985011690811061274857fe5b906000526020600020900160005b9054906101000a9004600160a060020a031690505b919050565b60005433600160a060020a0390811691161461278857fe5b600054600160a060020a03828116911614156127a357600080fd5b60018054600160a060020a031916600160a060020a0383161790555b5b50565b600254600160a060020a031681565b6000828201838110156127e157fe5b8091505b5092915050565b6002546000908190819081908190600160a060020a033081169116638da5cb5b83604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561284257600080fd5b6102c65a03f1151561285357600080fd5b50505060405180519050600160a060020a031614151561286f57fe5b600160a060020a0388166000908152600a602052604090206001015488906601000000000000900460ff1615156128a557600080fd5b86600081116128b357600080fd5b600160a060020a038a166000908152600a6020526040902095506128d68a6124cc565b600754909550600160a060020a0316634b75f54f6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561292157600080fd5b6102c65a03f1151561293257600080fd5b50505060405180516001880154600160a060020a0390911691506349f9b0f7908a90889063ffffffff168d6000604051602001526040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b15156129bf57600080fd5b6102c65a03f115156129d057600080fd5b5050506040518051905093506129e584611220565b92506129f18484612a33565b96505b5b505b505b505050509392505050565b6000828202831580612a205750828482811515612a1d57fe5b04145b15156127e157fe5b8091505b5092915050565b600081831015612a3f57fe5b508082035b92915050565b600160a060020a0384166000908152600a6020526040812090808080612a7b612a728a6124cc565b620f4240612a04565b600254909450612af690600160a060020a03166318160ddd6000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515612aca57600080fd5b6102c65a03f11515612adb57600080fd5b5050506040518051600188015490915063ffffffff16612a04565b600254909350600160a060020a031663313ce5676000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515612b4157600080fd5b6102c65a03f11515612b5257600080fd5b5050506040518051925050600160a060020a03891663313ce5676000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515612ba357600080fd5b6102c65a03f11515612bb457600080fd5b505050604051805191505060ff82811690821614612c08578060ff168260ff161115612bf357612bec8482840360ff16600a0a612a04565b9350612c08565b612c058383830360ff16600a0a612a04565b92505b5b8515612c7757600254600160a060020a03338116918116908b167f431d62569d69247969ee24b65452f881ddcc12e42b7b71c324403449f870c0d38b8b89896040518085815260200184815260200183815260200182815260200194505050505060405180910390a4612cdb565b600254600160a060020a03338116918b821691167f431d62569d69247969ee24b65452f881ddcc12e42b7b71c324403449f870c0d38b8b888a6040518085815260200184815260200183815260200182815260200194505050505060405180910390a45b5b505050505050505050565b81548183558181151161120957600083815260209020611209918101908301612da3565b5b505050565b81548183558181151161120957600083815260209020611209918101908301612da3565b5b505050565b828054828255906000526020600020908101928215612d92579160200282015b82811115612d925782518254600160a060020a031916600160a060020a039190911617825560209290920191600190910190612d5b565b5b50612d9f929150612dc4565b5090565b611c4391905b80821115612d9f5760008155600101612da9565b5090565b90565b611c4391905b80821115612d9f578054600160a060020a0319168155600101612dca565b5090565b905600a165627a7a72305820347b2c7f77df6e58723d4b932f1b8e2ae0f50e3de2075b386c76cfbab90b0a45002900000000000000000000000040610c5f98cd6281da676e05aa65c3a4628ed5e0000000000000000000000000f46002c37af6fb078ae1833fd447698a0c9012f7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000068d57c9a1c35f63e2c83ee8e49a64e9d70528d2500000000000000000000000000000000000000000000000000000000000f4240