Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 35 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Payout ERC20 | 11042321 | 1533 days ago | IN | 0 ETH | 0.01342687 | ||||
Buy Asset Order ... | 11042306 | 1533 days ago | IN | 0 ETH | 0.00853449 | ||||
Buy Asset Order ... | 11042193 | 1533 days ago | IN | 7.62330163 ETH | 0.06387329 | ||||
Refund | 11037892 | 1533 days ago | IN | 0 ETH | 0.00504179 | ||||
Refund | 11035814 | 1534 days ago | IN | 0 ETH | 0.00933665 | ||||
Buy Asset Order ... | 11004871 | 1539 days ago | IN | 3.82434804 ETH | 0.03718771 | ||||
Buy Asset Order ... | 11004690 | 1539 days ago | IN | 0 ETH | 0.04632268 | ||||
Payout ERC20 | 10996421 | 1540 days ago | IN | 0 ETH | 0.03580394 | ||||
Buy Asset Order ... | 10996099 | 1540 days ago | IN | 8.63508932 ETH | 0.07357042 | ||||
Buy Asset Order ... | 10983562 | 1542 days ago | IN | 5.50885445 ETH | 0.08873184 | ||||
Buy Asset Order ... | 10983546 | 1542 days ago | IN | 2.55517761 ETH | 0.09705045 | ||||
Buy Asset Order ... | 10983540 | 1542 days ago | IN | 13.77041827 ETH | 0.09761346 | ||||
Buy Asset Order ... | 10980979 | 1542 days ago | IN | 0 ETH | 0.01434607 | ||||
Cancel | 10959775 | 1546 days ago | IN | 0 ETH | 0.0135278 | ||||
Cancel | 10959737 | 1546 days ago | IN | 0 ETH | 0.0111658 | ||||
Payout ERC20 | 10920589 | 1552 days ago | IN | 0 ETH | 0.02868211 | ||||
Buy Asset Order ... | 10918876 | 1552 days ago | IN | 0.00313977 ETH | 0.07437251 | ||||
Buy Asset Order ... | 10918534 | 1552 days ago | IN | 3.13387822 ETH | 0.04286429 | ||||
Buy Asset Order ... | 10917269 | 1552 days ago | IN | 0 ETH | 0.01550316 | ||||
Buy Asset Order ... | 10876161 | 1559 days ago | IN | 0 ETH | 0.01291881 | ||||
Buy Asset Order ... | 10870399 | 1559 days ago | IN | 11.65813614 ETH | 0.107718 | ||||
Buy Asset Order ... | 10865390 | 1560 days ago | IN | 0 ETH | 0.02981625 | ||||
Buy Asset Order ... | 10851571 | 1562 days ago | IN | 0 ETH | 0.09989537 | ||||
Buy Asset Order ... | 10848589 | 1563 days ago | IN | 3.39808842 ETH | 0.04326078 | ||||
Buy Asset Order ... | 10848530 | 1563 days ago | IN | 0.26468651 ETH | 0.04326078 |
Latest 21 internal transactions
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
11042193 | 1533 days ago | 7.62330163 ETH | ||||
11004871 | 1539 days ago | 3.82434804 ETH | ||||
10996099 | 1540 days ago | 0.00056266 ETH | ||||
10996099 | 1540 days ago | 0.00056266 ETH | ||||
10996099 | 1540 days ago | 8.63508932 ETH | ||||
10983562 | 1542 days ago | 5.50885445 ETH | ||||
10983546 | 1542 days ago | 2.55517761 ETH | ||||
10983540 | 1542 days ago | 13.77041827 ETH | ||||
10918876 | 1552 days ago | 0.00000313 ETH | ||||
10918876 | 1552 days ago | 0.00000313 ETH | ||||
10918876 | 1552 days ago | 0.00313977 ETH | ||||
10918534 | 1552 days ago | 3.13387822 ETH | ||||
10870399 | 1559 days ago | 11.65813614 ETH | ||||
10848589 | 1563 days ago | 3.39808842 ETH | ||||
10848530 | 1563 days ago | 0.26468651 ETH | ||||
10848518 | 1563 days ago | 0.64053315 ETH | ||||
10848029 | 1563 days ago | 1.61356593 ETH | ||||
10847609 | 1563 days ago | 0.00403754 ETH | ||||
10847609 | 1563 days ago | 0.00403754 ETH | ||||
10847609 | 1563 days ago | 1.47284432 ETH | ||||
10835018 | 1565 days ago | 0.29498304 ETH |
Loading...
Loading
Contract Name:
CrowdsaleERC20
Compiler Version
v0.4.24+commit.e67f0147
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-09-07 */ pragma solidity ^0.4.24; // submitted by @dev-xu // https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts/math/SafeMath.sol // @title SafeMath: overflow/underflow checks // @notice Math operations with safety checks that throw on error library SafeMath { // @notice Multiplies two numbers, throws on overflow. function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; assert(c / a == b); return c; } // @notice Integer division of two numbers, truncating the quotient. function div(uint256 a, uint256 b) internal pure returns (uint256) { // assert(b > 0); // Solidity automatically throws when dividing by 0 // uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return a / b; } // @notice Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend). function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } // @notice Adds two numbers, throws on overflow. function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } // @notice Returns fractional amount function getFractionalAmount(uint256 _amount, uint256 _percentage) internal pure returns (uint256) { return div(mul(_amount, _percentage), 100); } } /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ interface ERC20 { function decimals() external view returns (uint8); function totalSupply() external view returns (uint256); function balanceOf(address _who) external view returns (uint256); function allowance(address _owner, address _spender) external view returns (uint256); function transfer(address _to, uint256 _value) external returns (bool); function approve(address _spender, uint256 _value) external returns (bool); function transferFrom(address _from, address _to, uint256 _value) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } interface DividendInterface { function issueDividends(uint _amount) external payable returns (bool); // @dev Total number of tokens in existence function totalSupply() external view returns (uint256); function getERC20() external view returns (address); } // @notice Trade via the Kyber Proxy Contract interface KyberInterface { function getExpectedRate(address src, address dest, uint srcQty) external view returns (uint expectedRate, uint slippageRate); function trade(address src, uint srcAmount, address dest, address destAddress, uint maxDestAmount,uint minConversionRate, address walletId) external payable returns(uint); } interface MinterInterface { function cloneToken(string _uri, address _erc20Address) external returns (address asset); function mintAssetTokens(address _assetAddress, address _receiver, uint256 _amount) external returns (bool); function changeTokenController(address _assetAddress, address _newController) external returns (bool); } interface CrowdsaleReserveInterface { function issueETH(address _receiver, uint256 _amount) external returns (bool); function receiveETH(address _payer) external payable returns (bool); function refundETHAsset(address _asset, uint256 _amount) external returns (bool); function issueERC20(address _receiver, uint256 _amount, address _tokenAddress) external returns (bool); function requestERC20(address _payer, uint256 _amount, address _tokenAddress) external returns (bool); function approveERC20(address _receiver, uint256 _amount, address _tokenAddress) external returns (bool); function refundERC20Asset(address _asset, uint256 _amount, address _tokenAddress) external returns (bool); } interface Events { function transaction(string _message, address _from, address _to, uint _amount, address _token) external; } interface DB { function addressStorage(bytes32 _key) external view returns (address); function uintStorage(bytes32 _key) external view returns (uint); function setUint(bytes32 _key, uint _value) external; function deleteUint(bytes32 _key) external; function setBool(bytes32 _key, bool _value) external; function boolStorage(bytes32 _key) external view returns (bool); } // @title An asset crowdsale contract which accepts funding from ERC20 tokens. // @notice Begins a crowdfunding period for a digital asset, minting asset dividend tokens to investors when particular ERC20 token is received // @author Kyle Dewhurst, MyBit Foundation // @notice creates a dividend token to represent the newly created asset. contract CrowdsaleERC20 { using SafeMath for uint256; DB private database; Events private events; MinterInterface private minter; CrowdsaleReserveInterface private reserve; KyberInterface private kyber; // @notice Constructor: initializes database instance // @param: The address for the platform database constructor(address _database, address _events, address _kyber) public{ database = DB(_database); events = Events(_events); minter = MinterInterface(database.addressStorage(keccak256(abi.encodePacked("contract", "Minter")))); reserve = CrowdsaleReserveInterface(database.addressStorage(keccak256(abi.encodePacked("contract", "CrowdsaleReserve")))); kyber = KyberInterface(_kyber); } // @notice Investors can send ERC20 tokens here to fund an asset, receiving an equivalent number of asset-tokens. // @dev investor must approve this contract to transfer tokens // @param (address) _assetAddress = The address of the asset tokens, investor wishes to purchase // @param (uint) _amount = The amount to spend purchasing this asset function buyAssetOrderERC20(address _assetAddress, uint _amount, address _paymentToken) external payable returns (bool) { require(database.addressStorage(keccak256(abi.encodePacked("asset.manager", _assetAddress))) != address(0), "Invalid asset"); require(now <= database.uintStorage(keccak256(abi.encodePacked("crowdsale.deadline", _assetAddress))), "Past deadline"); require(!database.boolStorage(keccak256(abi.encodePacked("crowdsale.finalized", _assetAddress))), "Crowdsale finalized"); if(_paymentToken == address(0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE)){ require(msg.value == _amount, 'Msg.value does not match amount'); } else { require(msg.value == 0, 'Msg.value should equal zero'); } ERC20 fundingToken = ERC20(DividendInterface(_assetAddress).getERC20()); uint fundingRemaining = database.uintStorage(keccak256(abi.encodePacked("crowdsale.remaining", _assetAddress))); uint collected; //This will be the value received by the contract after any conversions uint amount; //The number of tokens that will be minted //Check if the payment token is the same as the funding token. If not, convert, else just collect the funds if(_paymentToken == address(fundingToken)){ collected = collectPayment(msg.sender, _amount, fundingRemaining, fundingToken); } else { collected = convertTokens(msg.sender, _amount, fundingToken, ERC20(_paymentToken), fundingRemaining); } require(collected > 0); if(collected < fundingRemaining){ amount = collected.mul(100).div(uint(100).add(database.uintStorage(keccak256(abi.encodePacked("platform.fee"))))); database.setUint(keccak256(abi.encodePacked("crowdsale.remaining", _assetAddress)), fundingRemaining.sub(collected)); require(minter.mintAssetTokens(_assetAddress, msg.sender, amount), "Investor minting failed"); require(fundingToken.transfer(address(reserve), collected)); } else { amount = fundingRemaining.mul(100).div(uint(100).add(database.uintStorage(keccak256(abi.encodePacked("platform.fee"))))); database.setBool(keccak256(abi.encodePacked("crowdsale.finalized", _assetAddress)), true); database.deleteUint(keccak256(abi.encodePacked("crowdsale.remaining", _assetAddress))); require(minter.mintAssetTokens(_assetAddress, msg.sender, amount), "Investor minting failed"); // Send remaining asset tokens to investor require(fundingToken.transfer(address(reserve), fundingRemaining)); if(collected > fundingRemaining){ require(fundingToken.transfer(msg.sender, collected.sub(fundingRemaining))); // return extra funds } } events.transaction('Asset purchased', address(this), msg.sender, amount, _assetAddress); return true; } // @notice This is called once funding has succeeded. Sends Ether to a distribution contract where operator/assetManager can withdraw // @dev The contract manager needs to know the address PlatformDistribution contract function payoutERC20(address _assetAddress) external whenNotPaused returns (bool) { require(database.boolStorage(keccak256(abi.encodePacked("crowdsale.finalized", _assetAddress))), "Crowdsale not finalized"); require(!database.boolStorage(keccak256(abi.encodePacked("crowdsale.paid", _assetAddress))), "Crowdsale has paid out"); //Set paid to true database.setBool(keccak256(abi.encodePacked("crowdsale.paid", _assetAddress)), true); //Setup token address fundingToken = DividendInterface(_assetAddress).getERC20(); //Mint tokens for the asset manager and platform address platformAssetsWallet = database.addressStorage(keccak256(abi.encodePacked("platform.wallet.assets"))); require(platformAssetsWallet != address(0), "Platform assets wallet not set"); require(minter.mintAssetTokens(_assetAddress, database.addressStorage(keccak256(abi.encodePacked("contract", "AssetManagerFunds"))), database.uintStorage(keccak256(abi.encodePacked("asset.managerTokens", _assetAddress)))), "Manager minting failed"); require(minter.mintAssetTokens(_assetAddress, platformAssetsWallet, database.uintStorage(keccak256(abi.encodePacked("asset.platformTokens", _assetAddress)))), "Platform minting failed"); //Get the addresses for the receiver and platform address receiver = database.addressStorage(keccak256(abi.encodePacked("asset.manager", _assetAddress))); address platformFundsWallet = database.addressStorage(keccak256(abi.encodePacked("platform.wallet.funds"))); require(receiver != address(0) && platformFundsWallet != address(0), "Platform funds walllet or receiver address not set"); //Calculate amounts for platform and receiver uint amount = database.uintStorage(keccak256(abi.encodePacked("crowdsale.goal", _assetAddress))); uint platformFee = amount.getFractionalAmount(database.uintStorage(keccak256(abi.encodePacked("platform.fee")))); //Transfer funds to receiver and platform require(reserve.issueERC20(platformFundsWallet, platformFee, fundingToken), 'Platform funds not paid'); require(reserve.issueERC20(receiver, amount, fundingToken), 'Receiver funds not paid'); //Delete crowdsale start time database.deleteUint(keccak256(abi.encodePacked("crowdsale.start", _assetAddress))); //Increase asset count for manager address manager = database.addressStorage(keccak256(abi.encodePacked("asset.manager", _assetAddress))); database.setUint(keccak256(abi.encodePacked("manager.assets", manager)), database.uintStorage(keccak256(abi.encodePacked("manager.assets", manager))).add(1)); //Emit event events.transaction('Asset payout', _assetAddress, receiver, amount, fundingToken); return true; } function cancel(address _assetAddress) external whenNotPaused validAsset(_assetAddress) beforeDeadline(_assetAddress) notFinalized(_assetAddress) returns (bool){ require(msg.sender == database.addressStorage(keccak256(abi.encodePacked("asset.manager", _assetAddress)))); database.setUint(keccak256(abi.encodePacked("crowdsale.deadline", _assetAddress)), 1); refund(_assetAddress); } // @notice Contributors can retrieve their funds here if crowdsale has paased deadline // @param (address) _assetAddress = The address of the asset which didn't reach it's crowdfunding goals function refund(address _assetAddress) public whenNotPaused validAsset(_assetAddress) afterDeadline(_assetAddress) notFinalized(_assetAddress) returns (bool) { require(database.uintStorage(keccak256(abi.encodePacked("crowdsale.deadline", _assetAddress))) != 0); database.deleteUint(keccak256(abi.encodePacked("crowdsale.deadline", _assetAddress))); DividendInterface assetToken = DividendInterface(_assetAddress); address tokenAddress = assetToken.getERC20(); uint refundValue = assetToken.totalSupply().mul(uint(100).add(database.uintStorage(keccak256(abi.encodePacked("platform.fee"))))).div(100); //total supply plus platform fees reserve.refundERC20Asset(_assetAddress, refundValue, tokenAddress); return true; } //------------------------------------------------------------------------------------------------------------------ // Internal Functions //------------------------------------------------------------------------------------------------------------------ function collectPayment(address user, uint amount, uint max, ERC20 token) private returns (uint){ if(amount > max){ token.transferFrom(user, address(this), max); return max; } else { token.transferFrom(user, address(this), amount); return amount; } } /* function fundBurn(address _investor, uint _amount, bytes4 _sig, ERC20 _burnToken) private returns (uint) { require(_burnToken.transferFrom(_investor, address(this), _amount), "Transfer failed"); // transfer investors tokens into contract uint balanceBefore = _burnToken.balanceOf(this); require(burner.burn(address(this), database.uintStorage(keccak256(abi.encodePacked(_sig, address(this)))), address(_burnToken))); uint change = _burnToken.balanceOf(this) - balanceBefore; return change; } */ function convertTokens(address _investor, uint _amount, /*bytes4 _sig,*/ ERC20 _fundingToken, ERC20 _paymentToken, uint _maxTokens) private returns (uint) { //( , uint minRate) = kyber.getExpectedRate(address(_paymentToken), address(_fundingToken), 0); uint paymentBalanceBefore; uint fundingBalanceBefore; uint change; uint investment; if(address(_paymentToken) == address(0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE)){ paymentBalanceBefore = address(this).balance; fundingBalanceBefore = _fundingToken.balanceOf(this); //Convert remaining funds into the funding token kyber.trade.value(_amount)(address(_paymentToken), _amount, address(_fundingToken), address(this), _maxTokens, 0, 0); change = _amount.sub(paymentBalanceBefore.sub(address(this).balance)); investment = _fundingToken.balanceOf(this).sub(fundingBalanceBefore); if(change > 0){ _investor.transfer(change); } } else { //Collect funds collectPayment(_investor, _amount, _amount, _paymentToken); // Mitigate ERC20 Approve front-running attack, by initially setting // allowance to 0 require(_paymentToken.approve(address(kyber), 0)); // Approve tokens so network can take them during the swap _paymentToken.approve(address(kyber), _amount); paymentBalanceBefore = _paymentToken.balanceOf(this); fundingBalanceBefore = _fundingToken.balanceOf(this); //Convert remaining funds into the funding token kyber.trade(address(_paymentToken), _amount, address(_fundingToken), address(this), _maxTokens, 0, 0); // Return any remaining source tokens to user change = _amount.sub(paymentBalanceBefore.sub(_paymentToken.balanceOf(this))); investment = _fundingToken.balanceOf(this).sub(fundingBalanceBefore); if(change > 0){ _paymentToken.transfer(_investor, change); } } emit Convert(address(_paymentToken), change, investment); return investment; } // @notice platform owners can recover tokens here function recoverTokens(address _erc20Token) onlyOwner external { ERC20 thisToken = ERC20(_erc20Token); uint contractBalance = thisToken.balanceOf(address(this)); thisToken.transfer(msg.sender, contractBalance); } // @notice platform owners can destroy contract here function destroy() onlyOwner external { events.transaction('CrowdsaleERC20 destroyed', address(this), msg.sender, address(this).balance, address(0)); //emit LogDestruction(address(this).balance, msg.sender); selfdestruct(msg.sender); } // @notice fallback function. We need to receive Ether from Kyber Network function () external payable { emit EtherReceived(msg.sender, msg.value); } //------------------------------------------------------------------------------------------------------------------ // Modifiers //------------------------------------------------------------------------------------------------------------------ // @notice Sender must be a registered owner modifier onlyOwner { require(database.boolStorage(keccak256(abi.encodePacked("owner", msg.sender))), "Not owner"); _; } // @notice function won't run if owners have paused this contract modifier whenNotPaused { require(!database.boolStorage(keccak256(abi.encodePacked("paused", address(this))))); _; } // @notice reverts if the asset does not have a token address set in the database modifier validAsset(address _assetAddress) { require(database.addressStorage(keccak256(abi.encodePacked("asset.manager", _assetAddress))) != address(0), "Invalid asset"); _; } // @notice reverts if the funding deadline has not passed modifier beforeDeadline(address _assetAddress) { require(now < database.uintStorage(keccak256(abi.encodePacked("crowdsale.deadline", _assetAddress))), "Before deadline"); _; } // @notice reverts if the funding deadline has already past or crowsale has not started modifier betweenDeadlines(address _assetAddress) { require(now <= database.uintStorage(keccak256(abi.encodePacked("crowdsale.deadline", _assetAddress))), "Past deadline"); require(now >= database.uintStorage(keccak256(abi.encodePacked("crowdsale.start", _assetAddress))), "Before start time"); _; } // @notice reverts if the funding deadline has already past modifier afterDeadline(address _assetAddress) { require(now > database.uintStorage(keccak256(abi.encodePacked("crowdsale.deadline", _assetAddress))), "Before deadline"); _; } // @notice returns true if crowdsale is finshed modifier finalized(address _assetAddress) { require(database.boolStorage(keccak256(abi.encodePacked("crowdsale.finalized", _assetAddress))), "Crowdsale not finalized"); _; } // @notice returns true if crowdsale is not finshed modifier notFinalized(address _assetAddress) { require(!database.boolStorage(keccak256(abi.encodePacked("crowdsale.finalized", _assetAddress))), "Crowdsale finalized"); _; } // @notice returns true if crowdsale has not paid out modifier notPaid(address _assetAddress) { require(!database.boolStorage(keccak256(abi.encodePacked("crowdsale.paid", _assetAddress))), "Crowdsale has paid out"); _; } event Convert(address token, uint change, uint investment); event EtherReceived(address sender, uint amount); }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_assetAddress","type":"address"}],"name":"payoutERC20","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_erc20Token","type":"address"}],"name":"recoverTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_assetAddress","type":"address"}],"name":"cancel","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"destroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_assetAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_paymentToken","type":"address"}],"name":"buyAssetOrderERC20","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_assetAddress","type":"address"}],"name":"refund","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_database","type":"address"},{"name":"_events","type":"address"},{"name":"_kyber","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"token","type":"address"},{"indexed":false,"name":"change","type":"uint256"},{"indexed":false,"name":"investment","type":"uint256"}],"name":"Convert","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"EtherReceived","type":"event"}]
Contract Creation Code
60806040523480156200001157600080fd5b5060405160608062004e4b83398101604081815282516020808501519483015160008054600160a060020a03808616600160a060020a0319928316179283905560018054828b169316929092179091557f636f6e7472616374000000000000000000000000000000000000000000000000848801527f4d696e746572000000000000000000000000000000000000000000000000000060288801528551600e818903018152602e90970195869052865194979692959116936304f49a3a938291908401908083835b60208310620000fa5780518252601f199092019160209182019101620000d9565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff88167c01000000000000000000000000000000000000000000000000000000000283526004830152925160248083019650939450929083900301905081600087803b1580156200017557600080fd5b505af11580156200018a573d6000803e3d6000fd5b505050506040513d6020811015620001a157600080fd5b505160028054600160a060020a031916600160a060020a03928316179055600054604080517f636f6e74726163740000000000000000000000000000000000000000000000006020808301919091527f43726f776473616c655265736572766500000000000000000000000000000000602883015282518083036018018152603890920192839052815193909416936304f49a3a9391929182918401908083835b60208310620002635780518252601f19909201916020918201910162000242565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff88167c01000000000000000000000000000000000000000000000000000000000283526004830152925160248083019650939450929083900301905081600087803b158015620002de57600080fd5b505af1158015620002f3573d6000803e3d6000fd5b505050506040513d60208110156200030a57600080fd5b505160038054600160a060020a03928316600160a060020a031991821617909155600480549390921692169190911790555050614afe806200034d6000396000f30060806040526004361061005e5763ffffffff60e060020a6000350416630329cf4a811461009a57806316114acd146100cf5780634c33fe94146100f257806383197ef014610113578063a09d38c714610128578063fa89401a14610146575b6040805133815234602082015281517f1e57e3bb474320be3d2c77138f75b7c3941292d647f5f9634e33a8e94e0e069b929181900390910190a1005b3480156100a657600080fd5b506100bb600160a060020a0360043516610167565b604080519115158252519081900360200190f35b3480156100db57600080fd5b506100f0600160a060020a0360043516611a61565b005b3480156100fe57600080fd5b506100bb600160a060020a0360043516611ceb565b34801561011f57600080fd5b506100f061247b565b6100bb600160a060020a0360043581169060243590604435166126b5565b34801561015257600080fd5b506100bb600160a060020a0360043516613788565b60008054604080517f7061757365640000000000000000000000000000000000000000000000000000602080830191909152606060020a300260268301528251601a818403018152603a9092019283905281518594859485948594859485948594600160a060020a0390911693633b7bfda093909282918401908083835b602083106102045780518252601f1990920191602091820191016101e5565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561026557600080fd5b505af1158015610279573d6000803e3d6000fd5b505050506040513d602081101561028f57600080fd5b50511561029b57600080fd5b60005460408051600080516020614a53833981519152602080830191909152600160a060020a038d8116606060020a026033840152835180840360270181526047909301938490528251941693633b7bfda093918291908401908083835b602083106103185780518252601f1990920191602091820191016102f9565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561037957600080fd5b505af115801561038d573d6000803e3d6000fd5b505050506040513d60208110156103a357600080fd5b505115156103fb576040805160e560020a62461bcd02815260206004820152601760248201527f43726f776473616c65206e6f742066696e616c697a6564000000000000000000604482015290519081900360640190fd5b600054604080517f63726f776473616c652e70616964000000000000000000000000000000000000602080830191909152600160a060020a038d8116606060020a02602e840152835180840360220181526042909301938490528251941693633b7bfda093918291908401908083835b6020831061048a5780518252601f19909201916020918201910161046b565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156104eb57600080fd5b505af11580156104ff573d6000803e3d6000fd5b505050506040513d602081101561051557600080fd5b50511561056c576040805160e560020a62461bcd02815260206004820152601660248201527f43726f776473616c65206861732070616964206f757400000000000000000000604482015290519081900360640190fd5b600054604080517f63726f776473616c652e70616964000000000000000000000000000000000000602080830191909152600160a060020a038d8116606060020a02602e84015283518084036022018152604290930193849052825194169363abfdcced93918291908401908083835b602083106105fb5780518252601f1990920191602091820191016105dc565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a028252600482015260016024820152915160448084019550600094509092839003019050818387803b15801561066757600080fd5b505af115801561067b573d6000803e3d6000fd5b5050505088600160a060020a0316634ece90a86040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156106bd57600080fd5b505af11580156106d1573d6000803e3d6000fd5b505050506040513d60208110156106e757600080fd5b5051600054604080517f706c6174666f726d2e77616c6c65742e61737365747300000000000000000000602082810191909152825180830360160181526036909201928390528151949b50600160a060020a03909316936304f49a3a939192918291908401908083835b602083106107705780518252601f199092019160209182019101610751565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156107d157600080fd5b505af11580156107e5573d6000803e3d6000fd5b505050506040513d60208110156107fb57600080fd5b50519550600160a060020a038616151561085f576040805160e560020a62461bcd02815260206004820152601e60248201527f506c6174666f726d206173736574732077616c6c6574206e6f74207365740000604482015290519081900360640190fd5b600260009054906101000a9004600160a060020a0316600160a060020a031663d5895a3c8a6000809054906101000a9004600160a060020a0316600160a060020a03166304f49a3a60405160200180807f636f6e7472616374000000000000000000000000000000000000000000000000815250600801807f41737365744d616e6167657246756e647300000000000000000000000000000081525060110190506040516020818303038152906040526040518082805190602001908083835b6020831061093e5780518252601f19909201916020918201910161091f565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561099f57600080fd5b505af11580156109b3573d6000803e3d6000fd5b505050506040513d60208110156109c957600080fd5b81019080805190602001909291905050506000809054906101000a9004600160a060020a0316600160a060020a031663a855d4ce8e60405160200180807f61737365742e6d616e61676572546f6b656e730000000000000000000000000081525060130182600160a060020a0316600160a060020a0316606060020a0281526014019150506040516020818303038152906040526040518082805190602001908083835b60208310610a8c5780518252601f199092019160209182019101610a6d565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015610aed57600080fd5b505af1158015610b01573d6000803e3d6000fd5b505050506040513d6020811015610b1757600080fd5b50516040805160e060020a63ffffffff8716028152600160a060020a0394851660048201529290931660248301526044820152905160648083019260209291908290030181600087803b158015610b6d57600080fd5b505af1158015610b81573d6000803e3d6000fd5b505050506040513d6020811015610b9757600080fd5b50511515610bef576040805160e560020a62461bcd02815260206004820152601660248201527f4d616e61676572206d696e74696e67206661696c656400000000000000000000604482015290519081900360640190fd5b600260009054906101000a9004600160a060020a0316600160a060020a031663d5895a3c8a886000809054906101000a9004600160a060020a0316600160a060020a031663a855d4ce8e60405160200180807f61737365742e706c6174666f726d546f6b656e7300000000000000000000000081525060140182600160a060020a0316600160a060020a0316606060020a0281526014019150506040516020818303038152906040526040518082805190602001908083835b60208310610cc75780518252601f199092019160209182019101610ca8565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015610d2857600080fd5b505af1158015610d3c573d6000803e3d6000fd5b505050506040513d6020811015610d5257600080fd5b50516040805160e060020a63ffffffff8716028152600160a060020a0394851660048201529290931660248301526044820152905160648083019260209291908290030181600087803b158015610da857600080fd5b505af1158015610dbc573d6000803e3d6000fd5b505050506040513d6020811015610dd257600080fd5b50511515610e2a576040805160e560020a62461bcd02815260206004820152601760248201527f506c6174666f726d206d696e74696e67206661696c6564000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614a73833981519152602080830191909152600160a060020a038d8116606060020a02602d8401528351808403602101815260419093019384905282519416936304f49a3a93918291908401908083835b60208310610ea75780518252601f199092019160209182019101610e88565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015610f0857600080fd5b505af1158015610f1c573d6000803e3d6000fd5b505050506040513d6020811015610f3257600080fd5b5051600054604080517f706c6174666f726d2e77616c6c65742e66756e64730000000000000000000000602082810191909152825180830360150181526035909201928390528151949950600160a060020a03909316936304f49a3a939192918291908401908083835b60208310610fbb5780518252601f199092019160209182019101610f9c565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561101c57600080fd5b505af1158015611030573d6000803e3d6000fd5b505050506040513d602081101561104657600080fd5b50519350600160a060020a0385161580159061106a5750600160a060020a03841615155b15156110e6576040805160e560020a62461bcd02815260206004820152603260248201527f506c6174666f726d2066756e64732077616c6c6c6574206f722072656365697660448201527f65722061646472657373206e6f74207365740000000000000000000000000000606482015290519081900360840190fd5b600054604080517f63726f776473616c652e676f616c000000000000000000000000000000000000602080830191909152600160a060020a038d8116606060020a02602e84015283518084036022018152604290930193849052825194169363a855d4ce93918291908401908083835b602083106111755780518252601f199092019160209182019101611156565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156111d657600080fd5b505af11580156111ea573d6000803e3d6000fd5b505050506040513d602081101561120057600080fd5b505160005460408051600080516020614a938339815191526020828101919091528251808303600c018152602c90920192839052815194975061131394600160a060020a039094169363a855d4ce93918291908401908083835b602083106112795780518252601f19909201916020918201910161125a565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156112da57600080fd5b505af11580156112ee573d6000803e3d6000fd5b505050506040513d602081101561130457600080fd5b5051849063ffffffff61410f16565b600354604080517f080a771c000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152602482018590528b81166044830152915193955091169163080a771c916064808201926020929091908290030181600087803b15801561138c57600080fd5b505af11580156113a0573d6000803e3d6000fd5b505050506040513d60208110156113b657600080fd5b5051151561140e576040805160e560020a62461bcd02815260206004820152601760248201527f506c6174666f726d2066756e6473206e6f742070616964000000000000000000604482015290519081900360640190fd5b600354604080517f080a771c000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152602482018790528a811660448301529151919092169163080a771c9160648083019260209291908290030181600087803b15801561148557600080fd5b505af1158015611499573d6000803e3d6000fd5b505050506040513d60208110156114af57600080fd5b50511515611507576040805160e560020a62461bcd02815260206004820152601760248201527f52656365697665722066756e6473206e6f742070616964000000000000000000604482015290519081900360640190fd5b600054604080517f63726f776473616c652e73746172740000000000000000000000000000000000602080830191909152600160a060020a038d8116606060020a02602f84015283518084036023018152604390930193849052825194169363e2b202bf93918291908401908083835b602083106115965780518252601f199092019160209182019101611577565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a0282526004820152915160248084019550600094509092839003019050818387803b1580156115fb57600080fd5b505af115801561160f573d6000803e3d6000fd5b505050506000809054906101000a9004600160a060020a0316600160a060020a03166304f49a3a8a6040516020018080600080516020614a73833981519152815250600d0182600160a060020a0316600160a060020a0316606060020a0281526014019150506040516020818303038152906040526040518082805190602001908083835b602083106116b35780518252601f199092019160209182019101611694565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561171457600080fd5b505af1158015611728573d6000803e3d6000fd5b505050506040513d602081101561173e57600080fd5b5051600054604080517f6d616e616765722e617373657473000000000000000000000000000000000000602080830191909152600160a060020a03808616606060020a02602e8401528351808403602201815260429093019384905282519596509093169363e2a4853a939192918291908401908083835b602083106117d55780518252601f1990920191602091820191016117b6565b51815160209384036101000a6000190180199092169116179052604080519290940182900382206000547f6d616e616765722e61737365747300000000000000000000000000000000000084840152600160a060020a038b8116606060020a02602e86015286518086036022018152604290950196879052845192985061192897506001969116945063a855d4ce9392909182918401908083835b6020831061188f5780518252601f199092019160209182019101611870565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156118f057600080fd5b505af1158015611904573d6000803e3d6000fd5b505050506040513d602081101561191a57600080fd5b50519063ffffffff61412c16565b6040518363ffffffff1660e060020a02815260040180836000191660001916815260200182815260200192505050600060405180830381600087803b15801561197057600080fd5b505af1158015611984573d6000803e3d6000fd5b5050600154604080517f42b425aa000000000000000000000000000000000000000000000000000000008152600160a060020a038e811660248301528a81166044830152606482018990528c8116608483015260a06004830152600c60a48301527f4173736574207061796f7574000000000000000000000000000000000000000060c483015291519190921693506342b425aa925060e480830192600092919082900301818387803b158015611a3a57600080fd5b505af1158015611a4e573d6000803e3d6000fd5b5060019c9b505050505050505050505050565b60008054604080517f6f776e6572000000000000000000000000000000000000000000000000000000602080830191909152606060020a330260258301528251601981840301815260399092019283905281518594600160a060020a031693633b7bfda09392909182918401908083835b60208310611af15780518252601f199092019160209182019101611ad2565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015611b5257600080fd5b505af1158015611b66573d6000803e3d6000fd5b505050506040513d6020811015611b7c57600080fd5b50511515611bd4576040805160e560020a62461bcd02815260206004820152600960248201527f4e6f74206f776e65720000000000000000000000000000000000000000000000604482015290519081900360640190fd5b6040805160e060020a6370a082310281523060048201529051849350600160a060020a038416916370a082319160248083019260209291908290030181600087803b158015611c2257600080fd5b505af1158015611c36573d6000803e3d6000fd5b505050506040513d6020811015611c4c57600080fd5b5051604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018390529051919250600160a060020a0384169163a9059cbb916044808201926020929091908290030181600087803b158015611cba57600080fd5b505af1158015611cce573d6000803e3d6000fd5b505050506040513d6020811015611ce457600080fd5b5050505050565b60008054604080517f7061757365640000000000000000000000000000000000000000000000000000602080830191909152606060020a300260268301528251601a818403018152603a909201928390528151600160a060020a0390941693633b7bfda093918291908401908083835b60208310611d7a5780518252601f199092019160209182019101611d5b565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015611ddb57600080fd5b505af1158015611def573d6000803e3d6000fd5b505050506040513d6020811015611e0557600080fd5b505115611e1157600080fd5b6000805460408051600080516020614a73833981519152602080830191909152600160a060020a03878116606060020a02602d84015283518084036021018152604190930193849052825188969591909116936304f49a3a9392909182918401908083835b60208310611e955780518252601f199092019160209182019101611e76565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015611ef657600080fd5b505af1158015611f0a573d6000803e3d6000fd5b505050506040513d6020811015611f2057600080fd5b5051600160a060020a03161415611f81576040805160e560020a62461bcd02815260206004820152600d60248201527f496e76616c696420617373657400000000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a03878116606060020a0260328401528351808403602601815260469093019384905282518895919091169363a855d4ce9392909182918401908083835b602083106120035780518252601f199092019160209182019101611fe4565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561206457600080fd5b505af1158015612078573d6000803e3d6000fd5b505050506040513d602081101561208e57600080fd5b505142106120e6576040805160e560020a62461bcd02815260206004820152600f60248201527f4265666f726520646561646c696e650000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614a53833981519152602080830191909152600160a060020a03888116606060020a02603384015283518084036027018152604790930193849052825189959190911693633b7bfda09392909182918401908083835b602083106121685780518252601f199092019160209182019101612149565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156121c957600080fd5b505af11580156121dd573d6000803e3d6000fd5b505050506040513d60208110156121f357600080fd5b50511561224a576040805160e560020a62461bcd02815260206004820152601360248201527f43726f776473616c652066696e616c697a656400000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614a73833981519152602080830191909152600160a060020a03898116606060020a02602d8401528351808403602101815260419093019384905282519416936304f49a3a93918291908401908083835b602083106122c75780518252601f1990920191602091820191016122a8565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561232857600080fd5b505af115801561233c573d6000803e3d6000fd5b505050506040513d602081101561235257600080fd5b5051600160a060020a0316331461236857600080fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a03898116606060020a02603284015283518084036026018152604690930193849052825194169363e2a4853a93918291908401908083835b602083106123e55780518252601f1990920191602091820191016123c6565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a028252600482015260016024820152915160448084019550600094509092839003019050818387803b15801561245157600080fd5b505af1158015612465573d6000803e3d6000fd5b5050505061247285613788565b50505050919050565b600054604080517f6f776e6572000000000000000000000000000000000000000000000000000000602080830191909152606060020a33026025830152825160198184030181526039909201928390528151600160a060020a0390941693633b7bfda093918291908401908083835b602083106125095780518252601f1990920191602091820191016124ea565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561256a57600080fd5b505af115801561257e573d6000803e3d6000fd5b505050506040513d602081101561259457600080fd5b505115156125ec576040805160e560020a62461bcd02815260206004820152600960248201527f4e6f74206f776e65720000000000000000000000000000000000000000000000604482015290519081900360640190fd5b600154604080517f42b425aa000000000000000000000000000000000000000000000000000000008152306024820181905233604483015231606482015260006084820181905260a06004830152601860a48301527f43726f776473616c6545524332302064657374726f796564000000000000000060c48301529151600160a060020a03909316926342b425aa9260e48084019391929182900301818387803b15801561269957600080fd5b505af11580156126ad573d6000803e3d6000fd5b503392505050ff5b600080600080600080600160a060020a03166000809054906101000a9004600160a060020a0316600160a060020a03166304f49a3a8a6040516020018080600080516020614a73833981519152815250600d0182600160a060020a0316600160a060020a0316606060020a0281526014019150506040516020818303038152906040526040518082805190602001908083835b602083106127675780518252601f199092019160209182019101612748565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156127c857600080fd5b505af11580156127dc573d6000803e3d6000fd5b505050506040513d60208110156127f257600080fd5b5051600160a060020a03161415612853576040805160e560020a62461bcd02815260206004820152600d60248201527f496e76616c696420617373657400000000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a038c8116606060020a02603284015283518084036026018152604690930193849052825194169363a855d4ce93918291908401908083835b602083106128d05780518252601f1990920191602091820191016128b1565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561293157600080fd5b505af1158015612945573d6000803e3d6000fd5b505050506040513d602081101561295b57600080fd5b50514211156129b4576040805160e560020a62461bcd02815260206004820152600d60248201527f5061737420646561646c696e6500000000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614a53833981519152602080830191909152600160a060020a038c8116606060020a026033840152835180840360270181526047909301938490528251941693633b7bfda093918291908401908083835b60208310612a315780518252601f199092019160209182019101612a12565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015612a9257600080fd5b505af1158015612aa6573d6000803e3d6000fd5b505050506040513d6020811015612abc57600080fd5b505115612b13576040805160e560020a62461bcd02815260206004820152601360248201527f43726f776473616c652066696e616c697a656400000000000000000000000000604482015290519081900360640190fd5b600160a060020a03861673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415612b9457348714612b8f576040805160e560020a62461bcd02815260206004820152601f60248201527f4d73672e76616c756520646f6573206e6f74206d6174636820616d6f756e7400604482015290519081900360640190fd5b612bea565b3415612bea576040805160e560020a62461bcd02815260206004820152601b60248201527f4d73672e76616c75652073686f756c6420657175616c207a65726f0000000000604482015290519081900360640190fd5b87600160a060020a0316634ece90a86040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612c2857600080fd5b505af1158015612c3c573d6000803e3d6000fd5b505050506040513d6020811015612c5257600080fd5b5051600054604080517f63726f776473616c652e72656d61696e696e6700000000000000000000000000602080830191909152600160a060020a038d8116606060020a0260338401528351808403602701815260479093019384905282519599509093169363a855d4ce939192918291908401908083835b60208310612ce95780518252601f199092019160209182019101612cca565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015612d4a57600080fd5b505af1158015612d5e573d6000803e3d6000fd5b505050506040513d6020811015612d7457600080fd5b50519250600160a060020a038681169085161415612d9f57612d9833888587614146565b9150612daf565b612dac33888689876142a6565b91505b60008211612dbc57600080fd5b828210156131cb5760005460408051600080516020614a938339815191526020808301919091528251808303600c018152602c909201928390528151612ef494612ed794600160a060020a039091169363a855d4ce93909282918401908083835b60208310612e3c5780518252601f199092019160209182019101612e1d565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015612e9d57600080fd5b505af1158015612eb1573d6000803e3d6000fd5b505050506040513d6020811015612ec757600080fd5b505160649063ffffffff61412c16565b612ee884606463ffffffff614a0016565b9063ffffffff614a2b16565b600054604080517f63726f776473616c652e72656d61696e696e6700000000000000000000000000602080830191909152600160a060020a038d8116606060020a0260338401528351808403602701815260479093019384905282519596509093169363e2a4853a939192918291908401908083835b60208310612f895780518252601f199092019160209182019101612f6a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020612fc98587614a4090919063ffffffff16565b6040518363ffffffff1660e060020a02815260040180836000191660001916815260200182815260200192505050600060405180830381600087803b15801561301157600080fd5b505af1158015613025573d6000803e3d6000fd5b5050600254604080517fd5895a3c000000000000000000000000000000000000000000000000000000008152600160a060020a038d8116600483015233602483015260448201879052915191909216935063d5895a3c925060648083019260209291908290030181600087803b15801561309e57600080fd5b505af11580156130b2573d6000803e3d6000fd5b505050506040513d60208110156130c857600080fd5b50511515613120576040805160e560020a62461bcd02815260206004820152601760248201527f496e766573746f72206d696e74696e67206661696c6564000000000000000000604482015290519081900360640190fd5b600354604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0392831660048201526024810185905290519186169163a9059cbb916044808201926020929091908290030181600087803b15801561318f57600080fd5b505af11580156131a3573d6000803e3d6000fd5b505050506040513d60208110156131b957600080fd5b505115156131c657600080fd5b6136b4565b60005460408051600080516020614a938339815191526020808301919091528251808303600c018152602c9092019283905281516132539461324294600160a060020a039091169363a855d4ce939092829184019080838360208310612e3c5780518252601f199092019160209182019101612e1d565b612ee885606463ffffffff614a0016565b60005460408051600080516020614a53833981519152602080830191909152600160a060020a038d8116606060020a0260338401528351808403602701815260479093019384905282519596509093169363abfdcced939192918291908401908083835b602083106132d65780518252601f1990920191602091820191016132b7565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a028252600482015260016024820152915160448084019550600094509092839003019050818387803b15801561334257600080fd5b505af1158015613356573d6000803e3d6000fd5b5050600054604080517f63726f776473616c652e72656d61696e696e6700000000000000000000000000602080830191909152600160a060020a038e8116606060020a0260338401528351808403602701815260479093019384905282519416955063e2b202bf9450909282918401908083835b602083106133e95780518252601f1990920191602091820191016133ca565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a0282526004820152915160248084019550600094509092839003019050818387803b15801561344e57600080fd5b505af1158015613462573d6000803e3d6000fd5b5050600254604080517fd5895a3c000000000000000000000000000000000000000000000000000000008152600160a060020a038d8116600483015233602483015260448201879052915191909216935063d5895a3c925060648083019260209291908290030181600087803b1580156134db57600080fd5b505af11580156134ef573d6000803e3d6000fd5b505050506040513d602081101561350557600080fd5b5051151561355d576040805160e560020a62461bcd02815260206004820152601760248201527f496e766573746f72206d696e74696e67206661696c6564000000000000000000604482015290519081900360640190fd5b600354604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0392831660048201526024810186905290519186169163a9059cbb916044808201926020929091908290030181600087803b1580156135cc57600080fd5b505af11580156135e0573d6000803e3d6000fd5b505050506040513d60208110156135f657600080fd5b5051151561360357600080fd5b828211156136b457600160a060020a03841663a9059cbb3361362b858763ffffffff614a4016565b6040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b15801561367d57600080fd5b505af1158015613691573d6000803e3d6000fd5b505050506040513d60208110156136a757600080fd5b505115156136b457600080fd5b600154604080517f42b425aa00000000000000000000000000000000000000000000000000000000815230602482015233604482015260648101849052600160a060020a038b8116608483015260a06004830152600f60a48301527f417373657420707572636861736564000000000000000000000000000000000060c4830152915191909216916342b425aa9160e480830192600092919082900301818387803b15801561376257600080fd5b505af1158015613776573d6000803e3d6000fd5b5060019b9a5050505050505050505050565b60008054604080517f7061757365640000000000000000000000000000000000000000000000000000602080830191909152606060020a300260268301528251601a818403018152603a909201928390528151859485948594600160a060020a0390921693633b7bfda09382918401908083835b6020831061381b5780518252601f1990920191602091820191016137fc565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561387c57600080fd5b505af1158015613890573d6000803e3d6000fd5b505050506040513d60208110156138a657600080fd5b5051156138b257600080fd5b6000805460408051600080516020614a73833981519152602080830191909152600160a060020a038a8116606060020a02602d8401528351808403602101815260419093019384905282518b969591909116936304f49a3a9392909182918401908083835b602083106139365780518252601f199092019160209182019101613917565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561399757600080fd5b505af11580156139ab573d6000803e3d6000fd5b505050506040513d60208110156139c157600080fd5b5051600160a060020a03161415613a22576040805160e560020a62461bcd02815260206004820152600d60248201527f496e76616c696420617373657400000000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a038a8116606060020a0260328401528351808403602601815260469093019384905282518b95919091169363a855d4ce9392909182918401908083835b60208310613aa45780518252601f199092019160209182019101613a85565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015613b0557600080fd5b505af1158015613b19573d6000803e3d6000fd5b505050506040513d6020811015613b2f57600080fd5b50514211613b87576040805160e560020a62461bcd02815260206004820152600f60248201527f4265666f726520646561646c696e650000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614a53833981519152602080830191909152600160a060020a038b8116606060020a0260338401528351808403602701815260479093019384905282518c959190911693633b7bfda09392909182918401908083835b60208310613c095780518252601f199092019160209182019101613bea565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015613c6a57600080fd5b505af1158015613c7e573d6000803e3d6000fd5b505050506040513d6020811015613c9457600080fd5b505115613ceb576040805160e560020a62461bcd02815260206004820152601360248201527f43726f776473616c652066696e616c697a656400000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a038c8116606060020a02603284015283518084036026018152604690930193849052825194169363a855d4ce93918291908401908083835b60208310613d685780518252601f199092019160209182019101613d49565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015613dc957600080fd5b505af1158015613ddd573d6000803e3d6000fd5b505050506040513d6020811015613df357600080fd5b50511515613e0057600080fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a038c8116606060020a02603284015283518084036026018152604690930193849052825194169363e2b202bf93918291908401908083835b60208310613e7d5780518252601f199092019160209182019101613e5e565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a0282526004820152915160248084019550600094509092839003019050818387803b158015613ee257600080fd5b505af1158015613ef6573d6000803e3d6000fd5b5050505087955085600160a060020a0316634ece90a86040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015613f3b57600080fd5b505af1158015613f4f573d6000803e3d6000fd5b505050506040513d6020811015613f6557600080fd5b505160005460408051600080516020614a938339815191526020828101919091528251808303600c018152602c90920192839052815194995061405c94606494612ee894613fe694600160a060020a039092169363a855d4ce93829184019080838360208310612e3c5780518252601f199092019160209182019101612e1d565b89600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561402457600080fd5b505af1158015614038573d6000803e3d6000fd5b505050506040513d602081101561404e57600080fd5b50519063ffffffff614a0016565b600354604080517fdeca3ea9000000000000000000000000000000000000000000000000000000008152600160a060020a038c81166004830152602482018590528981166044830152915193975091169163deca3ea9916064808201926020929091908290030181600087803b1580156140d557600080fd5b505af11580156140e9573d6000803e3d6000fd5b505050506040513d60208110156140ff57600080fd5b5060019998505050505050505050565b600061412561411e8484614a00565b6064614a2b565b9392505050565b60008282018381101561413b57fe5b8091505b5092915050565b6000828411156141f757604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152306024830152604482018690529151918416916323b872dd916064808201926020929091908290030181600087803b1580156141c257600080fd5b505af11580156141d6573d6000803e3d6000fd5b505050506040513d60208110156141ec57600080fd5b5083915061429e9050565b604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152306024830152604482018790529151918416916323b872dd916064808201926020929091908290030181600087803b15801561426957600080fd5b505af115801561427d573d6000803e3d6000fd5b505050506040513d602081101561429357600080fd5b5084915061429e9050565b949350505050565b600080808080600160a060020a03871673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415614516576040805160e060020a6370a082310281523060048201819052915191319550600160a060020a038a16916370a08231916024808201926020929091908290030181600087803b15801561432357600080fd5b505af1158015614337573d6000803e3d6000fd5b505050506040513d602081101561434d57600080fd5b505160048054604080517fcb3c28c7000000000000000000000000000000000000000000000000000000008152600160a060020a038c811694820194909452602481018e90528c84166044820152306064820152608481018b9052600060a4820181905260c4820152905193965091169163cb3c28c7918c9160e480830192602092919082900301818588803b1580156143e657600080fd5b505af11580156143fa573d6000803e3d6000fd5b50505050506040513d602081101561441157600080fd5b50614435905061442885303163ffffffff614a4016565b8a9063ffffffff614a4016565b91506144ce8389600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561449657600080fd5b505af11580156144aa573d6000803e3d6000fd5b505050506040513d60208110156144c057600080fd5b50519063ffffffff614a4016565b9050600082111561451157604051600160a060020a038b169083156108fc029084906000818181858888f1935050505015801561450f573d6000803e3d6000fd5b505b6149aa565b6145228a8a8b8a614146565b5060048054604080517f095ea7b3000000000000000000000000000000000000000000000000000000008152600160a060020a03928316938101939093526000602484018190529051918a169263095ea7b39260448083019360209383900390910190829087803b15801561459657600080fd5b505af11580156145aa573d6000803e3d6000fd5b505050506040513d60208110156145c057600080fd5b505115156145cd57600080fd5b60048054604080517f095ea7b3000000000000000000000000000000000000000000000000000000008152600160a060020a0392831693810193909352602483018c9052519089169163095ea7b39160448083019260209291908290030181600087803b15801561463d57600080fd5b505af1158015614651573d6000803e3d6000fd5b505050506040513d602081101561466757600080fd5b50506040805160e060020a6370a082310281523060048201529051600160a060020a038916916370a082319160248083019260209291908290030181600087803b1580156146b457600080fd5b505af11580156146c8573d6000803e3d6000fd5b505050506040513d60208110156146de57600080fd5b50516040805160e060020a6370a082310281523060048201529051919550600160a060020a038a16916370a08231916024808201926020929091908290030181600087803b15801561472f57600080fd5b505af1158015614743573d6000803e3d6000fd5b505050506040513d602081101561475957600080fd5b505160048054604080517fcb3c28c7000000000000000000000000000000000000000000000000000000008152600160a060020a038c811694820194909452602481018e90528c84166044820152306064820152608481018b9052600060a4820181905260c482018190529151949750929091169263cb3c28c79260e4808201936020939283900390910190829087803b1580156147f657600080fd5b505af115801561480a573d6000803e3d6000fd5b505050506040513d602081101561482057600080fd5b50506040805160e060020a6370a0823102815230600482015290516148ae9161442891600160a060020a038b16916370a082319160248083019260209291908290030181600087803b15801561487557600080fd5b505af1158015614889573d6000803e3d6000fd5b505050506040513d602081101561489f57600080fd5b5051869063ffffffff614a4016565b915061490f8389600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561449657600080fd5b905060008211156149aa5786600160a060020a031663a9059cbb8b846040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b15801561497d57600080fd5b505af1158015614991573d6000803e3d6000fd5b505050506040513d60208110156149a757600080fd5b50505b60408051600160a060020a03891681526020810184905280820183905290517f9018eade4aec2a696b34b0f5459a1a7dc058389bab8e2380d880817a9e22b2139181900360600190a19998505050505050505050565b600080831515614a13576000915061413f565b50828202828482811515614a2357fe5b041461413b57fe5b60008183811515614a3857fe5b049392505050565b600082821115614a4c57fe5b50900390560063726f776473616c652e66696e616c697a65640000000000000000000000000061737365742e6d616e6167657200000000000000000000000000000000000000706c6174666f726d2e666565000000000000000000000000000000000000000063726f776473616c652e646561646c696e650000000000000000000000000000a165627a7a72305820d8cdc5eb38239b0c679bcab1bd857a2ff99422082d9f2a6281fe2bccdca5c0f9002900000000000000000000000055d3c0b3ad6943ed3c58750f790dfc107b23aa70000000000000000000000000457cb5402fe83554b569cb74b28b4a44509b612f000000000000000000000000818e6fecd516ecc3849daf6845e3ec868087b755
Deployed Bytecode
0x60806040526004361061005e5763ffffffff60e060020a6000350416630329cf4a811461009a57806316114acd146100cf5780634c33fe94146100f257806383197ef014610113578063a09d38c714610128578063fa89401a14610146575b6040805133815234602082015281517f1e57e3bb474320be3d2c77138f75b7c3941292d647f5f9634e33a8e94e0e069b929181900390910190a1005b3480156100a657600080fd5b506100bb600160a060020a0360043516610167565b604080519115158252519081900360200190f35b3480156100db57600080fd5b506100f0600160a060020a0360043516611a61565b005b3480156100fe57600080fd5b506100bb600160a060020a0360043516611ceb565b34801561011f57600080fd5b506100f061247b565b6100bb600160a060020a0360043581169060243590604435166126b5565b34801561015257600080fd5b506100bb600160a060020a0360043516613788565b60008054604080517f7061757365640000000000000000000000000000000000000000000000000000602080830191909152606060020a300260268301528251601a818403018152603a9092019283905281518594859485948594859485948594600160a060020a0390911693633b7bfda093909282918401908083835b602083106102045780518252601f1990920191602091820191016101e5565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561026557600080fd5b505af1158015610279573d6000803e3d6000fd5b505050506040513d602081101561028f57600080fd5b50511561029b57600080fd5b60005460408051600080516020614a53833981519152602080830191909152600160a060020a038d8116606060020a026033840152835180840360270181526047909301938490528251941693633b7bfda093918291908401908083835b602083106103185780518252601f1990920191602091820191016102f9565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561037957600080fd5b505af115801561038d573d6000803e3d6000fd5b505050506040513d60208110156103a357600080fd5b505115156103fb576040805160e560020a62461bcd02815260206004820152601760248201527f43726f776473616c65206e6f742066696e616c697a6564000000000000000000604482015290519081900360640190fd5b600054604080517f63726f776473616c652e70616964000000000000000000000000000000000000602080830191909152600160a060020a038d8116606060020a02602e840152835180840360220181526042909301938490528251941693633b7bfda093918291908401908083835b6020831061048a5780518252601f19909201916020918201910161046b565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156104eb57600080fd5b505af11580156104ff573d6000803e3d6000fd5b505050506040513d602081101561051557600080fd5b50511561056c576040805160e560020a62461bcd02815260206004820152601660248201527f43726f776473616c65206861732070616964206f757400000000000000000000604482015290519081900360640190fd5b600054604080517f63726f776473616c652e70616964000000000000000000000000000000000000602080830191909152600160a060020a038d8116606060020a02602e84015283518084036022018152604290930193849052825194169363abfdcced93918291908401908083835b602083106105fb5780518252601f1990920191602091820191016105dc565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a028252600482015260016024820152915160448084019550600094509092839003019050818387803b15801561066757600080fd5b505af115801561067b573d6000803e3d6000fd5b5050505088600160a060020a0316634ece90a86040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156106bd57600080fd5b505af11580156106d1573d6000803e3d6000fd5b505050506040513d60208110156106e757600080fd5b5051600054604080517f706c6174666f726d2e77616c6c65742e61737365747300000000000000000000602082810191909152825180830360160181526036909201928390528151949b50600160a060020a03909316936304f49a3a939192918291908401908083835b602083106107705780518252601f199092019160209182019101610751565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156107d157600080fd5b505af11580156107e5573d6000803e3d6000fd5b505050506040513d60208110156107fb57600080fd5b50519550600160a060020a038616151561085f576040805160e560020a62461bcd02815260206004820152601e60248201527f506c6174666f726d206173736574732077616c6c6574206e6f74207365740000604482015290519081900360640190fd5b600260009054906101000a9004600160a060020a0316600160a060020a031663d5895a3c8a6000809054906101000a9004600160a060020a0316600160a060020a03166304f49a3a60405160200180807f636f6e7472616374000000000000000000000000000000000000000000000000815250600801807f41737365744d616e6167657246756e647300000000000000000000000000000081525060110190506040516020818303038152906040526040518082805190602001908083835b6020831061093e5780518252601f19909201916020918201910161091f565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561099f57600080fd5b505af11580156109b3573d6000803e3d6000fd5b505050506040513d60208110156109c957600080fd5b81019080805190602001909291905050506000809054906101000a9004600160a060020a0316600160a060020a031663a855d4ce8e60405160200180807f61737365742e6d616e61676572546f6b656e730000000000000000000000000081525060130182600160a060020a0316600160a060020a0316606060020a0281526014019150506040516020818303038152906040526040518082805190602001908083835b60208310610a8c5780518252601f199092019160209182019101610a6d565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015610aed57600080fd5b505af1158015610b01573d6000803e3d6000fd5b505050506040513d6020811015610b1757600080fd5b50516040805160e060020a63ffffffff8716028152600160a060020a0394851660048201529290931660248301526044820152905160648083019260209291908290030181600087803b158015610b6d57600080fd5b505af1158015610b81573d6000803e3d6000fd5b505050506040513d6020811015610b9757600080fd5b50511515610bef576040805160e560020a62461bcd02815260206004820152601660248201527f4d616e61676572206d696e74696e67206661696c656400000000000000000000604482015290519081900360640190fd5b600260009054906101000a9004600160a060020a0316600160a060020a031663d5895a3c8a886000809054906101000a9004600160a060020a0316600160a060020a031663a855d4ce8e60405160200180807f61737365742e706c6174666f726d546f6b656e7300000000000000000000000081525060140182600160a060020a0316600160a060020a0316606060020a0281526014019150506040516020818303038152906040526040518082805190602001908083835b60208310610cc75780518252601f199092019160209182019101610ca8565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015610d2857600080fd5b505af1158015610d3c573d6000803e3d6000fd5b505050506040513d6020811015610d5257600080fd5b50516040805160e060020a63ffffffff8716028152600160a060020a0394851660048201529290931660248301526044820152905160648083019260209291908290030181600087803b158015610da857600080fd5b505af1158015610dbc573d6000803e3d6000fd5b505050506040513d6020811015610dd257600080fd5b50511515610e2a576040805160e560020a62461bcd02815260206004820152601760248201527f506c6174666f726d206d696e74696e67206661696c6564000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614a73833981519152602080830191909152600160a060020a038d8116606060020a02602d8401528351808403602101815260419093019384905282519416936304f49a3a93918291908401908083835b60208310610ea75780518252601f199092019160209182019101610e88565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015610f0857600080fd5b505af1158015610f1c573d6000803e3d6000fd5b505050506040513d6020811015610f3257600080fd5b5051600054604080517f706c6174666f726d2e77616c6c65742e66756e64730000000000000000000000602082810191909152825180830360150181526035909201928390528151949950600160a060020a03909316936304f49a3a939192918291908401908083835b60208310610fbb5780518252601f199092019160209182019101610f9c565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561101c57600080fd5b505af1158015611030573d6000803e3d6000fd5b505050506040513d602081101561104657600080fd5b50519350600160a060020a0385161580159061106a5750600160a060020a03841615155b15156110e6576040805160e560020a62461bcd02815260206004820152603260248201527f506c6174666f726d2066756e64732077616c6c6c6574206f722072656365697660448201527f65722061646472657373206e6f74207365740000000000000000000000000000606482015290519081900360840190fd5b600054604080517f63726f776473616c652e676f616c000000000000000000000000000000000000602080830191909152600160a060020a038d8116606060020a02602e84015283518084036022018152604290930193849052825194169363a855d4ce93918291908401908083835b602083106111755780518252601f199092019160209182019101611156565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156111d657600080fd5b505af11580156111ea573d6000803e3d6000fd5b505050506040513d602081101561120057600080fd5b505160005460408051600080516020614a938339815191526020828101919091528251808303600c018152602c90920192839052815194975061131394600160a060020a039094169363a855d4ce93918291908401908083835b602083106112795780518252601f19909201916020918201910161125a565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156112da57600080fd5b505af11580156112ee573d6000803e3d6000fd5b505050506040513d602081101561130457600080fd5b5051849063ffffffff61410f16565b600354604080517f080a771c000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152602482018590528b81166044830152915193955091169163080a771c916064808201926020929091908290030181600087803b15801561138c57600080fd5b505af11580156113a0573d6000803e3d6000fd5b505050506040513d60208110156113b657600080fd5b5051151561140e576040805160e560020a62461bcd02815260206004820152601760248201527f506c6174666f726d2066756e6473206e6f742070616964000000000000000000604482015290519081900360640190fd5b600354604080517f080a771c000000000000000000000000000000000000000000000000000000008152600160a060020a038881166004830152602482018790528a811660448301529151919092169163080a771c9160648083019260209291908290030181600087803b15801561148557600080fd5b505af1158015611499573d6000803e3d6000fd5b505050506040513d60208110156114af57600080fd5b50511515611507576040805160e560020a62461bcd02815260206004820152601760248201527f52656365697665722066756e6473206e6f742070616964000000000000000000604482015290519081900360640190fd5b600054604080517f63726f776473616c652e73746172740000000000000000000000000000000000602080830191909152600160a060020a038d8116606060020a02602f84015283518084036023018152604390930193849052825194169363e2b202bf93918291908401908083835b602083106115965780518252601f199092019160209182019101611577565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a0282526004820152915160248084019550600094509092839003019050818387803b1580156115fb57600080fd5b505af115801561160f573d6000803e3d6000fd5b505050506000809054906101000a9004600160a060020a0316600160a060020a03166304f49a3a8a6040516020018080600080516020614a73833981519152815250600d0182600160a060020a0316600160a060020a0316606060020a0281526014019150506040516020818303038152906040526040518082805190602001908083835b602083106116b35780518252601f199092019160209182019101611694565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561171457600080fd5b505af1158015611728573d6000803e3d6000fd5b505050506040513d602081101561173e57600080fd5b5051600054604080517f6d616e616765722e617373657473000000000000000000000000000000000000602080830191909152600160a060020a03808616606060020a02602e8401528351808403602201815260429093019384905282519596509093169363e2a4853a939192918291908401908083835b602083106117d55780518252601f1990920191602091820191016117b6565b51815160209384036101000a6000190180199092169116179052604080519290940182900382206000547f6d616e616765722e61737365747300000000000000000000000000000000000084840152600160a060020a038b8116606060020a02602e86015286518086036022018152604290950196879052845192985061192897506001969116945063a855d4ce9392909182918401908083835b6020831061188f5780518252601f199092019160209182019101611870565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156118f057600080fd5b505af1158015611904573d6000803e3d6000fd5b505050506040513d602081101561191a57600080fd5b50519063ffffffff61412c16565b6040518363ffffffff1660e060020a02815260040180836000191660001916815260200182815260200192505050600060405180830381600087803b15801561197057600080fd5b505af1158015611984573d6000803e3d6000fd5b5050600154604080517f42b425aa000000000000000000000000000000000000000000000000000000008152600160a060020a038e811660248301528a81166044830152606482018990528c8116608483015260a06004830152600c60a48301527f4173736574207061796f7574000000000000000000000000000000000000000060c483015291519190921693506342b425aa925060e480830192600092919082900301818387803b158015611a3a57600080fd5b505af1158015611a4e573d6000803e3d6000fd5b5060019c9b505050505050505050505050565b60008054604080517f6f776e6572000000000000000000000000000000000000000000000000000000602080830191909152606060020a330260258301528251601981840301815260399092019283905281518594600160a060020a031693633b7bfda09392909182918401908083835b60208310611af15780518252601f199092019160209182019101611ad2565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015611b5257600080fd5b505af1158015611b66573d6000803e3d6000fd5b505050506040513d6020811015611b7c57600080fd5b50511515611bd4576040805160e560020a62461bcd02815260206004820152600960248201527f4e6f74206f776e65720000000000000000000000000000000000000000000000604482015290519081900360640190fd5b6040805160e060020a6370a082310281523060048201529051849350600160a060020a038416916370a082319160248083019260209291908290030181600087803b158015611c2257600080fd5b505af1158015611c36573d6000803e3d6000fd5b505050506040513d6020811015611c4c57600080fd5b5051604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018390529051919250600160a060020a0384169163a9059cbb916044808201926020929091908290030181600087803b158015611cba57600080fd5b505af1158015611cce573d6000803e3d6000fd5b505050506040513d6020811015611ce457600080fd5b5050505050565b60008054604080517f7061757365640000000000000000000000000000000000000000000000000000602080830191909152606060020a300260268301528251601a818403018152603a909201928390528151600160a060020a0390941693633b7bfda093918291908401908083835b60208310611d7a5780518252601f199092019160209182019101611d5b565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015611ddb57600080fd5b505af1158015611def573d6000803e3d6000fd5b505050506040513d6020811015611e0557600080fd5b505115611e1157600080fd5b6000805460408051600080516020614a73833981519152602080830191909152600160a060020a03878116606060020a02602d84015283518084036021018152604190930193849052825188969591909116936304f49a3a9392909182918401908083835b60208310611e955780518252601f199092019160209182019101611e76565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015611ef657600080fd5b505af1158015611f0a573d6000803e3d6000fd5b505050506040513d6020811015611f2057600080fd5b5051600160a060020a03161415611f81576040805160e560020a62461bcd02815260206004820152600d60248201527f496e76616c696420617373657400000000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a03878116606060020a0260328401528351808403602601815260469093019384905282518895919091169363a855d4ce9392909182918401908083835b602083106120035780518252601f199092019160209182019101611fe4565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561206457600080fd5b505af1158015612078573d6000803e3d6000fd5b505050506040513d602081101561208e57600080fd5b505142106120e6576040805160e560020a62461bcd02815260206004820152600f60248201527f4265666f726520646561646c696e650000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614a53833981519152602080830191909152600160a060020a03888116606060020a02603384015283518084036027018152604790930193849052825189959190911693633b7bfda09392909182918401908083835b602083106121685780518252601f199092019160209182019101612149565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156121c957600080fd5b505af11580156121dd573d6000803e3d6000fd5b505050506040513d60208110156121f357600080fd5b50511561224a576040805160e560020a62461bcd02815260206004820152601360248201527f43726f776473616c652066696e616c697a656400000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614a73833981519152602080830191909152600160a060020a03898116606060020a02602d8401528351808403602101815260419093019384905282519416936304f49a3a93918291908401908083835b602083106122c75780518252601f1990920191602091820191016122a8565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561232857600080fd5b505af115801561233c573d6000803e3d6000fd5b505050506040513d602081101561235257600080fd5b5051600160a060020a0316331461236857600080fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a03898116606060020a02603284015283518084036026018152604690930193849052825194169363e2a4853a93918291908401908083835b602083106123e55780518252601f1990920191602091820191016123c6565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a028252600482015260016024820152915160448084019550600094509092839003019050818387803b15801561245157600080fd5b505af1158015612465573d6000803e3d6000fd5b5050505061247285613788565b50505050919050565b600054604080517f6f776e6572000000000000000000000000000000000000000000000000000000602080830191909152606060020a33026025830152825160198184030181526039909201928390528151600160a060020a0390941693633b7bfda093918291908401908083835b602083106125095780518252601f1990920191602091820191016124ea565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561256a57600080fd5b505af115801561257e573d6000803e3d6000fd5b505050506040513d602081101561259457600080fd5b505115156125ec576040805160e560020a62461bcd02815260206004820152600960248201527f4e6f74206f776e65720000000000000000000000000000000000000000000000604482015290519081900360640190fd5b600154604080517f42b425aa000000000000000000000000000000000000000000000000000000008152306024820181905233604483015231606482015260006084820181905260a06004830152601860a48301527f43726f776473616c6545524332302064657374726f796564000000000000000060c48301529151600160a060020a03909316926342b425aa9260e48084019391929182900301818387803b15801561269957600080fd5b505af11580156126ad573d6000803e3d6000fd5b503392505050ff5b600080600080600080600160a060020a03166000809054906101000a9004600160a060020a0316600160a060020a03166304f49a3a8a6040516020018080600080516020614a73833981519152815250600d0182600160a060020a0316600160a060020a0316606060020a0281526014019150506040516020818303038152906040526040518082805190602001908083835b602083106127675780518252601f199092019160209182019101612748565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b1580156127c857600080fd5b505af11580156127dc573d6000803e3d6000fd5b505050506040513d60208110156127f257600080fd5b5051600160a060020a03161415612853576040805160e560020a62461bcd02815260206004820152600d60248201527f496e76616c696420617373657400000000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a038c8116606060020a02603284015283518084036026018152604690930193849052825194169363a855d4ce93918291908401908083835b602083106128d05780518252601f1990920191602091820191016128b1565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561293157600080fd5b505af1158015612945573d6000803e3d6000fd5b505050506040513d602081101561295b57600080fd5b50514211156129b4576040805160e560020a62461bcd02815260206004820152600d60248201527f5061737420646561646c696e6500000000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614a53833981519152602080830191909152600160a060020a038c8116606060020a026033840152835180840360270181526047909301938490528251941693633b7bfda093918291908401908083835b60208310612a315780518252601f199092019160209182019101612a12565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015612a9257600080fd5b505af1158015612aa6573d6000803e3d6000fd5b505050506040513d6020811015612abc57600080fd5b505115612b13576040805160e560020a62461bcd02815260206004820152601360248201527f43726f776473616c652066696e616c697a656400000000000000000000000000604482015290519081900360640190fd5b600160a060020a03861673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415612b9457348714612b8f576040805160e560020a62461bcd02815260206004820152601f60248201527f4d73672e76616c756520646f6573206e6f74206d6174636820616d6f756e7400604482015290519081900360640190fd5b612bea565b3415612bea576040805160e560020a62461bcd02815260206004820152601b60248201527f4d73672e76616c75652073686f756c6420657175616c207a65726f0000000000604482015290519081900360640190fd5b87600160a060020a0316634ece90a86040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015612c2857600080fd5b505af1158015612c3c573d6000803e3d6000fd5b505050506040513d6020811015612c5257600080fd5b5051600054604080517f63726f776473616c652e72656d61696e696e6700000000000000000000000000602080830191909152600160a060020a038d8116606060020a0260338401528351808403602701815260479093019384905282519599509093169363a855d4ce939192918291908401908083835b60208310612ce95780518252601f199092019160209182019101612cca565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015612d4a57600080fd5b505af1158015612d5e573d6000803e3d6000fd5b505050506040513d6020811015612d7457600080fd5b50519250600160a060020a038681169085161415612d9f57612d9833888587614146565b9150612daf565b612dac33888689876142a6565b91505b60008211612dbc57600080fd5b828210156131cb5760005460408051600080516020614a938339815191526020808301919091528251808303600c018152602c909201928390528151612ef494612ed794600160a060020a039091169363a855d4ce93909282918401908083835b60208310612e3c5780518252601f199092019160209182019101612e1d565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015612e9d57600080fd5b505af1158015612eb1573d6000803e3d6000fd5b505050506040513d6020811015612ec757600080fd5b505160649063ffffffff61412c16565b612ee884606463ffffffff614a0016565b9063ffffffff614a2b16565b600054604080517f63726f776473616c652e72656d61696e696e6700000000000000000000000000602080830191909152600160a060020a038d8116606060020a0260338401528351808403602701815260479093019384905282519596509093169363e2a4853a939192918291908401908083835b60208310612f895780518252601f199092019160209182019101612f6a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020612fc98587614a4090919063ffffffff16565b6040518363ffffffff1660e060020a02815260040180836000191660001916815260200182815260200192505050600060405180830381600087803b15801561301157600080fd5b505af1158015613025573d6000803e3d6000fd5b5050600254604080517fd5895a3c000000000000000000000000000000000000000000000000000000008152600160a060020a038d8116600483015233602483015260448201879052915191909216935063d5895a3c925060648083019260209291908290030181600087803b15801561309e57600080fd5b505af11580156130b2573d6000803e3d6000fd5b505050506040513d60208110156130c857600080fd5b50511515613120576040805160e560020a62461bcd02815260206004820152601760248201527f496e766573746f72206d696e74696e67206661696c6564000000000000000000604482015290519081900360640190fd5b600354604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0392831660048201526024810185905290519186169163a9059cbb916044808201926020929091908290030181600087803b15801561318f57600080fd5b505af11580156131a3573d6000803e3d6000fd5b505050506040513d60208110156131b957600080fd5b505115156131c657600080fd5b6136b4565b60005460408051600080516020614a938339815191526020808301919091528251808303600c018152602c9092019283905281516132539461324294600160a060020a039091169363a855d4ce939092829184019080838360208310612e3c5780518252601f199092019160209182019101612e1d565b612ee885606463ffffffff614a0016565b60005460408051600080516020614a53833981519152602080830191909152600160a060020a038d8116606060020a0260338401528351808403602701815260479093019384905282519596509093169363abfdcced939192918291908401908083835b602083106132d65780518252601f1990920191602091820191016132b7565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a028252600482015260016024820152915160448084019550600094509092839003019050818387803b15801561334257600080fd5b505af1158015613356573d6000803e3d6000fd5b5050600054604080517f63726f776473616c652e72656d61696e696e6700000000000000000000000000602080830191909152600160a060020a038e8116606060020a0260338401528351808403602701815260479093019384905282519416955063e2b202bf9450909282918401908083835b602083106133e95780518252601f1990920191602091820191016133ca565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a0282526004820152915160248084019550600094509092839003019050818387803b15801561344e57600080fd5b505af1158015613462573d6000803e3d6000fd5b5050600254604080517fd5895a3c000000000000000000000000000000000000000000000000000000008152600160a060020a038d8116600483015233602483015260448201879052915191909216935063d5895a3c925060648083019260209291908290030181600087803b1580156134db57600080fd5b505af11580156134ef573d6000803e3d6000fd5b505050506040513d602081101561350557600080fd5b5051151561355d576040805160e560020a62461bcd02815260206004820152601760248201527f496e766573746f72206d696e74696e67206661696c6564000000000000000000604482015290519081900360640190fd5b600354604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0392831660048201526024810186905290519186169163a9059cbb916044808201926020929091908290030181600087803b1580156135cc57600080fd5b505af11580156135e0573d6000803e3d6000fd5b505050506040513d60208110156135f657600080fd5b5051151561360357600080fd5b828211156136b457600160a060020a03841663a9059cbb3361362b858763ffffffff614a4016565b6040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b15801561367d57600080fd5b505af1158015613691573d6000803e3d6000fd5b505050506040513d60208110156136a757600080fd5b505115156136b457600080fd5b600154604080517f42b425aa00000000000000000000000000000000000000000000000000000000815230602482015233604482015260648101849052600160a060020a038b8116608483015260a06004830152600f60a48301527f417373657420707572636861736564000000000000000000000000000000000060c4830152915191909216916342b425aa9160e480830192600092919082900301818387803b15801561376257600080fd5b505af1158015613776573d6000803e3d6000fd5b5060019b9a5050505050505050505050565b60008054604080517f7061757365640000000000000000000000000000000000000000000000000000602080830191909152606060020a300260268301528251601a818403018152603a909201928390528151859485948594600160a060020a0390921693633b7bfda09382918401908083835b6020831061381b5780518252601f1990920191602091820191016137fc565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561387c57600080fd5b505af1158015613890573d6000803e3d6000fd5b505050506040513d60208110156138a657600080fd5b5051156138b257600080fd5b6000805460408051600080516020614a73833981519152602080830191909152600160a060020a038a8116606060020a02602d8401528351808403602101815260419093019384905282518b969591909116936304f49a3a9392909182918401908083835b602083106139365780518252601f199092019160209182019101613917565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b15801561399757600080fd5b505af11580156139ab573d6000803e3d6000fd5b505050506040513d60208110156139c157600080fd5b5051600160a060020a03161415613a22576040805160e560020a62461bcd02815260206004820152600d60248201527f496e76616c696420617373657400000000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a038a8116606060020a0260328401528351808403602601815260469093019384905282518b95919091169363a855d4ce9392909182918401908083835b60208310613aa45780518252601f199092019160209182019101613a85565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015613b0557600080fd5b505af1158015613b19573d6000803e3d6000fd5b505050506040513d6020811015613b2f57600080fd5b50514211613b87576040805160e560020a62461bcd02815260206004820152600f60248201527f4265666f726520646561646c696e650000000000000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614a53833981519152602080830191909152600160a060020a038b8116606060020a0260338401528351808403602701815260479093019384905282518c959190911693633b7bfda09392909182918401908083835b60208310613c095780518252601f199092019160209182019101613bea565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015613c6a57600080fd5b505af1158015613c7e573d6000803e3d6000fd5b505050506040513d6020811015613c9457600080fd5b505115613ceb576040805160e560020a62461bcd02815260206004820152601360248201527f43726f776473616c652066696e616c697a656400000000000000000000000000604482015290519081900360640190fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a038c8116606060020a02603284015283518084036026018152604690930193849052825194169363a855d4ce93918291908401908083835b60208310613d685780518252601f199092019160209182019101613d49565b51815160209384036101000a60001901801990921691161790526040805192909401829003822063ffffffff881660e060020a0283526004830152925160248083019650939450929083900301905081600087803b158015613dc957600080fd5b505af1158015613ddd573d6000803e3d6000fd5b505050506040513d6020811015613df357600080fd5b50511515613e0057600080fd5b60005460408051600080516020614ab3833981519152602080830191909152600160a060020a038c8116606060020a02603284015283518084036026018152604690930193849052825194169363e2b202bf93918291908401908083835b60208310613e7d5780518252601f199092019160209182019101613e5e565b5181516020939093036101000a60001901801990911692169190911790526040805191909301819003812063ffffffff871660e060020a0282526004820152915160248084019550600094509092839003019050818387803b158015613ee257600080fd5b505af1158015613ef6573d6000803e3d6000fd5b5050505087955085600160a060020a0316634ece90a86040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015613f3b57600080fd5b505af1158015613f4f573d6000803e3d6000fd5b505050506040513d6020811015613f6557600080fd5b505160005460408051600080516020614a938339815191526020828101919091528251808303600c018152602c90920192839052815194995061405c94606494612ee894613fe694600160a060020a039092169363a855d4ce93829184019080838360208310612e3c5780518252601f199092019160209182019101612e1d565b89600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561402457600080fd5b505af1158015614038573d6000803e3d6000fd5b505050506040513d602081101561404e57600080fd5b50519063ffffffff614a0016565b600354604080517fdeca3ea9000000000000000000000000000000000000000000000000000000008152600160a060020a038c81166004830152602482018590528981166044830152915193975091169163deca3ea9916064808201926020929091908290030181600087803b1580156140d557600080fd5b505af11580156140e9573d6000803e3d6000fd5b505050506040513d60208110156140ff57600080fd5b5060019998505050505050505050565b600061412561411e8484614a00565b6064614a2b565b9392505050565b60008282018381101561413b57fe5b8091505b5092915050565b6000828411156141f757604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152306024830152604482018690529151918416916323b872dd916064808201926020929091908290030181600087803b1580156141c257600080fd5b505af11580156141d6573d6000803e3d6000fd5b505050506040513d60208110156141ec57600080fd5b5083915061429e9050565b604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152306024830152604482018790529151918416916323b872dd916064808201926020929091908290030181600087803b15801561426957600080fd5b505af115801561427d573d6000803e3d6000fd5b505050506040513d602081101561429357600080fd5b5084915061429e9050565b949350505050565b600080808080600160a060020a03871673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415614516576040805160e060020a6370a082310281523060048201819052915191319550600160a060020a038a16916370a08231916024808201926020929091908290030181600087803b15801561432357600080fd5b505af1158015614337573d6000803e3d6000fd5b505050506040513d602081101561434d57600080fd5b505160048054604080517fcb3c28c7000000000000000000000000000000000000000000000000000000008152600160a060020a038c811694820194909452602481018e90528c84166044820152306064820152608481018b9052600060a4820181905260c4820152905193965091169163cb3c28c7918c9160e480830192602092919082900301818588803b1580156143e657600080fd5b505af11580156143fa573d6000803e3d6000fd5b50505050506040513d602081101561441157600080fd5b50614435905061442885303163ffffffff614a4016565b8a9063ffffffff614a4016565b91506144ce8389600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561449657600080fd5b505af11580156144aa573d6000803e3d6000fd5b505050506040513d60208110156144c057600080fd5b50519063ffffffff614a4016565b9050600082111561451157604051600160a060020a038b169083156108fc029084906000818181858888f1935050505015801561450f573d6000803e3d6000fd5b505b6149aa565b6145228a8a8b8a614146565b5060048054604080517f095ea7b3000000000000000000000000000000000000000000000000000000008152600160a060020a03928316938101939093526000602484018190529051918a169263095ea7b39260448083019360209383900390910190829087803b15801561459657600080fd5b505af11580156145aa573d6000803e3d6000fd5b505050506040513d60208110156145c057600080fd5b505115156145cd57600080fd5b60048054604080517f095ea7b3000000000000000000000000000000000000000000000000000000008152600160a060020a0392831693810193909352602483018c9052519089169163095ea7b39160448083019260209291908290030181600087803b15801561463d57600080fd5b505af1158015614651573d6000803e3d6000fd5b505050506040513d602081101561466757600080fd5b50506040805160e060020a6370a082310281523060048201529051600160a060020a038916916370a082319160248083019260209291908290030181600087803b1580156146b457600080fd5b505af11580156146c8573d6000803e3d6000fd5b505050506040513d60208110156146de57600080fd5b50516040805160e060020a6370a082310281523060048201529051919550600160a060020a038a16916370a08231916024808201926020929091908290030181600087803b15801561472f57600080fd5b505af1158015614743573d6000803e3d6000fd5b505050506040513d602081101561475957600080fd5b505160048054604080517fcb3c28c7000000000000000000000000000000000000000000000000000000008152600160a060020a038c811694820194909452602481018e90528c84166044820152306064820152608481018b9052600060a4820181905260c482018190529151949750929091169263cb3c28c79260e4808201936020939283900390910190829087803b1580156147f657600080fd5b505af115801561480a573d6000803e3d6000fd5b505050506040513d602081101561482057600080fd5b50506040805160e060020a6370a0823102815230600482015290516148ae9161442891600160a060020a038b16916370a082319160248083019260209291908290030181600087803b15801561487557600080fd5b505af1158015614889573d6000803e3d6000fd5b505050506040513d602081101561489f57600080fd5b5051869063ffffffff614a4016565b915061490f8389600160a060020a03166370a08231306040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b15801561449657600080fd5b905060008211156149aa5786600160a060020a031663a9059cbb8b846040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b15801561497d57600080fd5b505af1158015614991573d6000803e3d6000fd5b505050506040513d60208110156149a757600080fd5b50505b60408051600160a060020a03891681526020810184905280820183905290517f9018eade4aec2a696b34b0f5459a1a7dc058389bab8e2380d880817a9e22b2139181900360600190a19998505050505050505050565b600080831515614a13576000915061413f565b50828202828482811515614a2357fe5b041461413b57fe5b60008183811515614a3857fe5b049392505050565b600082821115614a4c57fe5b50900390560063726f776473616c652e66696e616c697a65640000000000000000000000000061737365742e6d616e6167657200000000000000000000000000000000000000706c6174666f726d2e666565000000000000000000000000000000000000000063726f776473616c652e646561646c696e650000000000000000000000000000a165627a7a72305820d8cdc5eb38239b0c679bcab1bd857a2ff99422082d9f2a6281fe2bccdca5c0f90029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000055d3c0b3ad6943ed3c58750f790dfc107b23aa70000000000000000000000000457cb5402fe83554b569cb74b28b4a44509b612f000000000000000000000000818e6fecd516ecc3849daf6845e3ec868087b755
-----Decoded View---------------
Arg [0] : _database (address): 0x55D3C0b3AD6943ed3c58750f790dfc107b23aa70
Arg [1] : _events (address): 0x457CB5402FE83554b569Cb74b28B4A44509B612F
Arg [2] : _kyber (address): 0x818E6FECD516Ecc3849DAf6845e3EC868087B755
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 00000000000000000000000055d3c0b3ad6943ed3c58750f790dfc107b23aa70
Arg [1] : 000000000000000000000000457cb5402fe83554b569cb74b28b4a44509b612f
Arg [2] : 000000000000000000000000818e6fecd516ecc3849daf6845e3ec868087b755
Deployed Bytecode Sourcemap
4911:15063:0:-;;;;;;;;;-1:-1:-1;;;4911:15063:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17186:36;;;17200:10;17186:36;;17212:9;17186:36;;;;;;;;;;;;;;;;;4911:15063;9074:2751;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9074:2751:0;-1:-1:-1;;;;;9074:2751:0;;;;;;;;;;;;;;;;;;;;;;;16499:236;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;16499:236:0;-1:-1:-1;;;;;16499:236:0;;;;;;;11831:418;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11831:418:0;-1:-1:-1;;;;;11831:418:0;;;;;16797:259;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16797:259:0;;;;6032:2810;;-1:-1:-1;;;;;6032:2810:0;;;;;;;;;;;;;12453:772;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12453:772:0;-1:-1:-1;;;;;12453:772:0;;;;;9074:2751;9159:4;17829:8;;17860:41;;;;;;;;;;;;-1:-1:-1;;;17895:4:0;17860:41;;;;;;;22:32:-1;26:21;;;22:32;6:49;;17860:41:0;;;;;;;;17850:52;;9159:4;;;;;;;;;;;;;;-1:-1:-1;;;;;17829:8:0;;;;:20;;17860:41;;;;17850:52;;;;17860:41;17850:52;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;17850:52:0;;;;;;;;;;;;17829:74;;;-1:-1:-1;;;17829:74:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;17829:74:0;;;;;;;-1:-1:-1;17829:74:0;-1:-1:-1;17829:74:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;17829:74:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17829:74:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17829:74:0;17828:75;17820:84;;;;;;9180:8;;9211:54;;;-1:-1:-1;;;;;;;;;;;9211:54:0;;;;;;;;-1:-1:-1;;;;;9211:54:0;;;-1:-1:-1;;;9211:54:0;;;;;;;26:21:-1;;;22:32;;6:49;;9211:54:0;;;;;;;;9201:65;;9180:8;;;:20;;9211:54;;;9201:65;;;;;9211:54;9201:65;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;9201:65:0;;;;;;;;;;;;9180:87;;;-1:-1:-1;;;9180:87:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;9180:87:0;;;;;;;-1:-1:-1;9180:87:0;-1:-1:-1;9180:87:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;9180:87:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9180:87:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9180:87:0;9172:123;;;;;;;-1:-1:-1;;;;;9172:123:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9311:8;;9342:49;;;;;;;;;;;;-1:-1:-1;;;;;9342:49:0;;;-1:-1:-1;;;9342:49:0;;;;;;;26:21:-1;;;22:32;;6:49;;9342::0;;;;;;;;9332:60;;9311:8;;;:20;;9342:49;;;9332:60;;;;;9342:49;9332:60;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;9332:60:0;;;;;;;;;;;;9311:82;;;-1:-1:-1;;;9311:82:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;9311:82:0;;;;;;;-1:-1:-1;9311:82:0;-1:-1:-1;9311:82:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;9311:82:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9311:82:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9311:82:0;9310:83;9302:118;;;;;-1:-1:-1;;;;;9302:118:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9451:8;;9478:49;;;;;;;;;;;;-1:-1:-1;;;;;9478:49:0;;;-1:-1:-1;;;9478:49:0;;;;;;;26:21:-1;;;22:32;;6:49;;9478::0;;;;;;;;9468:60;;9451:8;;;:16;;9478:49;;;9468:60;;;;;9478:49;9468:60;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;;;;365:33;;9468:60:0;;;;;;;;;;;;9451:84;;;-1:-1:-1;;;9451:84:0;;;;;;;274:1:-1;9451:84:0;;;;;;;;;;;-1:-1:-1;;;;9451:84:0;;;;;;;-1:-1:-1;9451:84:0;-1:-1:-1;9451:84:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;9451:84:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9451:84:0;;;;9602:13;-1:-1:-1;;;;;9584:41:0;;:43;;;;;-1:-1:-1;;;9584:43:0;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9584:43:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9584:43:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9584:43:0;9719:8;;9753:42;;;;9584:43;9753:42;;;;;;;;;26:21:-1;;;9753:42:0;22:32:-1;6:49;;9753:42:0;;;;;;;;9743:53;;9584:43;;-1:-1:-1;;;;;;9719:8:0;;;;:23;;9753:42;;;;;9743:53;;;;;9753:42;9743:53;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;9743:53:0;;;;;;;;;;;;9719:78;;;-1:-1:-1;;;9719:78:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;9719:78:0;;;;;;;-1:-1:-1;9719:78:0;-1:-1:-1;9719:78:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;9719:78:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9719:78:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9719:78:0;;-1:-1:-1;;;;;;9812:34:0;;;;9804:77;;;;;-1:-1:-1;;;;;9804:77:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9896:6;;;;;;;;;-1:-1:-1;;;;;9896:6:0;-1:-1:-1;;;;;9896:22:0;;9919:13;9934:8;;;;;;;;;-1:-1:-1;;;;;9934:8:0;-1:-1:-1;;;;;9934:23:0;;9968:49;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;9968::0;;;9958:60;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;9958:60:0;;;;;;;;;;;;9934:85;;;-1:-1:-1;;;9934:85:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;9934:85:0;;;;;;;-1:-1:-1;9934:85:0;-1:-1:-1;9934:85:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;9934:85:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9934:85:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9934:85:0;;;;;;;;;;;;;;;;10021:8;;;;;;;;;-1:-1:-1;;;;;10021:8:0;-1:-1:-1;;;;;10021:20:0;;10092:13;10052:54;;;;;;;;;;;;;-1:-1:-1;;;;;10052:54:0;-1:-1:-1;;;;;10052:54:0;-1:-1:-1;;;10052:54:0;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;10052:54:0;;;10042:65;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;10042:65:0;;;;;;;;;;;;10021:87;;;-1:-1:-1;;;10021:87:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;10021:87:0;;;;;;;-1:-1:-1;10021:87:0;-1:-1:-1;10021:87:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;10021:87:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10021:87:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10021:87:0;9896:213;;;-1:-1:-1;;;9896:213:0;;;;;;-1:-1:-1;;;;;9896:213:0;;;;;;;;;;;;;;;;;;;;;;;;;;10021:87;;9896:213;;;;;;;-1:-1:-1;9896:213:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;9896:213:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9896:213:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9896:213:0;9888:248;;;;;;;-1:-1:-1;;;;;9888:248:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10151:6;;;;;;;;;-1:-1:-1;;;;;10151:6:0;-1:-1:-1;;;;;10151:22:0;;10174:13;10189:20;10211:8;;;;;;;;;-1:-1:-1;;;;;10211:8:0;-1:-1:-1;;;;;10211:20:0;;10283:13;10242:55;;;;;;;;;;;;;-1:-1:-1;;;;;10242:55:0;-1:-1:-1;;;;;10242:55:0;-1:-1:-1;;;10242:55:0;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;10242:55:0;;;10232:66;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;10232:66:0;;;;;;;;;;;;10211:88;;;-1:-1:-1;;;10211:88:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;10211:88:0;;;;;;;-1:-1:-1;10211:88:0;-1:-1:-1;10211:88:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;10211:88:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10211:88:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10211:88:0;10151:149;;;-1:-1:-1;;;10151:149:0;;;;;;-1:-1:-1;;;;;10151:149:0;;;;;;;;;;;;;;;;;;;;;;;;;;10211:88;;10151:149;;;;;;;-1:-1:-1;10151:149:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;10151:149:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10151:149:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10151:149:0;10143:185;;;;;;;-1:-1:-1;;;;;10143:185:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10409:8;;10443:48;;;-1:-1:-1;;;;;;;;;;;10443:48:0;;;;;;;;-1:-1:-1;;;;;10443:48:0;;;-1:-1:-1;;;10443:48:0;;;;;;;26:21:-1;;;22:32;;6:49;;10443:48:0;;;;;;;;10433:59;;10409:8;;;:23;;10443:48;;;10433:59;;;;;10443:48;10433:59;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;10433:59:0;;;;;;;;;;;;10409:84;;;-1:-1:-1;;;10409:84:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;10409:84:0;;;;;;;-1:-1:-1;10409:84:0;-1:-1:-1;10409:84:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;10409:84:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10409:84:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10409:84:0;10530:8;;10564:41;;;;10409:84;10564:41;;;;;;;;;26:21:-1;;;10564:41:0;22:32:-1;6:49;;10564:41:0;;;;;;;;10554:52;;10409:84;;-1:-1:-1;;;;;;10530:8:0;;;;:23;;10564:41;;;;;10554:52;;;;;10564:41;10554:52;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;10554:52:0;;;;;;;;;;;;10530:77;;;-1:-1:-1;;;10530:77:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;10530:77:0;;;;;;;-1:-1:-1;10530:77:0;-1:-1:-1;10530:77:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;10530:77:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10530:77:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10530:77:0;;-1:-1:-1;;;;;;10622:22:0;;;;;;:59;;-1:-1:-1;;;;;;10648:33:0;;;;10622:59;10614:122;;;;;;;-1:-1:-1;;;;;10614:122:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10808:8;;10839:49;;;;;;;;;;;;-1:-1:-1;;;;;10839:49:0;;;-1:-1:-1;;;10839:49:0;;;;;;;26:21:-1;;;22:32;;6:49;;10839::0;;;;;;;;10829:60;;10808:8;;;:20;;10839:49;;;10829:60;;;;;10839:49;10829:60;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;10829:60:0;;;;;;;;;;;;10808:82;;;-1:-1:-1;;;10808:82:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;10808:82:0;;;;;;;-1:-1:-1;10808:82:0;-1:-1:-1;10808:82:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;10808:82:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10808:82:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10808:82:0;10943:8;;10974:32;;;-1:-1:-1;;;;;;;;;;;10808:82:0;10974:32;;;;;;;;;26:21:-1;;;10974:32:0;22::-1;6:49;;10974:32:0;;;;;;;;10964:43;;10808:82;;-1:-1:-1;10916:93:0;;-1:-1:-1;;;;;10943:8:0;;;;:20;;10974:32;;;10964:43;;;;;10974:32;10964:43;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;10964:43:0;;;;;;;;;;;;10943:65;;;-1:-1:-1;;;10943:65:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;10943:65:0;;;;;;;-1:-1:-1;10943:65:0;-1:-1:-1;10943:65:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;10943:65:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10943:65:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10943:65:0;10916:6;;:93;:26;:93;:::i;:::-;11071:7;;:66;;;;;;-1:-1:-1;;;;;11071:66:0;;;;;;;;;;;;;;;;;;;;;;10897:112;;-1:-1:-1;11071:7:0;;;:18;;:66;;;;;;;;;;;;;;;:7;;:66;;;5:2:-1;;;;30:1;27;20:12;5:2;11071:66:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11071:66:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11071:66:0;11063:102;;;;;;;-1:-1:-1;;;;;11063:102:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;11180:7;;:50;;;;;;-1:-1:-1;;;;;11180:50:0;;;;;;;;;;;;;;;;;;;;;;:7;;;;;:18;;:50;;;;;;;;;;;;;;:7;;:50;;;5:2:-1;;;;30:1;27;20:12;5:2;11180:50:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11180:50:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11180:50:0;11172:86;;;;;;;-1:-1:-1;;;;;11172:86:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;11300:8;;11330:50;;;;;;;;;;;;-1:-1:-1;;;;;11330:50:0;;;-1:-1:-1;;;11330:50:0;;;;;;;26:21:-1;;;22:32;;6:49;;11330:50:0;;;;;;;;11320:61;;11300:8;;;:19;;11330:50;;;11320:61;;;;;11330:50;11320:61;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;;;;365:33;;11320:61:0;;;;;;;;;;;;11300:82;;;-1:-1:-1;;;11300:82:0;;;;;;;;;;;;;;-1:-1:-1;;;;11300:82:0;;;;;;;-1:-1:-1;11300:82:0;-1:-1:-1;11300:82:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;11300:82:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11300:82:0;;;;11447:8;;;;;;;;;-1:-1:-1;;;;;11447:8:0;-1:-1:-1;;;;;11447:23:0;;11515:13;11481:48;;;;;;-1:-1:-1;;;;;;;;;;;11481:48:0;;;;;;-1:-1:-1;;;;;11481:48:0;-1:-1:-1;;;;;11481:48:0;-1:-1:-1;;;11481:48:0;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;11481:48:0;;;11471:59;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;11471:59:0;;;;;;;;;;;;11447:84;;;-1:-1:-1;;;11447:84:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;11447:84:0;;;;;;;-1:-1:-1;11447:84:0;-1:-1:-1;11447:84:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;11447:84:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11447:84:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11447:84:0;11538:8;;11565:43;;;;11447:84;11565:43;;;;;;;-1:-1:-1;;;;;11565:43:0;;;-1:-1:-1;;;11565:43:0;;;;;;;26:21:-1;;;22:32;;6:49;;11565:43:0;;;;;;;;11555:54;;11447:84;;-1:-1:-1;11538:8:0;;;;:16;;11565:43;;;;;11555:54;;;;;11565:43;11555:54;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;11555:54:0;;;;;;;;;;;;-1:-1:-1;11611:8:0;11642:43;;;;;-1:-1:-1;;;;;11642:43:0;;;-1:-1:-1;;;11642:43:0;;;;;;;26:21:-1;;;22:32;;6:49;;11642:43:0;;;;;;;;11632:54;;11555;;-1:-1:-1;11611:83:0;;-1:-1:-1;274:1;;11611:8:0;;;-1:-1:-1;11611:20:0;;11642:43;;;;;11632:54;;;;11642:43;11632:54;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;11632:54:0;;;;;;;;;;;;11611:76;;;-1:-1:-1;;;11611:76:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;11611:76:0;;;;;;;-1:-1:-1;11611:76:0;-1:-1:-1;11611:76:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;11611:76:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11611:76:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11611:76:0;;:83;:80;:83;:::i;:::-;11538:157;;;;;-1:-1:-1;;;11538:157:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11538:157:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;11720:6:0;;:81;;;;;;-1:-1:-1;;;;;11720:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:6;;;;;-1:-1:-1;11720:18:0;;-1:-1:-1;11720:81:0;;;;;:6;;:81;;;;;;;:6;;:81;;;5:2:-1;;;;30:1;27;20:12;5:2;11720:81:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;11815:4:0;;9074:2751;-1:-1:-1;;;;;;;;;;;;9074:2751:0:o;16499:236::-;16575:15;17617:8;;17648:37;;;;;;;;;;;;-1:-1:-1;;;17674:10:0;17648:37;;;;;;;22:32:-1;26:21;;;22:32;6:49;;17648:37:0;;;;;;;;17638:48;;16575:15;;-1:-1:-1;;;;;17617:8:0;;:20;;17648:37;;;;;17638:48;;;;17648:37;17638:48;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;17638:48:0;;;;;;;;;;;;17617:70;;;-1:-1:-1;;;17617:70:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;17617:70:0;;;;;;;-1:-1:-1;17617:70:0;-1:-1:-1;17617:70:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;17617:70:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17617:70:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17617:70:0;17609:92;;;;;;;-1:-1:-1;;;;;17609:92:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;16641:34;;;-1:-1:-1;;;;;16641:34:0;;16669:4;16641:34;;;;;;16599:11;;-1:-1:-1;;;;;;16641:19:0;;;;;:34;;;;;;;;;;;;;;-1:-1:-1;16641:19:0;:34;;;5:2:-1;;;;30:1;27;20:12;5:2;16641:34:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16641:34:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16641:34:0;16682:47;;;;;;16701:10;16682:47;;;;;;;;;;;;16641:34;;-1:-1:-1;;;;;;16682:18:0;;;;;:47;;;;;16641:34;;16682:47;;;;;;;;-1:-1:-1;16682:18:0;:47;;;5:2:-1;;;;30:1;27;20:12;5:2;16682:47:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16682:47:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;16499:236:0:o;11831:418::-;12004:4;17829:8;;17860:41;;;;;;;;;;;;-1:-1:-1;;;17895:4:0;17860:41;;;;;;;22:32:-1;26:21;;;22:32;6:49;;17860:41:0;;;;;;;;17850:52;;-1:-1:-1;;;;;17829:8:0;;;;:20;;17860:41;;;17850:52;;;;;17860:41;17850:52;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;17850:52:0;;;;;;;;;;;;17829:74;;;-1:-1:-1;;;17829:74:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;17829:74:0;;;;;;;-1:-1:-1;17829:74:0;-1:-1:-1;17829:74:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;17829:74:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17829:74:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17829:74:0;17828:75;17820:84;;;;;;18163:1;18067:8;;18101:48;;;-1:-1:-1;;;;;;;;;;;18101:48:0;;;;;;;;-1:-1:-1;;;;;18101:48:0;;;-1:-1:-1;;;18101:48:0;;;;;;;26:21:-1;;;22:32;;6:49;;18101:48:0;;;;;;;;18091:59;;18101:48;;18163:1;18067:8;;;;;:23;;18101:48;;;;;18091:59;;;;18101:48;18091:59;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;18091:59:0;;;;;;;;;;;;18067:84;;;-1:-1:-1;;;18067:84:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;18067:84:0;;;;;;;-1:-1:-1;18067:84:0;-1:-1:-1;18067:84:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;18067:84:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18067:84:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18067:84:0;-1:-1:-1;;;;;18067:98:0;;;18059:124;;;;;-1:-1:-1;;;;;18059:124:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;18332:8;;18363:53;;;-1:-1:-1;;;;;;;;;;;18363:53:0;;;;;;;;-1:-1:-1;;;;;18363:53:0;;;-1:-1:-1;;;18363:53:0;;;;;;;26:21:-1;;;22:32;;6:49;;18363:53:0;;;;;;;;18353:64;;18363:53;;18332:8;;;;;:20;;18363:53;;;;;18353:64;;;;18363:53;18353:64;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;18353:64:0;;;;;;;;;;;;18332:86;;;-1:-1:-1;;;18332:86:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;18332:86:0;;;;;;;-1:-1:-1;18332:86:0;-1:-1:-1;18332:86:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;18332:86:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18332:86:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18332:86:0;18326:3;:92;18318:120;;;;;-1:-1:-1;;;;;18318:120:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;19486:8;;19517:54;;;-1:-1:-1;;;;;;;;;;;19517:54:0;;;;;;;;-1:-1:-1;;;;;19517:54:0;;;-1:-1:-1;;;19517:54:0;;;;;;;26:21:-1;;;22:32;;6:49;;19517:54:0;;;;;;;;19507:65;;19517:54;;19486:8;;;;;:20;;19517:54;;;;;19507:65;;;;19517:54;19507:65;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;19507:65:0;;;;;;;;;;;;19486:87;;;-1:-1:-1;;;19486:87:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;19486:87:0;;;;;;;-1:-1:-1;19486:87:0;-1:-1:-1;19486:87:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;19486:87:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19486:87:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19486:87:0;19485:88;19477:120;;;;;-1:-1:-1;;;;;19477:120:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;12038:8;;12072:48;;;-1:-1:-1;;;;;;;;;;;12072:48:0;;;;;;;;-1:-1:-1;;;;;12072:48:0;;;-1:-1:-1;;;12072:48:0;;;;;;;26:21:-1;;;22:32;;6:49;;12072:48:0;;;;;;;;12062:59;;12038:8;;;:23;;12072:48;;;12062:59;;;;;12072:48;12062:59;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;12062:59:0;;;;;;;;;;;;12038:84;;;-1:-1:-1;;;12038:84:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;12038:84:0;;;;;;;-1:-1:-1;12038:84:0;-1:-1:-1;12038:84:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;12038:84:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12038:84:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12038:84:0;-1:-1:-1;;;;;12024:98:0;:10;:98;12016:107;;;;;;12130:8;;12157:53;;;-1:-1:-1;;;;;;;;;;;12157:53:0;;;;;;;;-1:-1:-1;;;;;12157:53:0;;;-1:-1:-1;;;12157:53:0;;;;;;;26:21:-1;;;22:32;;6:49;;12157:53:0;;;;;;;;12147:64;;12130:8;;;:16;;12157:53;;;12147:64;;;;;12157:53;12147:64;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;;;;365:33;;12147:64:0;;;;;;;;;;;;12130:85;;;-1:-1:-1;;;12130:85:0;;;;;;;274:1:-1;12130:85:0;;;;;;;;;;;-1:-1:-1;;;;12130:85:0;;;;;;;-1:-1:-1;12130:85:0;-1:-1:-1;12130:85:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;12130:85:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12130:85:0;;;;12222:21;12229:13;12222:6;:21::i;:::-;;18445:1;18190;17911;11831:418;;;:::o;16797:259::-;17617:8;;17648:37;;;;;;;;;;;;-1:-1:-1;;;17674:10:0;17648:37;;;;;;;22:32:-1;26:21;;;22:32;6:49;;17648:37:0;;;;;;;;17638:48;;-1:-1:-1;;;;;17617:8:0;;;;:20;;17648:37;;;17638:48;;;;;17648:37;17638:48;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;17638:48:0;;;;;;;;;;;;17617:70;;;-1:-1:-1;;;17617:70:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;17617:70:0;;;;;;;-1:-1:-1;17617:70:0;-1:-1:-1;17617:70:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;17617:70:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17617:70:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17617:70:0;17609:92;;;;;;;-1:-1:-1;;;;;17609:92:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;16848:6;;:108;;;;;;16903:4;16848:108;;;;;;16910:10;16848:108;;;;16922:21;16848:108;;;;:6;:108;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16848:6:0;;;;:18;;:108;;;;;:6;;:108;;;;;;:6;;:108;;;5:2:-1;;;;30:1;27;20:12;5:2;16848:108:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;17039:10:0;;-1:-1:-1;;;17026:24:0;6032:2810;6155:4;6790:18;6868:21;6986:14;7079:11;6272:1;-1:-1:-1;;;;;6176:98:0;:8;;;;;;;;;-1:-1:-1;;;;;6176:8:0;-1:-1:-1;;;;;6176:23:0;;6244:13;6210:48;;;;;;-1:-1:-1;;;;;;;;;;;6210:48:0;;;;;;-1:-1:-1;;;;;6210:48:0;-1:-1:-1;;;;;6210:48:0;-1:-1:-1;;;6210:48:0;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;6210:48:0;;;6200:59;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;6200:59:0;;;;;;;;;;;;6176:84;;;-1:-1:-1;;;6176:84:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;6176:84:0;;;;;;;-1:-1:-1;6176:84:0;-1:-1:-1;6176:84:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;6176:84:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6176:84:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6176:84:0;-1:-1:-1;;;;;6176:98:0;;;6168:124;;;;;-1:-1:-1;;;;;6168:124:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;6314:8;;6345:53;;;-1:-1:-1;;;;;;;;;;;6345:53:0;;;;;;;;-1:-1:-1;;;;;6345:53:0;;;-1:-1:-1;;;6345:53:0;;;;;;;26:21:-1;;;22:32;;6:49;;6345:53:0;;;;;;;;6335:64;;6314:8;;;:20;;6345:53;;;6335:64;;;;;6345:53;6335:64;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;6335:64:0;;;;;;;;;;;;6314:86;;;-1:-1:-1;;;6314:86:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;6314:86:0;;;;;;;-1:-1:-1;6314:86:0;-1:-1:-1;6314:86:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;6314:86:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6314:86:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6314:86:0;6307:3;:93;;6299:119;;;;;-1:-1:-1;;;;;6299:119:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;6434:8;;6465:54;;;-1:-1:-1;;;;;;;;;;;6465:54:0;;;;;;;;-1:-1:-1;;;;;6465:54:0;;;-1:-1:-1;;;6465:54:0;;;;;;;26:21:-1;;;22:32;;6:49;;6465:54:0;;;;;;;;6455:65;;6434:8;;;:20;;6465:54;;;6455:65;;;;;6465:54;6455:65;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;6455:65:0;;;;;;;;;;;;6434:87;;;-1:-1:-1;;;6434:87:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;6434:87:0;;;;;;;-1:-1:-1;6434:87:0;-1:-1:-1;6434:87:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;6434:87:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6434:87:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6434:87:0;6433:88;6425:120;;;;;-1:-1:-1;;;;;6425:120:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6557:68:0;;6582:42;6557:68;6554:230;;;6643:9;:20;;6635:64;;;;;-1:-1:-1;;;;;6635:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;6554:230;;;6730:9;:14;6722:54;;;;;-1:-1:-1;;;;;6722:54:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;6835:13;-1:-1:-1;;;;;6817:41:0;;:43;;;;;-1:-1:-1;;;6817:43:0;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6817:43:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6817:43:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6817:43:0;6892:8;;6923:54;;;;6817:43;6923:54;;;;;;;-1:-1:-1;;;;;6923:54:0;;;-1:-1:-1;;;6923:54:0;;;;;;;26:21:-1;;;22:32;;6:49;;6923:54:0;;;;;;;;6913:65;;6817:43;;-1:-1:-1;6892:8:0;;;;:20;;6923:54;;;;;6913:65;;;;;6923:54;6913:65;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;6913:65:0;;;;;;;;;;;;6892:87;;;-1:-1:-1;;;6892:87:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;6892:87:0;;;;;;;-1:-1:-1;6892:87:0;-1:-1:-1;6892:87:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;6892:87:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6892:87:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6892:87:0;;-1:-1:-1;;;;;;7256:38:0;;;;;;;7253:261;;;7316:67;7331:10;7343:7;7352:16;7370:12;7316:14;:67::i;:::-;7304:79;;7253:261;;;7418:88;7432:10;7444:7;7453:12;7473:13;7489:16;7418:13;:88::i;:::-;7406:100;;7253:261;7540:1;7528:13;;7520:22;;;;;;7564:16;7552:9;:28;7549:1176;;;7636:8;;7667:32;;;-1:-1:-1;;;;;;;;;;;7667:32:0;;;;;;;;;;26:21:-1;;;7667:32:0;22::-1;6:49;;7667:32:0;;;;;;;;7657:43;;7599:104;;7622:80;;-1:-1:-1;;;;;7636:8:0;;;;:20;;7667:32;;;;7657:43;;;;7667:32;7657:43;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;7657:43:0;;;;;;;;;;;;7636:65;;;-1:-1:-1;;;7636:65:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;7636:65:0;;;;;;;-1:-1:-1;7636:65:0;-1:-1:-1;7636:65:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;7636:65:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7636:65:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7636:65:0;7627:3;;7622:80;:13;:80;:::i;:::-;7599:18;:9;7613:3;7599:18;:13;:18;:::i;:::-;:22;:104;:22;:104;:::i;:::-;7712:8;;7739:54;;;;;;;;;;;;-1:-1:-1;;;;;7739:54:0;;;-1:-1:-1;;;7739:54:0;;;;;;;26:21:-1;;;22:32;;6:49;;7739:54:0;;;;;;;;7729:65;;7590:113;;-1:-1:-1;7712:8:0;;;;:16;;7739:54;;;;;7729:65;;;;;7739:54;7729:65;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;7729:65:0;;;;;;;;;;;;;;;;7796:31;7817:9;7796:16;:20;;:31;;;;:::i;:::-;7712:116;;;;;-1:-1:-1;;;7712:116:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7712:116:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;7845:6:0;;:57;;;;;;-1:-1:-1;;;;;7845:57:0;;;;;;;7883:10;7845:57;;;;;;;;;;;;:6;;;;;-1:-1:-1;7845:22:0;;-1:-1:-1;7845:57:0;;;;;;;;;;;;;;:6;;:57;;;5:2:-1;;;;30:1;27;20:12;5:2;7845:57:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7845:57:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7845:57:0;7837:93;;;;;;;-1:-1:-1;;;;;7837:93:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7977:7;;7947:50;;;;;;-1:-1:-1;;;;;7977:7:0;;;7947:50;;;;;;;;;;;;:21;;;;;;:50;;;;;;;;;;;;;;;7977:7;7947:21;:50;;;5:2:-1;;;;30:1;27;20:12;5:2;7947:50:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7947:50:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7947:50:0;7939:59;;;;;;;;7549:1176;;;8074:8;;8105:32;;;-1:-1:-1;;;;;;;;;;;8105:32:0;;;;;;;;;;26:21:-1;;;8105:32:0;22::-1;6:49;;8105:32:0;;;;;;;;8095:43;;8030:111;;8060:80;;-1:-1:-1;;;;;8074:8:0;;;;:20;;8105:32;;;;8095:43;;;;8105:32;8095:43;66:2:-1;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;8060:80:0;8030:25;:16;8051:3;8030:25;:20;:25;:::i;:111::-;8150:8;;8177:54;;;-1:-1:-1;;;;;;;;;;;8177:54:0;;;;;;;;-1:-1:-1;;;;;8177:54:0;;;-1:-1:-1;;;8177:54:0;;;;;;;26:21:-1;;;22:32;;6:49;;8177:54:0;;;;;;;;8167:65;;8021:120;;-1:-1:-1;8150:8:0;;;;:16;;8177:54;;;;;8167:65;;;;;8177:54;8167:65;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;;;;365:33;;8167:65:0;;;;;;;;;;;;8150:89;;;-1:-1:-1;;;8150:89:0;;;;;;;274:1:-1;8150:89:0;;;;;;;;;;;-1:-1:-1;;;;8150:89:0;;;;;;;-1:-1:-1;8150:89:0;-1:-1:-1;8150:89:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;8150:89:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;8248:8:0;;8278:54;;;;;;;;;;;;-1:-1:-1;;;;;8278:54:0;;;-1:-1:-1;;;8278:54:0;;;;;;;26:21:-1;;;22:32;;6:49;;8278:54:0;;;;;;;;8268:65;;8248:8;;;-1:-1:-1;8248:19:0;;-1:-1:-1;8278:54:0;;;;8268:65;;;;8278:54;8268:65;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;;;;365:33;;8268:65:0;;;;;;;;;;;;8248:86;;;-1:-1:-1;;;8248:86:0;;;;;;;;;;;;;;-1:-1:-1;;;;8248:86:0;;;;;;;-1:-1:-1;8248:86:0;-1:-1:-1;8248:86:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;8248:86:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;8351:6:0;;:57;;;;;;-1:-1:-1;;;;;8351:57:0;;;;;;;8389:10;8351:57;;;;;;;;;;;;:6;;;;;-1:-1:-1;8351:22:0;;-1:-1:-1;8351:57:0;;;;;;;;;;;;;;:6;;:57;;;5:2:-1;;;;30:1;27;20:12;5:2;8351:57:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8351:57:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8351:57:0;8343:93;;;;;;;-1:-1:-1;;;;;8343:93:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8528:7;;8498:57;;;;;;-1:-1:-1;;;;;8528:7:0;;;8498:57;;;;;;;;;;;;:21;;;;;;:57;;;;;;;;;;;;;;;8528:7;8498:21;:57;;;5:2:-1;;;;30:1;27;20:12;5:2;8498:57:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8498:57:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8498:57:0;8490:66;;;;;;;;8580:16;8568:9;:28;8565:153;;;-1:-1:-1;;;;;8616:21:0;;;8638:10;8650:31;:9;8664:16;8650:31;:13;:31;:::i;:::-;8616:66;;;;;-1:-1:-1;;;8616:66:0;;;;;;;-1:-1:-1;;;;;8616:66:0;-1:-1:-1;;;;;8616:66:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8616:66:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8616:66:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8616:66:0;8608:75;;;;;;;;8731:6;;:87;;;;;;8777:4;8731:87;;;;8784:10;8731:87;;;;;;;;;;-1:-1:-1;;;;;8731:87:0;;;;;;;;;;;;;;;;;;;;;;;;:6;;;;;:18;;:87;;;;;:6;;:87;;;;;;;:6;;:87;;;5:2:-1;;;;30:1;27;20:12;5:2;8731:87:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;8832:4:0;;6032:2810;-1:-1:-1;;;;;;;;;;;6032:2810:0:o;12453:772::-;12623:4;17829:8;;17860:41;;;;;;;;;;;;-1:-1:-1;;;17895:4:0;17860:41;;;;;;;22:32:-1;26:21;;;22:32;6:49;;17860:41:0;;;;;;;;17850:52;;12623:4;;;;;;-1:-1:-1;;;;;17829:8:0;;;;:20;;17860:41;;17850:52;;;;17860:41;17850:52;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;17850:52:0;;;;;;;;;;;;17829:74;;;-1:-1:-1;;;17829:74:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;17829:74:0;;;;;;;-1:-1:-1;17829:74:0;-1:-1:-1;17829:74:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;17829:74:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17829:74:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17829:74:0;17828:75;17820:84;;;;;;18163:1;18067:8;;18101:48;;;-1:-1:-1;;;;;;;;;;;18101:48:0;;;;;;;;-1:-1:-1;;;;;18101:48:0;;;-1:-1:-1;;;18101:48:0;;;;;;;26:21:-1;;;22:32;;6:49;;18101:48:0;;;;;;;;18091:59;;18101:48;;18163:1;18067:8;;;;;:23;;18101:48;;;;;18091:59;;;;18101:48;18091:59;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;18091:59:0;;;;;;;;;;;;18067:84;;;-1:-1:-1;;;18067:84:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;18067:84:0;;;;;;;-1:-1:-1;18067:84:0;-1:-1:-1;18067:84:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;18067:84:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18067:84:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18067:84:0;-1:-1:-1;;;;;18067:98:0;;;18059:124;;;;;-1:-1:-1;;;;;18059:124:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;19001:8;;19032:53;;;-1:-1:-1;;;;;;;;;;;19032:53:0;;;;;;;;-1:-1:-1;;;;;19032:53:0;;;-1:-1:-1;;;19032:53:0;;;;;;;26:21:-1;;;22:32;;6:49;;19032:53:0;;;;;;;;19022:64;;19032:53;;19001:8;;;;;:20;;19032:53;;;;;19022:64;;;;19032:53;19022:64;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;19022:64:0;;;;;;;;;;;;19001:86;;;-1:-1:-1;;;19001:86:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;19001:86:0;;;;;;;-1:-1:-1;19001:86:0;-1:-1:-1;19001:86:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;19001:86:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19001:86:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19001:86:0;18995:3;:92;18987:120;;;;;-1:-1:-1;;;;;18987:120:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;19486:8;;19517:54;;;-1:-1:-1;;;;;;;;;;;19517:54:0;;;;;;;;-1:-1:-1;;;;;19517:54:0;;;-1:-1:-1;;;19517:54:0;;;;;;;26:21:-1;;;22:32;;6:49;;19517:54:0;;;;;;;;19507:65;;19517:54;;19486:8;;;;;:20;;19517:54;;;;;19507:65;;;;19517:54;19507:65;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;19507:65:0;;;;;;;;;;;;19486:87;;;-1:-1:-1;;;19486:87:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;19486:87:0;;;;;;;-1:-1:-1;19486:87:0;-1:-1:-1;19486:87:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;19486:87:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19486:87:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19486:87:0;19485:88;19477:120;;;;;-1:-1:-1;;;;;19477:120:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;12644:8;;12675:53;;;-1:-1:-1;;;;;;;;;;;12675:53:0;;;;;;;;-1:-1:-1;;;;;12675:53:0;;;-1:-1:-1;;;12675:53:0;;;;;;;26:21:-1;;;22:32;;6:49;;12675:53:0;;;;;;;;12665:64;;12644:8;;;:20;;12675:53;;;12665:64;;;;;12675:53;12665:64;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;12665:64:0;;;;;;;;;;;;12644:86;;;-1:-1:-1;;;12644:86:0;;;;;;;;;;;;;;-1:-1:-1;263:2;;-1:-1;12644:86:0;;;;;;;-1:-1:-1;12644:86:0;-1:-1:-1;12644:86:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;12644:86:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12644:86:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12644:86:0;:91;;12636:100;;;;;;12743:8;;12773:53;;;-1:-1:-1;;;;;;;;;;;12773:53:0;;;;;;;;-1:-1:-1;;;;;12773:53:0;;;-1:-1:-1;;;12773:53:0;;;;;;;26:21:-1;;;22:32;;6:49;;12773:53:0;;;;;;;;12763:64;;12743:8;;;:19;;12773:53;;;12763:64;;;;;12773:53;12763:64;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;;;;365:33;;12763:64:0;;;;;;;;;;;;12743:85;;;-1:-1:-1;;;12743:85:0;;;;;;;;;;;;;;-1:-1:-1;;;;12743:85:0;;;;;;;-1:-1:-1;12743:85:0;-1:-1:-1;12743:85:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;12743:85:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12743:85:0;;;;12884:13;12835:63;;12928:10;-1:-1:-1;;;;;12928:19:0;;:21;;;;;-1:-1:-1;;;12928:21:0;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12928:21:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12928:21:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12928:21:0;13018:8;;13049:32;;;-1:-1:-1;;;;;;;;;;;12928:21:0;13049:32;;;;;;;;;26:21:-1;;;13049:32:0;22::-1;6:49;;13049:32:0;;;;;;;;13039:43;;12928:21;;-1:-1:-1;12975:119:0;;13090:3;;12975:110;;13004:80;;-1:-1:-1;;;;;13018:8:0;;;;:20;;13049:32;;13039:43;;;;13049:32;13039:43;66:2:-1;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;13004:80:0;12975:10;-1:-1:-1;;;;;12975:22:0;;:24;;;;;-1:-1:-1;;;12975:24:0;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12975:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12975:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12975:24:0;;:110;:28;:110;:::i;:119::-;13135:7;;:66;;;;;;-1:-1:-1;;;;;13135:66:0;;;;;;;;;;;;;;;;;;;;;;12956:138;;-1:-1:-1;13135:7:0;;;:24;;:66;;;;;;;;;;;;;;;:7;;:66;;;5:2:-1;;;;30:1;27;20:12;5:2;13135:66:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13135:66:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13215:4:0;;12453:772;-1:-1:-1;;;;;;;;;12453:772:0:o;1336:163::-;1435:7;1458:35;1462:25;1466:7;1475:11;1462:3;:25::i;:::-;1489:3;1458;:35::i;:::-;1451:42;1336:163;-1:-1:-1;;;1336:163:0:o;1157:133::-;1215:7;1243:5;;;1262:6;;;;1255:14;;;;1283:1;1276:8;;1157:133;;;;;;:::o;13541:302::-;13638:4;13662:3;13653:6;:12;13650:188;;;13675:44;;;;;;-1:-1:-1;;;;;13675:44:0;;;;;;;13708:4;13675:44;;;;;;;;;;;;:18;;;;;;:44;;;;;;;;;;;;;;;-1:-1:-1;13675:18:0;:44;;;5:2:-1;;;;30:1;27;20:12;5:2;13675:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13675:44:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13735:3:0;;-1:-1:-1;13728:10:0;;-1:-1:-1;13728:10:0;13650:188;13761:47;;;;;;-1:-1:-1;;;;;13761:47:0;;;;;;;13794:4;13761:47;;;;;;;;;;;;:18;;;;;;:47;;;;;;;;;;;;;;;-1:-1:-1;13761:18:0;:47;;;5:2:-1;;;;30:1;27;20:12;5:2;13761:47:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13761:47:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13824:6:0;;-1:-1:-1;13817:13:0;;-1:-1:-1;13817:13:0;13650:188;13541:302;;;;;;:::o;14392:2047::-;14547:4;;;;;-1:-1:-1;;;;;14768:77:0;;14802:42;14768:77;14765:1580;;;14931:29;;;-1:-1:-1;;;;;14931:29:0;;14886:4;14931:29;;;;;;;;14878:21;;;-1:-1:-1;;;;;;14931:23:0;;;;;:29;;;;;;;;;;;;;;;-1:-1:-1;14931:23:0;:29;;;5:2:-1;;;;30:1;27;20:12;5:2;14931:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14931:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14931:29:0;15025:5;;;:116;;;;;;-1:-1:-1;;;;;15025:116:0;;;;;;;;;;;;;;;;;;;;;;;15117:4;15025:116;;;;;;;;;;:5;:116;;;;;;;;;;;;14931:29;;-1:-1:-1;15025:5:0;;;:11;;15043:7;;15025:116;;;;;14931:29;;15025:116;;;;;;;15043:7;15025:5;:116;;;5:2:-1;;;;30:1;27;20:12;5:2;15025:116:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15025:116:0;;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15159:60:0;;-1:-1:-1;15171:47:0;:20;15204:4;15196:21;15171:47;:24;:47;:::i;:::-;15159:7;;:60;:11;:60;:::i;:::-;15150:69;;15241:55;15275:20;15241:13;-1:-1:-1;;;;;15241:23:0;;15265:4;15241:29;;;;;-1:-1:-1;;;15241:29:0;;;;;;;-1:-1:-1;;;;;15241:29:0;-1:-1:-1;;;;;15241:29:0;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15241:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15241:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15241:29:0;;:55;:33;:55;:::i;:::-;15228:68;;15317:1;15308:6;:10;15305:61;;;15330:26;;-1:-1:-1;;;;;15330:18:0;;;:26;;;;;15349:6;;15330:26;;;;15349:6;15330:18;:26;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15330:26:0;15305:61;14765:1580;;;15411:58;15426:9;15437:7;15446;15455:13;15411:14;:58::i;:::-;-1:-1:-1;15617:5:0;;;15587:40;;;;;;-1:-1:-1;;;;;15617:5:0;;;15587:40;;;;;;;15617:5;15587:40;;;;;;;;:21;;;;;;:40;;;;;;;;;;;;;;;;:21;:40;;;5:2:-1;;;;30:1;27;20:12;5:2;15587:40:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15587:40:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15587:40:0;15579:49;;;;;;;;15733:5;;;15703:46;;;;;;-1:-1:-1;;;;;15733:5:0;;;15703:46;;;;;;;;;;;;;;:21;;;;;;:46;;;;;;;;;;;;;;15733:5;15703:21;:46;;;5:2:-1;;;;30:1;27;20:12;5:2;15703:46:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15703:46:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;15781:29:0;;;-1:-1:-1;;;;;15781:29:0;;15805:4;15781:29;;;;;;-1:-1:-1;;;;;15781:23:0;;;;;:29;;;;;15703:46;;15781:29;;;;;;;-1:-1:-1;15781:23:0;:29;;;5:2:-1;;;;30:1;27;20:12;5:2;15781:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15781:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15781:29:0;15842;;;-1:-1:-1;;;;;15842:29:0;;15866:4;15842:29;;;;;;15781;;-1:-1:-1;;;;;;15842:23:0;;;;;:29;;;;;15781;;15842;;;;;;;;-1:-1:-1;15842:23:0;:29;;;5:2:-1;;;;30:1;27;20:12;5:2;15842:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15842:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15842:29:0;15936:5;;;:101;;;;;;-1:-1:-1;;;;;15936:101:0;;;;;;;;;;;;;;;;;;;;;;;16013:4;15936:101;;;;;;;;;;:5;:101;;;;;;;;;;;;;;15842:29;;-1:-1:-1;15936:5:0;;;;;:11;;:101;;;;;15842:29;;15936:101;;;;;;;;;;:5;:101;;;5:2:-1;;;;30:1;27;20:12;5:2;15936:101:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15936:101:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;16145:29:0;;;-1:-1:-1;;;;;16145:29:0;;16169:4;16145:29;;;;;;16108:68;;16120:55;;-1:-1:-1;;;;;16145:23:0;;;;;:29;;;;;15936:101;;16145:29;;;;;;;-1:-1:-1;16145:23:0;:29;;;5:2:-1;;;;30:1;27;20:12;5:2;16145:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16145:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16145:29:0;16120:20;;:55;:24;:55;:::i;16108:68::-;16099:77;;16198:55;16232:20;16198:13;-1:-1:-1;;;;;16198:23:0;;16222:4;16198:29;;;;;-1:-1:-1;;;16198:29:0;;;;;;;-1:-1:-1;;;;;16198:29:0;-1:-1:-1;;;;;16198:29:0;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;16198:55:0;16185:68;;16274:1;16265:6;:10;16262:76;;;16287:13;-1:-1:-1;;;;;16287:22:0;;16310:9;16321:6;16287:41;;;;;-1:-1:-1;;;16287:41:0;;;;;;;-1:-1:-1;;;;;16287:41:0;-1:-1:-1;;;;;16287:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16287:41:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16287:41:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;16262:76:0;16358:51;;;-1:-1:-1;;;;;16358:51:0;;;;;;;;;;;;;;;;;;;;;;;;;;;16423:10;14392:2047;-1:-1:-1;;;;;;;;;14392:2047:0:o;343:180::-;401:7;;421:6;;417:37;;;445:1;438:8;;;;417:37;-1:-1:-1;472:5:0;;;476:1;472;:5;491;;;;;;;;:10;484:18;;;601:277;659:7;871:1;867;:5;;;;;;;;;601:277;-1:-1:-1;;;601:277:0:o;986:113::-;1044:7;1067:6;;;;1060:14;;;;-1:-1:-1;1088:5:0;;;986:113::o
Swarm Source
bzzr://d8cdc5eb38239b0c679bcab1bd857a2ff99422082d9f2a6281fe2bccdca5c0f9
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.