Polygon Sponsored slots available. Book your slot here!
Contract Overview
My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Contract Name:
QuickConverter
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at polygonscan.com on 2022-10-23 */ /** *Submitted for verification at polygonscan.com on 2021-06-18 */ // File: contracts/libraries/SafeMath.sol pragma solidity =0.6.12; // a library for performing overflow-safe math, courtesy of DappHub (https://github.com/dapphub/ds-math) library SafeMath { function add(uint x, uint y) internal pure returns (uint z) { require((z = x + y) >= x, 'ds-math-add-overflow'); } function sub(uint x, uint y) internal pure returns (uint z) { require((z = x - y) <= x, 'ds-math-sub-underflow'); } function mul(uint x, uint y) internal pure returns (uint z) { require(y == 0 || (z = x * y) / y == x, 'ds-math-mul-overflow'); } function div(uint a, uint b) internal pure returns (uint256) { require(b > 0, "division by zero"); return a / b; } } // File: contracts/interfaces/IERC20.sol pragma solidity >=0.5.0; interface IERC20 { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); } // File: contracts/libraries/SafeERC20.sol pragma solidity 0.6.12; library SafeERC20 { function safeSymbol(IERC20 token) internal view returns(string memory) { (bool success, bytes memory data) = address(token).staticcall(abi.encodeWithSelector(0x95d89b41)); return success && data.length > 0 ? abi.decode(data, (string)) : "???"; } function safeName(IERC20 token) internal view returns(string memory) { (bool success, bytes memory data) = address(token).staticcall(abi.encodeWithSelector(0x06fdde03)); return success && data.length > 0 ? abi.decode(data, (string)) : "???"; } function safeDecimals(IERC20 token) public view returns (uint8) { (bool success, bytes memory data) = address(token).staticcall(abi.encodeWithSelector(0x313ce567)); return success && data.length == 32 ? abi.decode(data, (uint8)) : 18; } function safeTransfer(IERC20 token, address to, uint256 amount) internal { (bool success, bytes memory data) = address(token).call(abi.encodeWithSelector(0xa9059cbb, to, amount)); require(success && (data.length == 0 || abi.decode(data, (bool))), "SafeERC20: Transfer failed"); } function safeTransferFrom(IERC20 token, address from, uint256 amount) internal { (bool success, bytes memory data) = address(token).call(abi.encodeWithSelector(0x23b872dd, from, address(this), amount)); require(success && (data.length == 0 || abi.decode(data, (bool))), "SafeERC20: TransferFrom failed"); } } // File: @uniswap/v2-core/contracts/interfaces/IUniswapV2ERC20.sol pragma solidity >=0.5.0; interface IUniswapV2ERC20 { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; } // File: @uniswap/v2-core/contracts/interfaces/IUniswapV2Pair.sol pragma solidity >=0.5.0; interface IUniswapV2Pair { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; event Mint(address indexed sender, uint amount0, uint amount1); event Burn(address indexed sender, uint amount0, uint amount1, address indexed to); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); function MINIMUM_LIQUIDITY() external pure returns (uint); function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); function price0CumulativeLast() external view returns (uint); function price1CumulativeLast() external view returns (uint); function kLast() external view returns (uint); function mint(address to) external returns (uint liquidity); function burn(address to) external returns (uint amount0, uint amount1); function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external; function skim(address to) external; function sync() external; function initialize(address, address) external; } // File: @uniswap/v2-core/contracts/interfaces/IUniswapV2Factory.sol pragma solidity >=0.5.0; interface IUniswapV2Factory { event PairCreated(address indexed token0, address indexed token1, address pair, uint); function feeTo() external view returns (address); function feeToSetter() external view returns (address); function getPair(address tokenA, address tokenB) external view returns (address pair); function allPairs(uint) external view returns (address pair); function allPairsLength() external view returns (uint); function createPair(address tokenA, address tokenB) external returns (address pair); function setFeeTo(address) external; function setFeeToSetter(address) external; } // File: contracts/Ownable.sol pragma solidity 0.6.12; // Source: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/access/Ownable.sol + Claimable.sol contract OwnableData { address public owner; address public pendingOwner; } contract Ownable is OwnableData { event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () internal { owner = msg.sender; emit OwnershipTransferred(address(0), msg.sender); } function transferOwnership(address newOwner, bool direct, bool renounce) public onlyOwner { if (direct) { require(newOwner != address(0) || renounce, "Ownable: zero address"); // Effects emit OwnershipTransferred(owner, newOwner); owner = newOwner; } else { pendingOwner = newOwner; } } function claimOwnership() public { address _pendingOwner = pendingOwner; require(msg.sender == _pendingOwner, "Ownable: caller != pending owner"); emit OwnershipTransferred(owner, _pendingOwner); owner = _pendingOwner; pendingOwner = address(0); } modifier onlyOwner() { require(msg.sender == owner, "Ownable: caller is not the owner"); _; } } // File: contracts/QuickConverter.sol // P1 - P3: OK pragma solidity 0.6.12; //QUICK LAIR'S CONVERTER CONTRACT. This contract converts all tokens into QUICK contract QuickConverter is Ownable { using SafeMath for uint256; using SafeERC20 for IERC20; // V1 - V5: OK IUniswapV2Factory public immutable factory; //0x5757371414417b8C6CAad45bAeF941aBc7d3Ab32 // V1 - V5: OK address public immutable dragonLair; // V1 - V5: OK address public immutable quick; //0x831753dd7087cac61ab5644b308642cc1c33dc13 // V1 - V5: OK address public immutable weth; //0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619 address public treasury; //0x476307DaC3FD170166e007FCaA14F0A129721463 // V1 - V5: OK mapping(address => address) internal _bridges; // E1: OK event LogBridgeSet(address indexed token, address indexed bridge); // E1: OK event LogConvert( address indexed server, address indexed token0, address indexed token1, uint256 amount0, uint256 amount1, uint256 amountQUICK ); event TreasuryChanged(address indexed treasury); constructor( address _factory, address _dragonLair, address _quick, address _weth, address _treasury ) public { factory = IUniswapV2Factory(_factory); dragonLair = _dragonLair; quick = _quick; weth = _weth; treasury = _treasury; } // F1 - F10: OK // C1 - C24: OK function bridgeFor(address token) public view returns (address bridge) { bridge = _bridges[token]; if (bridge == address(0)) { bridge = weth; } } // F1 - F10: OK // C1 - C24: OK function setBridge(address token, address bridge) external onlyOwner { // Checks require( token != quick && token != weth && token != bridge, "QuickConverter: Invalid bridge" ); // Effects _bridges[token] = bridge; emit LogBridgeSet(token, bridge); } function changeTreasury(address _treasury) external onlyOwner { require(_treasury != address(0), "Inavlid treasury"); treasury = _treasury; emit TreasuryChanged(treasury); } // M1 - M5: OK // C1 - C24: OK // C6: It's not a fool proof solution, but it prevents flash loans, so here it's ok to use tx.origin modifier onlyEOA() { // Try to make flash-loan exploit harder to do by only allowing externally owned addresses. require(msg.sender == tx.origin, "QuickConverter: must use EOA"); _; } // F1 - F10: OK // F3: _convert is separate to save gas by only checking the 'onlyEOA' modifier once in case of convertMultiple // F6: There is an exploit to add lots of QUICK to the dragonLair, run convert, then remove the QUICK again. // As the size of the DragonLair has grown, this requires large amounts of funds and isn't super profitable anymore // The onlyEOA modifier prevents this being done with a flash loan. // C1 - C24: OK function convert(address token0, address token1) external onlyEOA() { _convert(token0, token1); } // F1 - F10: OK, see convert // C1 - C24: OK // C3: Loop is under control of the caller function convertMultiple( address[] calldata token0, address[] calldata token1 ) external onlyEOA() { // TODO: This can be optimized a fair bit, but this is safer and simpler for now uint256 len = token0.length; for (uint256 i = 0; i < len; i++) { _convert(token0[i], token1[i]); } } // F1 - F10: OK // C1- C24: OK function _convert(address token0, address token1) internal { // Interactions // S1 - S4: OK IUniswapV2Pair pair = IUniswapV2Pair(factory.getPair(token0, token1)); require(address(pair) != address(0), "QuickConverter: Invalid pair"); // balanceOf: S1 - S4: OK // transfer: X1 - X5: OK IERC20(address(pair)).safeTransfer( address(pair), pair.balanceOf(address(this)) ); // X1 - X5: OK (uint256 amount0, uint256 amount1) = pair.burn(address(this)); if (token0 != pair.token0()) { (amount0, amount1) = (amount1, amount0); } if (amount0 > 0 || amount1 > 0) { _convertStep(token0, token1, amount0, amount1); uint256 amountQUICK = IERC20(quick).balanceOf(address(this)); uint256 dragonLairShare = amountQUICK.mul(80).div(100); uint256 treasuryShare = amountQUICK.sub(dragonLairShare); IERC20(quick).safeTransfer(dragonLair, dragonLairShare); IERC20(quick).safeTransfer(treasury, treasuryShare); emit LogConvert( msg.sender, token0, token1, amount0, amount1, amountQUICK ); } } // F1 - F10: OK // C1 - C24: OK // All _swap, _toQUICK, _convertStep: X1 - X5: OK function _convertStep( address token0, address token1, uint256 amount0, uint256 amount1 ) internal returns (uint256 quickOut) { // Interactions if (token0 == token1) { uint256 amount = amount0.add(amount1); if (token0 == quick) { quickOut = amount; } else if (token0 == weth) { quickOut = _toQUICK(weth, amount); } else { address bridge = bridgeFor(token0); amount = _swap(token0, bridge, amount, address(this)); quickOut = _convertStep(bridge, bridge, amount, 0); } } else if (token0 == quick) { // eg. QUICK - ETH quickOut = _toQUICK(token1, amount1).add(amount0); } else if (token1 == quick) { // eg. USDT - QUICK quickOut = _toQUICK(token0, amount0).add(amount1); } else if (token0 == weth) { // eg. ETH - USDC quickOut = _toQUICK( weth, _swap(token1, weth, amount1, address(this)).add(amount0) ); } else if (token1 == weth) { // eg. USDT - ETH quickOut = _toQUICK( weth, _swap(token0, weth, amount0, address(this)).add(amount1) ); } else { // eg. MIC - USDT address bridge0 = bridgeFor(token0); address bridge1 = bridgeFor(token1); if (bridge0 == token1) { // eg. MIC - USDT - and bridgeFor(MIC) = USDT quickOut = _convertStep( bridge0, token1, _swap(token0, bridge0, amount0, address(this)), amount1 ); } else if (bridge1 == token0) { // eg. WBTC - DSD - and bridgeFor(DSD) = WBTC quickOut = _convertStep( token0, bridge1, amount0, _swap(token1, bridge1, amount1, address(this)) ); } else { quickOut = _convertStep( bridge0, bridge1, // eg. USDT - DSD - and bridgeFor(DSD) = WBTC _swap(token0, bridge0, amount0, address(this)), _swap(token1, bridge1, amount1, address(this)) ); } } } // F1 - F10: OK // C1 - C24: OK // All safeTransfer, swap: X1 - X5: OK function _swap( address fromToken, address toToken, uint256 amountIn, address to ) internal returns (uint256 amountOut) { // Checks // X1 - X5: OK IUniswapV2Pair pair = IUniswapV2Pair(factory.getPair(fromToken, toToken)); require(address(pair) != address(0), "QuickConverter: Cannot convert"); IERC20(fromToken).safeTransfer(address(pair), amountIn); // Interactions // X1 - X5: OK (uint256 reserve0, uint256 reserve1, ) = pair.getReserves(); if (fromToken == pair.token0()) { uint256 amountInput = IERC20(fromToken).balanceOf(address(pair)).sub(reserve0); uint256 amountInWithFee = amountInput.mul(997); amountOut = amountInWithFee.mul(reserve1) / reserve0.mul(1000).add(amountInWithFee); pair.swap(0, amountOut, to, new bytes(0)); // TODO: Add maximum slippage? } else { uint256 amountInput = IERC20(fromToken).balanceOf(address(pair)).sub(reserve1); uint256 amountInWithFee = amountInput.mul(997); amountOut = amountInWithFee.mul(reserve0) / reserve1.mul(1000).add(amountInWithFee); pair.swap(amountOut, 0, to, new bytes(0)); // TODO: Add maximum slippage? } } // F1 - F10: OK // C1 - C24: OK function _toQUICK(address token, uint256 amountIn) internal returns (uint256 amountOut) { // X1 - X5: OK amountOut = _swap(token, quick, amountIn, address(this)); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_factory","type":"address"},{"internalType":"address","name":"_dragonLair","type":"address"},{"internalType":"address","name":"_quick","type":"address"},{"internalType":"address","name":"_weth","type":"address"},{"internalType":"address","name":"_treasury","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"bridge","type":"address"}],"name":"LogBridgeSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"server","type":"address"},{"indexed":true,"internalType":"address","name":"token0","type":"address"},{"indexed":true,"internalType":"address","name":"token1","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount0","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountQUICK","type":"uint256"}],"name":"LogConvert","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"treasury","type":"address"}],"name":"TreasuryChanged","type":"event"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"bridgeFor","outputs":[{"internalType":"address","name":"bridge","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_treasury","type":"address"}],"name":"changeTreasury","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token0","type":"address"},{"internalType":"address","name":"token1","type":"address"}],"name":"convert","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"token0","type":"address[]"},{"internalType":"address[]","name":"token1","type":"address[]"}],"name":"convertMultiple","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"dragonLair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"contract IUniswapV2Factory","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"quick","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"bridge","type":"address"}],"name":"setBridge","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"},{"internalType":"bool","name":"direct","type":"bool"},{"internalType":"bool","name":"renounce","type":"bool"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasury","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"weth","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
61010060405234801561001157600080fd5b50604051612c39380380612c39833981810160405260a081101561003457600080fd5b810190808051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a38473ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b815250508373ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508273ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508173ffffffffffffffffffffffffffffffffffffffff1660e08173ffffffffffffffffffffffffffffffffffffffff1660601b8152505080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050505060805160601c60a05160601c60c05160601c60e05160601c6129656102d4600039806108a65280610c175280610e875280611ac35280611b1a5280611c695280611cc05280611ce95280611d2b5280611d825280611dab525080610bc052806111b652806115c252806116ed528061175a5280611a675280611b7b5280611bf2528061210a525080610ab752806116cb52508061116c52806111dc528061213d52506129656000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639d22ae8c1161008c578063bd1b820c11610066578063bd1b820c14610409578063c45a01551461046d578063e30c3978146104a1578063fdd3a879146104d5576100ea565b80639d22ae8c146102f3578063a761a93914610357578063b14f2a39146103c5576100ea565b80634e71e0c8116100c85780634e71e0c81461024d57806361d027b31461025757806375dbbba81461028b5780638da5cb5b146102bf576100ea565b8063078dfbe7146100ef578063303e6aa41461014b5780633fc8cef314610219575b600080fd5b6101496004803603606081101561010557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190803515159060200190929190505050610509565b005b6102176004803603604081101561016157600080fd5b810190808035906020019064010000000081111561017e57600080fd5b82018360208201111561019057600080fd5b803590602001918460208302840111640100000000831117156101b257600080fd5b9091929391929390803590602001906401000000008111156101d357600080fd5b8201836020820111156101e557600080fd5b8035906020019184602083028401116401000000008311171561020757600080fd5b9091929391929390505050610781565b005b6102216108a4565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102556108c8565b005b61025f610a8f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610293610ab5565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102c7610ad9565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103556004803603604081101561030957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610afd565b005b6103996004803603602081101561036d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610dec565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610407600480360360208110156103db57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610eae565b005b61046b6004803603604081101561041f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110bb565b005b61047561116a565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104a961118e565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104dd6111b4565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146105ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b811561073a57600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415806106095750805b61067b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f776e61626c653a207a65726f2061646472657373000000000000000000000081525060200191505060405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3826000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061077c565b82600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b505050565b3273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610822576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f517569636b436f6e7665727465723a206d7573742075736520454f410000000081525060200191505060405180910390fd5b600084849050905060005b8181101561089c5761088f86868381811061084457fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1685858481811061086d57fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff166111d8565b808060010191505061082d565b505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610990576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e657281525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610bbe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015610c6657507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015610c9e57508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b610d10576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f517569636b436f6e7665727465723a20496e76616c696420627269646765000081525060200191505060405180910390fd5b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f2e103aa707acc565f9a1547341914802b2bfe977fd79c595209f248ae4b0061360405160405180910390a35050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ea9577f000000000000000000000000000000000000000000000000000000000000000090505b919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f6f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611012576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f496e61766c69642074726561737572790000000000000000000000000000000081525060200191505060405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fc714d22a2f08b695f81e7c707058db484aa5b4d6b4c9fd64beb10fe85832f60860405160405180910390a250565b3273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461115c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f517569636b436f6e7665727465723a206d7573742075736520454f410000000081525060200191505060405180910390fd5b61116682826111d8565b5050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e6a4390584846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b15801561127f57600080fd5b505afa158015611293573d6000803e3d6000fd5b505050506040513d60208110156112a957600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561135f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f517569636b436f6e7665727465723a20496e76616c696420706169720000000081525060200191505060405180910390fd5b61142b818273ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156113ca57600080fd5b505afa1580156113de573d6000803e3d6000fd5b505050506040513d60208110156113f457600080fd5b81019080805190602001909291905050508373ffffffffffffffffffffffffffffffffffffffff166118359092919063ffffffff16565b6000808273ffffffffffffffffffffffffffffffffffffffff166389afcb44306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1681526020019150506040805180830381600087803b15801561149657600080fd5b505af11580156114aa573d6000803e3d6000fd5b505050506040513d60408110156114c057600080fd5b810190808051906020019092919080519060200190929190505050915091508273ffffffffffffffffffffffffffffffffffffffff16630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b15801561152557600080fd5b505afa158015611539573d6000803e3d6000fd5b505050506040513d602081101561154f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161461159d57808280925081935050505b60008211806115ac5750600081115b1561182e576115bd85858484611a18565b5060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561164757600080fd5b505afa15801561165b573d6000803e3d6000fd5b505050506040513d602081101561167157600080fd5b8101908080519060200190929190505050905060006116ad606461169f605085611ede90919063ffffffff16565b611f7390919063ffffffff16565b905060006116c48284611ffc90919063ffffffff16565b90506117317f0000000000000000000000000000000000000000000000000000000000000000837f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166118359092919063ffffffff16565b61179e600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16827f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166118359092919063ffffffff16565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fd06b1d7ed79b664d17472c6f6997b929f1abe463ccccb4e5b6a0038f2f730c1588888860405180848152602001838152602001828152602001935050505060405180910390a45050505b5050505050565b600060608473ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8585604051602401808373ffffffffffffffffffffffffffffffffffffffff168152602001828152602001925050506040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b602083106118f857805182526020820191506020810190506020830392506118d5565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461195a576040519150601f19603f3d011682016040523d82523d6000602084013e61195f565b606091505b509150915081801561199f575060008151148061199e575080806020019051602081101561198c57600080fd5b81019080805190602001909291905050505b5b611a11576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f5361666545524332303a205472616e73666572206661696c656400000000000081525060200191505060405180910390fd5b5050505050565b60008373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415611b79576000611a63838561207f90919063ffffffff16565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415611ac157809150611b73565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415611b4657611b3f7f000000000000000000000000000000000000000000000000000000000000000082612102565b9150611b72565b6000611b5187610dec565b9050611b5f87828430612138565b9150611b6e8182846000611a18565b9250505b5b50611ed6565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415611bf057611be983611bdb8685612102565b61207f90919063ffffffff16565b9050611ed5565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611c6757611c6082611c528786612102565b61207f90919063ffffffff16565b9050611ed4565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415611d2957611d227f0000000000000000000000000000000000000000000000000000000000000000611d1d85611d0f887f00000000000000000000000000000000000000000000000000000000000000008830612138565b61207f90919063ffffffff16565b612102565b9050611ed3565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611deb57611de47f0000000000000000000000000000000000000000000000000000000000000000611ddf84611dd1897f00000000000000000000000000000000000000000000000000000000000000008930612138565b61207f90919063ffffffff16565b612102565b9050611ed2565b6000611df686610dec565b90506000611e0386610dec565b90508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611e5757611e508287611e4a8a868a30612138565b87611a18565b9250611ecf565b8673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611ea957611ea2878287611e9d8a868a30612138565b611a18565b9250611ece565b611ecb8282611eba8a868a30612138565b611ec68a868a30612138565b611a18565b92505b5b50505b5b5b5b5b949350505050565b600080821480611efb5750828283850292508281611ef857fe5b04145b611f6d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d6d6174682d6d756c2d6f766572666c6f7700000000000000000000000081525060200191505060405180910390fd5b92915050565b6000808211611fea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f6469766973696f6e206279207a65726f0000000000000000000000000000000081525060200191505060405180910390fd5b818381611ff357fe5b04905092915050565b6000828284039150811115612079576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f64732d6d6174682d7375622d756e646572666c6f77000000000000000000000081525060200191505060405180910390fd5b92915050565b60008282840191508110156120fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d6d6174682d6164642d6f766572666c6f7700000000000000000000000081525060200191505060405180910390fd5b92915050565b6000612130837f00000000000000000000000000000000000000000000000000000000000000008430612138565b905092915050565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e6a4390587876040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b1580156121e057600080fd5b505afa1580156121f4573d6000803e3d6000fd5b505050506040513d602081101561220a57600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156122c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f517569636b436f6e7665727465723a2043616e6e6f7420636f6e76657274000081525060200191505060405180910390fd5b6122eb81858873ffffffffffffffffffffffffffffffffffffffff166118359092919063ffffffff16565b6000808273ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561233457600080fd5b505afa158015612348573d6000803e3d6000fd5b505050506040513d606081101561235e57600080fd5b81019080805190602001909291908051906020019092919080519060200190929190505050506dffffffffffffffffffffffffffff1691506dffffffffffffffffffffffffffff1691508273ffffffffffffffffffffffffffffffffffffffff16630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b1580156123ee57600080fd5b505afa158015612402573d6000803e3d6000fd5b505050506040513d602081101561241857600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1614156126c2576000612512838a73ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156124c957600080fd5b505afa1580156124dd573d6000803e3d6000fd5b505050506040513d60208110156124f357600080fd5b8101908080519060200190929190505050611ffc90919063ffffffff16565b9050600061252b6103e583611ede90919063ffffffff16565b9050612554816125466103e887611ede90919063ffffffff16565b61207f90919063ffffffff16565b6125678483611ede90919063ffffffff16565b8161256e57fe5b0495508473ffffffffffffffffffffffffffffffffffffffff1663022c0d9f6000888a600067ffffffffffffffff811180156125a957600080fd5b506040519080825280601f01601f1916602001820160405280156125dc5781602001600182028036833780820191505090505b506040518563ffffffff1660e01b8152600401808581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612654578082015181840152602081019050612639565b50505050905090810190601f1680156126815780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156126a357600080fd5b505af11580156126b7573d6000803e3d6000fd5b505050505050612924565b6000612778828a73ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561272f57600080fd5b505afa158015612743573d6000803e3d6000fd5b505050506040513d602081101561275957600080fd5b8101908080519060200190929190505050611ffc90919063ffffffff16565b905060006127916103e583611ede90919063ffffffff16565b90506127ba816127ac6103e886611ede90919063ffffffff16565b61207f90919063ffffffff16565b6127cd8583611ede90919063ffffffff16565b816127d457fe5b0495508473ffffffffffffffffffffffffffffffffffffffff1663022c0d9f8760008a600067ffffffffffffffff8111801561280f57600080fd5b506040519080825280601f01601f1916602001820160405280156128425781602001600182028036833780820191505090505b506040518563ffffffff1660e01b8152600401808581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156128ba57808201518184015260208101905061289f565b50505050905090810190601f1680156128e75780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561290957600080fd5b505af115801561291d573d6000803e3d6000fd5b5050505050505b50505094935050505056fea26469706673582212206c4437f38c17a5ccf4a490f8ea565e810bc90a668045bf95c65e594248446c5664736f6c634300060c00330000000000000000000000005757371414417b8c6caad45baef941abc7d3ab32000000000000000000000000958d208cdf087843e9ad98d23823d32e17d723a1000000000000000000000000b5c064f955d8e7f38fe0460c556a72987494ee170000000000000000000000007ceb23fd6bc0add59e62ac25578270cff1b9f619000000000000000000000000cf0b86f9944a60a0ba22b51a33c11d9e4de1ce9f
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000005757371414417b8c6caad45baef941abc7d3ab32000000000000000000000000958d208cdf087843e9ad98d23823d32e17d723a1000000000000000000000000b5c064f955d8e7f38fe0460c556a72987494ee170000000000000000000000007ceb23fd6bc0add59e62ac25578270cff1b9f619000000000000000000000000cf0b86f9944a60a0ba22b51a33c11d9e4de1ce9f
-----Decoded View---------------
Arg [0] : _factory (address): 0x5757371414417b8c6caad45baef941abc7d3ab32
Arg [1] : _dragonLair (address): 0x958d208cdf087843e9ad98d23823d32e17d723a1
Arg [2] : _quick (address): 0xb5c064f955d8e7f38fe0460c556a72987494ee17
Arg [3] : _weth (address): 0x7ceb23fd6bc0add59e62ac25578270cff1b9f619
Arg [4] : _treasury (address): 0xcf0b86f9944a60a0ba22b51a33c11d9e4de1ce9f
-----Encoded View---------------
5 Constructor Arguments found :
Arg [0] : 0000000000000000000000005757371414417b8c6caad45baef941abc7d3ab32
Arg [1] : 000000000000000000000000958d208cdf087843e9ad98d23823d32e17d723a1
Arg [2] : 000000000000000000000000b5c064f955d8e7f38fe0460c556a72987494ee17
Arg [3] : 0000000000000000000000007ceb23fd6bc0add59e62ac25578270cff1b9f619
Arg [4] : 000000000000000000000000cf0b86f9944a60a0ba22b51a33c11d9e4de1ce9f
Deployed ByteCode Sourcemap
9388:9503:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8380:385;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12670:360;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9806:29;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8773:301;;;:::i;:::-;;9894:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;9637:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8058:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11041:337;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10801:190;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11386:207;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12446:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9518:42;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8085:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;9699:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8380:385;9136:5;;;;;;;;;;9122:19;;:10;:19;;;9114:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8485:6:::1;8481:277;;;8536:1;8516:22;;:8;:22;;;;:34;;;;8542:8;8516:34;8508:68;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;8650:8;8622:37;;8643:5;::::0;::::1;;;;;;;;8622:37;;;;;;;;;;;;8682:8;8674:5;::::0;:16:::1;;;;;;;;;;;;;;;;;;8481:277;;;8738:8;8723:12;;:23;;;;;;;;;;;;;;;;;;8481:277;8380:385:::0;;;:::o;12670:360::-;11901:9;11887:23;;:10;:23;;;11879:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12894:11:::1;12908:6;;:13;;12894:27;;12937:9;12932:91;12956:3;12952:1;:7;12932:91;;;12981:30;12990:6;;12997:1;12990:9;;;;;;;;;;;;;;;13001:6;;13008:1;13001:9;;;;;;;;;;;;;;;12981:8;:30::i;:::-;12961:3;;;;;;;12932:91;;;;11954:1;12670:360:::0;;;;:::o;9806:29::-;;;:::o;8773:301::-;8817:21;8841:12;;;;;;;;;;;8817:36;;8888:13;8874:27;;:10;:27;;;8866:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8984:13;8956:42;;8977:5;;;;;;;;;;8956:42;;;;;;;;;;;;9017:13;9009:5;;:21;;;;;;;;;;;;;;;;;;9064:1;9041:12;;:25;;;;;;;;;;;;;;;;;;8773:301;:::o;9894:23::-;;;;;;;;;;;;;:::o;9637:35::-;;;:::o;8058:20::-;;;;;;;;;;;;:::o;11041:337::-;9136:5;;;;;;;;;;9122:19;;:10;:19;;;9114:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11171:5:::1;11162:14;;:5;:14;;;;:31;;;;;11189:4;11180:13;;:5;:13;;;;11162:31;:50;;;;;11206:6;11197:15;;:5;:15;;;;11162:50;11140:130;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;11321:6;11303:8;:15;11312:5;11303:15;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;11363:6;11343:27;;11356:5;11343:27;;;;;;;;;;;;11041:337:::0;;:::o;10801:190::-;10856:14;10892:8;:15;10901:5;10892:15;;;;;;;;;;;;;;;;;;;;;;;;;10883:24;;10940:1;10922:20;;:6;:20;;;10918:66;;;10968:4;10959:13;;10918:66;10801:190;;;:::o;11386:207::-;9136:5;;;;;;;;;;9122:19;;:10;:19;;;9114:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11488:1:::1;11467:23;;:9;:23;;;;11459:52;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;11533:9;11522:8;;:20;;;;;;;;;;;;;;;;;;11576:8;;;;;;;;;;;11560:25;;;;;;;;;;;;11386:207:::0;:::o;12446:111::-;11901:9;11887:23;;:10;:23;;;11879:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12525:24:::1;12534:6;12542;12525:8;:24::i;:::-;12446:111:::0;;:::o;9518:42::-;;;:::o;8085:27::-;;;;;;;;;;;;;:::o;9699:30::-;;;:::o;13079:1369::-;13198:19;13235:7;:15;;;13251:6;13259;13235:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13198:69;;13311:1;13286:27;;13294:4;13286:27;;;;13278:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13426:117;13483:4;13503;:14;;;13526:4;13503:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13441:4;13426:34;;;;:117;;;;;:::i;:::-;13579:15;13596;13615:4;:9;;;13633:4;13615:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13578:61;;;;13664:4;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13654:23;;:6;:23;;;13650:95;;13716:7;13725;13694:39;;;;;;;;13650:95;13771:1;13761:7;:11;:26;;;;13786:1;13776:7;:11;13761:26;13757:670;;;13804:46;13817:6;13825;13833:7;13842;13804:12;:46::i;:::-;;13867:19;13896:5;13889:23;;;13921:4;13889:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13867:60;;13944:23;13970:28;13994:3;13970:19;13986:2;13970:11;:15;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;13944:54;;14013:21;14037:32;14053:15;14037:11;:15;;:32;;;;:::i;:::-;14013:56;;14084:55;14111:10;14123:15;14091:5;14084:26;;;;:55;;;;;:::i;:::-;14154:51;14181:8;;;;;;;;;;;14191:13;14161:5;14154:26;;;;:51;;;;;:::i;:::-;14308:6;14225:190;;14283:6;14225:190;;14254:10;14225:190;;;14333:7;14359;14385:11;14225:190;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13757:670;;;;13079:1369;;;;;:::o;2651:302::-;2736:12;2750:17;2779:5;2771:19;;2814:10;2826:2;2830:6;2791:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2771:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2735:103;;;;2857:7;:57;;;;;2884:1;2869:4;:11;:16;:44;;;;2900:4;2889:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2869:44;2857:57;2849:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2651:302;;;;;:::o;14553:2534::-;14702:16;14770:6;14760:16;;:6;:16;;;14756:2324;;;14793:14;14810:20;14822:7;14810;:11;;:20;;;;:::i;:::-;14793:37;;14859:5;14849:15;;:6;:15;;;14845:383;;;14896:6;14885:17;;14845:383;;;14938:4;14928:14;;:6;:14;;;14924:304;;;14974:22;14983:4;14989:6;14974:8;:22::i;:::-;14963:33;;14924:304;;;15037:14;15054:17;15064:6;15054:9;:17::i;:::-;15037:34;;15099:44;15105:6;15113;15121;15137:4;15099:5;:44::i;:::-;15090:53;;15173:39;15186:6;15194;15202;15210:1;15173:12;:39::i;:::-;15162:50;;14924:304;;14845:383;14756:2324;;;;15259:5;15249:15;;:6;:15;;;15245:1835;;;15324:38;15354:7;15324:25;15333:6;15341:7;15324:8;:25::i;:::-;:29;;:38;;;;:::i;:::-;15313:49;;15245:1835;;;15394:5;15384:15;;:6;:15;;;15380:1700;;;15460:38;15490:7;15460:25;15469:6;15477:7;15460:8;:25::i;:::-;:29;;:38;;;;:::i;:::-;15449:49;;15380:1700;;;15530:4;15520:14;;:6;:14;;;15516:1564;;;15593:121;15620:4;15643:56;15691:7;15643:43;15649:6;15657:4;15663:7;15680:4;15643:5;:43::i;:::-;:47;;:56;;;;:::i;:::-;15593:8;:121::i;:::-;15582:132;;15516:1564;;;15746:4;15736:14;;:6;:14;;;15732:1348;;;15809:121;15836:4;15859:56;15907:7;15859:43;15865:6;15873:4;15879:7;15896:4;15859:5;:43::i;:::-;:47;;:56;;;;:::i;:::-;15809:8;:121::i;:::-;15798:132;;15732:1348;;;15994:15;16012:17;16022:6;16012:9;:17::i;:::-;15994:35;;16044:15;16062:17;16072:6;16062:9;:17::i;:::-;16044:35;;16109:6;16098:17;;:7;:17;;;16094:975;;;16210:189;16245:7;16275:6;16304:46;16310:6;16318:7;16327;16344:4;16304:5;:46::i;:::-;16373:7;16210:12;:189::i;:::-;16199:200;;16094:975;;;16436:6;16425:17;;:7;:17;;;16421:648;;;16537:189;16572:6;16601:7;16631;16661:46;16667:6;16675:7;16684;16701:4;16661:5;:46::i;:::-;16537:12;:189::i;:::-;16526:200;;16421:648;;;16778:275;16813:7;16843;16919:46;16925:6;16933:7;16942;16959:4;16919:5;:46::i;:::-;16988;16994:6;17002:7;17011;17028:4;16988:5;:46::i;:::-;16778:12;:275::i;:::-;16767:286;;16421:648;16094:975;15732:1348;;;15516:1564;15380:1700;15245:1835;14756:2324;14553:2534;;;;;;:::o;552:142::-;604:6;636:1;631;:6;:30;;;;660:1;655;650;646;:5;642:9;;;641:15;;;;;;:20;631:30;623:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;552:142;;;;:::o;702:137::-;754:7;786:1;782;:5;774:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;830:1;826;:5;;;;;;819:12;;702:137;;;;:::o;415:129::-;467:6;509:1;503;499;:5;495:9;;;494:16;;486:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;415:129;;;;:::o;279:128::-;331:6;373:1;367;363;:5;359:9;;;358:16;;350:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;279:128;;;;:::o;18678:210::-;18765:17;18836:44;18842:5;18849;18856:8;18874:4;18836:5;:44::i;:::-;18824:56;;18678:210;;;;:::o;17181:1447::-;17323:17;17396:19;17446:7;:15;;;17462:9;17473:7;17446:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17396:86;;17526:1;17501:27;;17509:4;17501:27;;;;17493:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17586:55;17625:4;17632:8;17593:9;17586:30;;;;:55;;;;;:::i;:::-;17704:16;17722;17744:4;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17703:59;;;;;;;;;17790:4;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17777:26;;:9;:26;;;17773:848;;;17820:19;17842:56;17889:8;17849:9;17842:27;;;17878:4;17842:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:46;;:56;;;;:::i;:::-;17820:78;;17913:23;17939:20;17955:3;17939:11;:15;;:20;;;;:::i;:::-;17913:46;;18052:39;18075:15;18052:18;18065:4;18052:8;:12;;:18;;;;:::i;:::-;:22;;:39;;;;:::i;:::-;18003:29;18023:8;18003:15;:19;;:29;;;;:::i;:::-;:88;;;;;;17974:117;;18120:4;:9;;;18130:1;18133:9;18144:2;18158:1;18148:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18120:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17773:848;;;;;18238:19;18260:56;18307:8;18267:9;18260:27;;;18296:4;18260:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:46;;:56;;;;:::i;:::-;18238:78;;18331:23;18357:20;18373:3;18357:11;:15;;:20;;;;:::i;:::-;18331:46;;18470:39;18493:15;18470:18;18483:4;18470:8;:12;;:18;;;;:::i;:::-;:22;;:39;;;;:::i;:::-;18421:29;18441:8;18421:15;:19;;:29;;;;:::i;:::-;:88;;;;;;18392:117;;18524:4;:9;;;18534;18545:1;18548:2;18562:1;18552:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18524:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17773:848;;;17181:1447;;;;;;;;;:::o
Swarm Source
ipfs://6c4437f38c17a5ccf4a490f8ea565e810bc90a668045bf95c65e594248446c56
Age | Block | Fee Address | BC Fee Address | Voting Power | Jailed | Incoming |
---|
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.