0 txs
0 calls
constructor
constructor(address _token, address _registry, uint32 _maxConversionFee, address _connectorToken, uint32 _connectorWeight)
functions
BANCOR_FORMULA
viewfunction BANCOR_FORMULA() view returns (bytes32)
BANCOR_NETWORK
viewfunction BANCOR_NETWORK() view returns (bytes32)
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)
CONTRACT_FEATURES
viewfunction CONTRACT_FEATURES() view returns (bytes32)
conversionFee
viewfunction conversionFee() view returns (uint32)
conversionsEnabled
viewfunction conversionsEnabled() view returns (bool)
conversionWhitelist
viewfunction conversionWhitelist() view returns (address)
CONVERTER_CONVERSION_WHITELIST
viewfunction CONVERTER_CONVERSION_WHITELIST() view returns (uint256)
converterType
viewfunction converterType() view returns (string)
getConnectorBalance
viewfunction getConnectorBalance(address _connectorToken) view returns (uint256)
getCrossConnectorReturn
viewfunction getCrossConnectorReturn(address _fromConnectorToken, address _toConnectorToken, uint256 _sellAmount) view returns (uint256)
getFinalAmount
viewfunction getFinalAmount(uint256 _amount, uint8 _magnitude) 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)
registry
viewfunction registry() 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)
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)
convertInternal
nonpayablefunction convertInternal(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)
quickConvertPrioritized
payablefunction quickConvertPrioritized(address[] _path, uint256 _amount, uint256 _minReturn, uint256 _block, uint8 _v, bytes32 _r, bytes32 _s) payable returns (uint256)
setConversionFee
nonpayablefunction setConversionFee(uint32 _conversionFee)
setConversionWhitelist
nonpayablefunction setConversionWhitelist(address _whitelist)
setQuickBuyPath
nonpayablefunction setQuickBuyPath(address[] _path)
setRegistry
nonpayablefunction setRegistry(address _registry)
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, int256 _conversionFee)
ConversionFeeUpdate
event ConversionFeeUpdate(uint32 _prevFee, uint32 _newFee)
ManagerUpdate
event ManagerUpdate(address indexed _prevManager, address indexed _newManager)
OwnerUpdate
event OwnerUpdate(address indexed _prevOwner, address indexed _newOwner)
PriceDataUpdate
event PriceDataUpdate(address indexed _connectorToken, uint256 _tokenSupply, uint256 _connectorBalance, uint32 _connectorWeight)
errors
No errors.
creation bytecode
0x606060405260408051908101604052600381527f302e390000000000000000000000000000000000000000000000000000000000602082015260059080516200004d92916020019062000577565b506040805190810160405260068082527f62616e636f72000000000000000000000000000000000000000000000000000060208301529080516200009692916020019062000577565b50600c80546001606860020a0319166c010000000000000000000000001790553415620000c257600080fd5b60405160a08062003700833981016040528080519190602001805191906020018051919060200180519190602001805160008054600160a060020a03191633600160a060020a03908116919091178255919350915086908190811615156200012957600080fd5b5060028054600160a060020a0319908116600160a060020a0393841617909155600380549091163383161790558590811615156200016657600080fd5b8460008163ffffffff1610158015620001885750620f424063ffffffff821611155b15156200019457600080fd5b60078054600160a060020a031916600160a060020a038981169190911791829055166321f8a7217f436f6e74726163744665617475726573000000000000000000000000000000006040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281526004810191909152602401602060405180830381600087803b15156200022c57600080fd5b5af115156200023a57600080fd5b5050506040518051935050600160a060020a03831615620002d05782600160a060020a0316632c7077c06001806040517c010000000000000000000000000000000000000000000000000000000063ffffffff8516028152600481019290925215156024820152604401600060405180830381600087803b1515620002be57600080fd5b5af11515620002cc57600080fd5b5050505b600c805467ffffffff00000000191664010000000063ffffffff891602179055600160a060020a038516156200031c576200031c858560006401000000006200161b6200032a82021704565b505050505050505062000648565b60005433600160a060020a039081169116146200034357fe5b600254600160a060020a033081169116638da5cb5b6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515620003a057600080fd5b5af11515620003ae57600080fd5b50505060405180519050600160a060020a031614151515620003cc57fe5b82600160a060020a0381161515620003e357600080fd5b8330600160a060020a031681600160a060020a0316141515156200040657600080fd5b8360008163ffffffff16118015620004275750620f424063ffffffff821611155b15156200043357600080fd5b600254600160a060020a03878116911614801590620004785750600160a060020a0386166000908152600b60205260409020600101546601000000000000900460ff16155b8015620004975750600c54620f424063ffffffff918216870190911611155b1515620004a357600080fd5b600160a060020a0386166000908152600b602052604081209081556001908101805466010000000000006501000000000063ffffffff1990921663ffffffff8a161764ff000000001916640100000000891515021765ff000000000019169190911766ff00000000000019161790556009805490918101620005268382620005fc565b5060009182526020909120018054600160a060020a031916600160a060020a0397909716969096179095555050600c805463ffffffff19811663ffffffff9182169490940116929092179091555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620005ba57805160ff1916838001178555620005ea565b82800160010185558215620005ea579182015b82811115620005ea578251825591602001919060010190620005cd565b50620005f892915062000628565b5090565b81548183558181151162000623576000838152602090206200062391810190830162000628565b505050565b6200064591905b80821115620005f857600081556001016200062f565b90565b6130a880620006586000396000f3006060604052600436106102425763ffffffff60e060020a6000350416630ca7892381146102ab5780630e53aae9146102dd57806319b64015146103385780631e1401f81461036a57806321e6b53d146103a457806322742564146103c3578063228d2820146104275780632a2e2f0c1461043f57806338a5e0161461046a5780633aa0145a1461047d5780633e8ff43f146104995780633f4d2fc21461052357806341a5b33d146105505780634290602914610578578063481c6a751461058b5780634af80f0e1461059e5780634e2280c4146105bd578063514385be146105d057806354fd4d50146105f4578063579cd3ca146106075780635e35359e146106335780635e5144eb1461065b5780636d7bd3fc1461068657806371f52bf31461069957806372b44b2c146106c357806375892cf1146106e557806379ba5097146107105780637b1039991461072357806383315b6e1461073657806385d5e631146107495780638da5cb5b146107615780638e3047e0146107745780639232494e1461079c57806392d1abb7146107af5780639396a7f0146107c257806394c275ad146107d5578063a2c4c336146107e8578063a91ee0dc1461080a578063bf75455814610829578063c45d3d9214610850578063c8c2fe6c14610863578063d395ee0f14610876578063d4ee1d90146108c5578063d8959512146108d8578063e4edf852146108f7578063e7ee85a514610916578063ecbca55d1461092c578063f0843ba914610948578063f2fde38b14610993578063fc0c546a146109b2575b6102a8600a80548060200260200160405190810160405280929190818152602001828054801561029b57602002820191906000526020600020905b8154600160a060020a0316815260019091019060200180831161027d575b50505050503460016109c5565b50005b34156102b657600080fd5b6102db600160a060020a036004351663ffffffff602435166044351515606435610a18565b005b34156102e857600080fd5b6102fc600160a060020a0360043516610b2c565b60405194855263ffffffff90931660208501529015156040808501919091529015156060840152901515608083015260a0909101905180910390f35b341561034357600080fd5b61034e600435610b72565b604051600160a060020a03909116815260200160405180910390f35b341561037557600080fd5b610392600160a060020a0360043581169060243516604435610b9a565b60405190815260200160405180910390f35b34156103af57600080fd5b6102db600160a060020a0360043516610c11565b610392600460248135818101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965050843594602081013594506040810135935060ff60608201351692506080810135915060a00135610c8c565b341561043257600080fd5b6102db6004351515610fcb565b341561044a57600080fd5b610392600160a060020a036004358116906024351660443560643561102e565b341561047557600080fd5b6102db6114b8565b341561048857600080fd5b61039260043560ff60243516611521565b34156104a457600080fd5b6104ac61157d565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156104e85780820151838201526020016104d0565b50505050905090810190601f1680156105155780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561052e57600080fd5b6102db600160a060020a036004351663ffffffff60243516604435151561161b565b341561055b57600080fd5b6102db600160a060020a036004358116906024351660443561184f565b341561058357600080fd5b61034e6118df565b341561059657600080fd5b61034e6118ee565b34156105a957600080fd5b6102db600160a060020a03600435166118fd565b34156105c857600080fd5b6102db611967565b34156105db57600080fd5b6102db600160a060020a0360043516602435151561198f565b34156105ff57600080fd5b6104ac611a18565b341561061257600080fd5b61061a611a83565b60405163ffffffff909116815260200160405180910390f35b341561063e57600080fd5b6102db600160a060020a0360043581169060243516604435611a9b565b341561066657600080fd5b610392600160a060020a0360043581169060243516604435606435611b74565b341561069157600080fd5b610392611b82565b34156106a457600080fd5b6106ac611ba6565b60405161ffff909116815260200160405180910390f35b34156106ce57600080fd5b610392600160a060020a0360043516602435611bad565b34156106f057600080fd5b610392600160a060020a0360043581169060243516604435606435611e04565b341561071b57600080fd5b6102db611ea4565b341561072e57600080fd5b61034e611f32565b341561074157600080fd5b610392611f41565b341561075457600080fd5b6102db6004351515611f65565b341561076c57600080fd5b61034e611fc5565b341561077f57600080fd5b610392600160a060020a0360043581169060243516604435611fd4565b34156107a757600080fd5b61039261224a565b34156107ba57600080fd5b61039261226e565b34156107cd57600080fd5b610392612273565b34156107e057600080fd5b61061a612279565b34156107f357600080fd5b610392600160a060020a036004351660243561228d565b341561081557600080fd5b6102db600160a060020a03600435166124d2565b341561083457600080fd5b61083c612553565b604051901515815260200160405180910390f35b341561085b57600080fd5b61034e61256c565b341561086e57600080fd5b6102db61257b565b341561088157600080fd5b6102db600460248135818101908301358060208181020160405190810160405280939291908181526020018383602002808284375094965061260995505050505050565b34156108d057600080fd5b61034e61266c565b34156108e357600080fd5b610392600160a060020a036004351661267b565b341561090257600080fd5b6102db600160a060020a0360043516612757565b341561092157600080fd5b61034e6004356127d7565b341561093757600080fd5b6102db63ffffffff600435166127e5565b6103926004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843750949650508435946020013593506109c592505050565b341561099e57600080fd5b6102db600160a060020a03600435166128db565b34156109bd57600080fd5b61034e61293d565b600083600281511180156109db57506015815111155b80156109f45750600281518115156109ef57fe5b066001145b15156109ff57600080fd5b610a0f8585856000808080610c8c565b95945050505050565b6000805433600160a060020a03908116911614610a3157fe5b600160a060020a0385166000908152600b602052604090206001015485906601000000000000900460ff161515610a6757600080fd5b8460008163ffffffff16118015610a875750620f424063ffffffff821611155b1515610a9257600080fd5b600160a060020a0387166000908152600b602052604090206001810154600c54919450620f424063ffffffff918216928216929092038801161115610ad657600080fd5b5050600181018054600c805463ffffffff928316818416038801831663ffffffff199182161790915582549515156401000000000264ff0000000019929097169516949094179390931693909317909155905550565b600b602052600090815260409020805460019091015463ffffffff81169060ff640100000000820481169165010000000000810482169166010000000000009091041685565b6009805482908110610b8057fe5b600091825260209091200154600160a060020a0316905081565b6000600160a060020a038481169084161415610bb557600080fd5b600254600160a060020a0384811691161415610bdc57610bd5848361228d565b9050610c0a565b600254600160a060020a0385811691161415610bfc57610bd58383611bad565b610c07848484611fd4565b90505b9392505050565b60005433600160a060020a03908116911614610c2957fe5b600254600160a060020a031663f2fde38b8260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b1515610c7957600080fd5b5af11515610c8657600080fd5b50505050565b60008060008960028151118015610ca557506015815111155b8015610cbe575060028151811515610cb957fe5b066001145b1515610cc957600080fd5b8a600081518110610cd657fe5b90602001906020020151600754909350600160a060020a03166321f8a7217f42616e636f724e6574776f726b0000000000000000000000000000000000000060405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515610d4b57600080fd5b5af11515610d5857600080fd5b5050506040518051925050341515610ed257600254600160a060020a0384811691161415610e5257600254600160a060020a031663a24835d1338c60405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515610dd657600080fd5b5af11515610de357600080fd5b5050600254600160a060020a0316905063867904b4838c60405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515610e3d57600080fd5b5af11515610e4a57600080fd5b505050610ed2565b82600160a060020a03166323b872dd33848d60405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515610eb357600080fd5b5af11515610ec057600080fd5b505050604051805190501515610ed257fe5b81600160a060020a0316636b08f2ef348d8d8d338e8e8e8e60405160e060020a63ffffffff8c160281526024810188905260448101879052600160a060020a03861660648201526084810185905260ff841660a482015260c4810183905260e4810182905261010060048201908152908190610104018a818151815260200191508051906020019060200280838360005b83811015610f7b578082015183820152602001610f63565b5050505090500199505050505050505050506020604051808303818588803b1515610fa557600080fd5b5af11515610fb257600080fd5b5050505060405180519c9b505050505050505050505050565b60005433600160a060020a0390811691161480610ff6575060035433600160a060020a039081169116145b151561100157600080fd5b600c80546cff000000000000000000000000191691156c0100000000000000000000000002919091179055565b600754600090819081908190819081908190600160a060020a03166321f8a7217f42616e636f724e6574776f726b0000000000000000000000000000000000000060405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b15156110a557600080fd5b5af115156110b257600080fd5b505050604051805191505033600160a060020a03908116908216146110d657600080fd5b600c546c01000000000000000000000000900460ff1615156110f457fe5b876000811161110257600080fd5b600160a060020a038c8116908c16141561111b57600080fd5b600254600160a060020a038c8116911614156111435761113c8c8b8b61294c565b97506114a9565b600254600160a060020a038d8116911614156111645761113c8b8b8b612b8d565b61116f8c8c8c611fd4565b965086158015906111805750888710155b151561118b57600080fd5b600160a060020a038c166000908152600b602052604090206001810154909650640100000000900460ff16156111ca5785546111c7908b612ebe565b86555b600160a060020a038b166000908152600b602052604090206001810154909550640100000000900460ff16156112095784546112069088612ecd565b85555b6112128b61267b565b935083871061121d57fe5b8b600160a060020a03166323b872dd33308d60405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b151561127e57600080fd5b5af1151561128b57600080fd5b50505060405180519050151561129d57fe5b8a600160a060020a031663a9059cbb338960405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156112f157600080fd5b5af115156112fe57600080fd5b50505060405180519050151561131057fe5b6113248761131f896002611521565b612ecd565b92506113338c8c8c8a87612edf565b600254600160a060020a03808e16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a78891166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561139857600080fd5b5af115156113a557600080fd5b505050604051805190506113b88f61267b565b60018a015463ffffffff16604051928352602083019190915263ffffffff166040808301919091526060909101905180910390a2600254600160a060020a03808d16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a78891166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561145157600080fd5b5af1151561145e57600080fd5b505050604051805190506114718e61267b565b600189015463ffffffff16604051928352602083019190915263ffffffff166040808301919091526060909101905180910390a28697505b50505050505050949350505050565b60005433600160a060020a039081169116146114d057fe5b600254600160a060020a03166379ba50976040518163ffffffff1660e060020a028152600401600060405180830381600087803b151561150f57600080fd5b5af1151561151c57600080fd5b505050565b60008160ff16620f42400a67ffffffffffffffff1661156c848460ff16600c60089054906101000a900463ffffffff1663ffffffff16620f4240030a67ffffffffffffffff16612f75565b81151561157557fe5b049392505050565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156116135780601f106115e857610100808354040283529160200191611613565b820191906000526020600020905b8154815290600101906020018083116115f657829003601f168201915b505050505081565b60005433600160a060020a0390811691161461163357fe5b600254600160a060020a033081169116638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561167657600080fd5b5af1151561168357600080fd5b50505060405180519050600160a060020a0316141515156116a057fe5b82600160a060020a03811615156116b657600080fd5b8330600160a060020a031681600160a060020a0316141515156116d857600080fd5b8360008163ffffffff161180156116f85750620f424063ffffffff821611155b151561170357600080fd5b600254600160a060020a038781169116148015906117475750600160a060020a0386166000908152600b60205260409020600101546601000000000000900460ff16155b80156117655750600c54620f424063ffffffff918216870190911611155b151561177057600080fd5b600160a060020a0386166000908152600b602052604081209081556001908101805466010000000000006501000000000063ffffffff1990921663ffffffff8a161764ff000000001916640100000000891515021765ff000000000019169190911766ff000000000000191617905560098054909181016117f18382612f99565b506000918252602090912001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0397909716969096179095555050600c805463ffffffff19811663ffffffff9182169490940116929092179091555050565b60005433600160a060020a0390811691161461186757fe5b600254600160a060020a0316635e35359e84848460405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156118ca57600080fd5b5af115156118d757600080fd5b505050505050565b600454600160a060020a031681565b600354600160a060020a031681565b60005433600160a060020a0390811691161461191557fe5b8030600160a060020a031681600160a060020a03161415151561193757600080fd5b506008805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60005433600160a060020a0390811691161461197f57fe5b600061198c600a82612f99565b50565b60005433600160a060020a039081169116146119a757fe5b600160a060020a0382166000908152600b602052604090206001015482906601000000000000900460ff1615156119dd57600080fd5b50600160a060020a03919091166000908152600b60205260409020600101805465ff0000000000191691156501000000000002919091179055565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156116135780601f106115e857610100808354040283529160200191611613565b600c5468010000000000000000900463ffffffff1681565b60005433600160a060020a03908116911614611ab357fe5b82600160a060020a0381161515611ac957600080fd5b82600160a060020a0381161515611adf57600080fd5b8330600160a060020a031681600160a060020a031614151515611b0157600080fd5b85600160a060020a031663a9059cbb868660405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515611b5557600080fd5b5af11515611b6257600080fd5b5050506040518051905015156118d757fe5b6000610a0f8585858561102e565b7f42616e636f72466f726d756c610000000000000000000000000000000000000081565b6009545b90565b60025460009081908190819081908190600160a060020a033081169116638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611bfd57600080fd5b5af11515611c0a57600080fd5b50505060405180519050600160a060020a0316141515611c2657fe5b600160a060020a0388166000908152600b602052604090206001015488906601000000000000900460ff161515611c5c57600080fd5b600160a060020a03808a166000908152600b602052604090819020600254909850909116906318160ddd90518163ffffffff1660e060020a028152600401602060405180830381600087803b1515611cb357600080fd5b5af11515611cc057600080fd5b505050604051805190509450611cd58961267b565b600754909450600160a060020a03166321f8a7217f42616e636f72466f726d756c610000000000000000000000000000000000000060405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b1515611d4057600080fd5b5af11515611d4d57600080fd5b50505060405180516001880154909450600160a060020a03851691506349f9b0f7908790879063ffffffff168c6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b1515611dd357600080fd5b5af11515611de057600080fd5b505050604051805190509150611df7826001611521565b9998505050505050505050565b600060606040519081016040908152600160a060020a03808816835260025481166020840152861690820152611e3e90600d906003612fbd565b50610a0f600d805480602002602001604051908101604052809291908181526020018280548015611e9857602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311611e7a575b505050505084846109c5565b60015433600160a060020a03908116911614611ebf57600080fd5b600154600054600160a060020a0391821691167f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a60405160405180910390a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600754600160a060020a031681565b7f436f6e747261637446656174757265730000000000000000000000000000000081565b60005433600160a060020a03908116911614611f7d57fe5b600254600160a060020a0316631608f18f8260405160e060020a63ffffffff84160281529015156004820152602401600060405180830381600087803b1515610c7957600080fd5b600054600160a060020a031681565b600254600090819081908190819081908190600160a060020a033081169116638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561202657600080fd5b5af1151561203357600080fd5b50505060405180519050600160a060020a031614151561204f57fe5b600160a060020a038a166000908152600b60205260409020600101548a906601000000000000900460ff16151561208557600080fd5b600160a060020a038a166000908152600b60205260409020600101548a906601000000000000900460ff1615156120bb57600080fd5b600160a060020a038c81166000908152600b6020526040808220928e16825290206001810154919950975065010000000000900460ff1615156120fd57600080fd5b6121068c61267b565b95506121118b61267b565b600754909550600160a060020a03166321f8a7217f42616e636f72466f726d756c610000000000000000000000000000000000000060405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561217c57600080fd5b5af1151561218957600080fd5b50505060405180516001808b0154908a0154919650600160a060020a03871692506365098bb391899163ffffffff908116918a91168f60405163ffffffff87811660e060020a0282526004820196909652938516602485015260448401929092529092166064820152608481019190915260a401602060405180830381600087803b151561221657600080fd5b5af1151561222357600080fd5b50505060405180519050925061223a836002611521565b9c9b505050505050505050505050565b7f42616e636f724e6574776f726b0000000000000000000000000000000000000081565b600181565b600a5490565b600c54640100000000900463ffffffff1681565b60025460009081908190819081908190600160a060020a033081169116638da5cb5b6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156122dd57600080fd5b5af115156122ea57600080fd5b50505060405180519050600160a060020a031614151561230657fe5b600160a060020a0388166000908152600b602052604090206001015488906601000000000000900460ff16151561233c57600080fd5b600160a060020a0389166000908152600b60205260409020600181015490965065010000000000900460ff16151561237357600080fd5b600254600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156123b257600080fd5b5af115156123bf57600080fd5b5050506040518051905094506123d48961267b565b600754909450600160a060020a03166321f8a7217f42616e636f72466f726d756c610000000000000000000000000000000000000060405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561243f57600080fd5b5af1151561244c57600080fd5b50505060405180516001880154909450600160a060020a03851691506329a00e7c908790879063ffffffff168c6040518563ffffffff1660e060020a028152600401808581526020018481526020018363ffffffff1663ffffffff168152602001828152602001945050505050602060405180830381600087803b1515611dd357600080fd5b60005433600160a060020a039081169116146124ea57fe5b80600160a060020a038116151561250057600080fd5b8130600160a060020a031681600160a060020a03161415151561252257600080fd5b50506007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600c546c01000000000000000000000000900460ff1681565b600854600160a060020a031681565b60045433600160a060020a0390811691161461259657600080fd5b600454600354600160a060020a0391821691167fbe4cc281795971a471c980e842627a7f1ea3892ddfce8c5b6357cd2611c1973260405160405180910390a3600480546003805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b60005433600160a060020a0390811691161461262157fe5b806002815111801561263557506015815111155b801561264e57506002815181151561264957fe5b066001145b151561265957600080fd5b600a82805161151c929160200190612fbd565b600154600160a060020a031681565b600160a060020a0381166000908152600b6020526040812060010154819083906601000000000000900460ff1615156126b357600080fd5b600160a060020a0384166000908152600b602052604090206001810154909250640100000000900460ff1661274c5783600160a060020a03166370a082313060405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561273057600080fd5b5af1151561273d57600080fd5b5050506040518051905061274f565b81545b949350505050565b60005433600160a060020a0390811691161480612782575060035433600160a060020a039081169116145b151561278d57600080fd5b600354600160a060020a03828116911614156127a857600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600a805482908110610b8057fe5b60005433600160a060020a0390811691161480612810575060035433600160a060020a039081169116145b151561281b57600080fd5b8060008163ffffffff16101580156128475750600c5463ffffffff640100000000909104811690821611155b151561285257600080fd5b600c547f81cd2ffb37dd237c0e4e2a3de5265fcf9deb43d3e7801e80db9f1ccfba7ee6009068010000000000000000900463ffffffff168360405163ffffffff9283168152911660208201526040908101905180910390a150600c805463ffffffff90921668010000000000000000026bffffffff000000000000000019909216919091179055565b60005433600160a060020a039081169116146128f357fe5b600054600160a060020a038281169116141561290e57600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600254600160a060020a031681565b60008060008061295c878761228d565b9250821580159061296d5750848310155b151561297857600080fd5b600160a060020a0387166000908152600b602052604090206001810154909250640100000000900460ff16156129b75781546129b49087612ebe565b82555b86600160a060020a03166323b872dd33308960405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401602060405180830381600087803b1515612a1857600080fd5b5af11515612a2557600080fd5b505050604051805190501515612a3757fe5b600254600160a060020a031663867904b4338560405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515612a8d57600080fd5b5af11515612a9a57600080fd5b505050612aac8361131f856001611521565b600254909150612ac9908890600160a060020a0316888685612edf565b600254600160a060020a03808916917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a78891166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515612b2e57600080fd5b5af11515612b3b57600080fd5b50505060405180519050612b4e8a61267b565b600186015463ffffffff16604051928352602083019190915263ffffffff166040808301919091526060909101905180910390a2509095945050505050565b60025460009081908190819081908190600160a060020a03166370a082313360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515612bea57600080fd5b5af11515612bf757600080fd5b50505060405180518911159050612c0d57600080fd5b612c178989611bad565b94508415801590612c285750868510155b1515612c3357600080fd5b600254600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515612c7257600080fd5b5af11515612c7f57600080fd5b505050604051805190509350612c948961267b565b925082851080612cad57508285148015612cad57508388145b1515612cb557fe5b600160a060020a0389166000908152600b602052604090206001810154909250640100000000900460ff1615612cf4578154612cf19086612ecd565b82555b600254600160a060020a031663a24835d1338a60405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515612d4a57600080fd5b5af11515612d5757600080fd5b50505088600160a060020a031663a9059cbb338760405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515612dae57600080fd5b5af11515612dbb57600080fd5b505050604051805190501515612dcd57fe5b612ddc8561131f876001611521565b600254909150612df890600160a060020a03168a8a8885612edf565b600254600160a060020a03808b16917f8a6a7f53b3c8fa1dc4b83e3f1be668c1b251ff8d44cdcb83eb3acec3fec6a78891166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515612e5d57600080fd5b5af11515612e6a57600080fd5b50505060405180519050612e7d8c61267b565b600186015463ffffffff16604051928352602083019190915263ffffffff166040808301919091526060909101905180910390a25092979650505050505050565b600082820183811015610c0a57fe5b600081831015612ed957fe5b50900390565b7f8000000000000000000000000000000000000000000000000000000000000000811115612f0957fe5b33600160a060020a031684600160a060020a031686600160a060020a03167f276856b36cbc45526a0ba64f44611557a2a8b68662c5388e9fe6d72e86e1c8cb86868660405180848152602001838152602001828152602001935050505060405180910390a45050505050565b6000828202831580612f915750828482811515612f8e57fe5b04145b1515610c0a57fe5b81548183558181151161151c5760008381526020902061151c918101908301613031565b828054828255906000526020600020908101928215613021579160200282015b82811115613021578251825473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039190911617825560209290920191600190910190612fdd565b5061302d92915061304b565b5090565b611baa91905b8082111561302d5760008155600101613037565b611baa91905b8082111561302d57805473ffffffffffffffffffffffffffffffffffffffff191681556001016130515600a165627a7a7230582052fd9b7e2a2dbb8461f9287afebed41118eff654c4ca65423159f71c72256f2300290000000000000000000000001f573d6fb3f13d689ff844b4ce37794d79a7ff1c000000000000000000000000d1997064f0fef8748c1de9b5ba53468c548738b30000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0829421c1d260bd3cb3e0f06cfe2d52db2ce31500000000000000000000000000000000000000000000000000000000000186a0