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-11-09 */ // 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; } interface ITokenSwap { function quickToQuickX(uint256 quickAmount) external; } 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; address public constant newQuick = address(0xB5C064F955D8e7F38fE0460C556a72987494eE17); ITokenSwap public constant tokenSwap = ITokenSwap(address(0x333068D06563a8DfDBF330A0e04A9d128e98bf5a)); // 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)); IERC20(quick).approve(address(tokenSwap), amountQUICK); tokenSwap.quickToQuickX(amountQUICK); uint256 amountNewQUICK = IERC20(newQuick).balanceOf(address(this)); uint256 dragonLairShare = amountNewQUICK.mul(80).div(100); uint256 treasuryShare = amountNewQUICK.sub(dragonLairShare); IERC20(newQuick).safeTransfer(dragonLair, dragonLairShare); IERC20(newQuick).safeTransfer(treasury, treasuryShare); emit LogConvert( msg.sender, token0, token1, amount0, amount1, amountNewQUICK ); } } // 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":"newQuick","outputs":[{"internalType":"address","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":[],"name":"tokenSwap","outputs":[{"internalType":"contract ITokenSwap","name":"","type":"address"}],"stateMutability":"view","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
61010060405234801561001157600080fd5b50604051612ee5380380612ee5833981810160405260a081101561003457600080fd5b810190808051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a38473ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b815250508373ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508273ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508173ffffffffffffffffffffffffffffffffffffffff1660e08173ffffffffffffffffffffffffffffffffffffffff1660601b8152505080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050505060805160601c60a05160601c60c05160601c60e05160601c612c166102cf600039806109245280610cc55280610f355280611d745280611dcb5280611f1a5280611f715280611f9a5280611fdc5280612033528061205c525080610c6e5280611264528061167052806117345280611d185280611e2c5280611ea352806123bb525080610b4d528061199352508061121a528061128a52806123ee5250612c166000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80639653dee511610097578063bd1b820c11610066578063bd1b820c14610487578063c45a0155146104eb578063e30c39781461051f578063fdd3a8791461055357610100565b80639653dee51461033d5780639d22ae8c14610371578063a761a939146103d5578063b14f2a391461044357610100565b806361d027b3116100d357806361d027b31461026d57806374617891146102a157806375dbbba8146102d55780638da5cb5b1461030957610100565b8063078dfbe714610105578063303e6aa4146101615780633fc8cef31461022f5780634e71e0c814610263575b600080fd5b61015f6004803603606081101561011b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190803515159060200190929190505050610587565b005b61022d6004803603604081101561017757600080fd5b810190808035906020019064010000000081111561019457600080fd5b8201836020820111156101a657600080fd5b803590602001918460208302840111640100000000831117156101c857600080fd5b9091929391929390803590602001906401000000008111156101e957600080fd5b8201836020820111156101fb57600080fd5b8035906020019184602083028401116401000000008311171561021d57600080fd5b90919293919293905050506107ff565b005b610237610922565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61026b610946565b005b610275610b0d565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102a9610b33565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102dd610b4b565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610311610b6f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610345610b93565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103d36004803603604081101561038757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bab565b005b610417600480360360208110156103eb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e9a565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104856004803603602081101561045957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f5c565b005b6104e96004803603604081101561049d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611169565b005b6104f3611218565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61052761123c565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61055b611262565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610648576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b81156107b857600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415806106875750805b6106f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f776e61626c653a207a65726f2061646472657373000000000000000000000081525060200191505060405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3826000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506107fa565b82600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b505050565b3273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146108a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f517569636b436f6e7665727465723a206d7573742075736520454f410000000081525060200191505060405180910390fd5b600084849050905060005b8181101561091a5761090d8686838181106108c257fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff168585848181106108eb57fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff16611286565b80806001019150506108ab565b505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a0e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e657281525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b73b5c064f955d8e7f38fe0460c556a72987494ee1781565b7f000000000000000000000000000000000000000000000000000000000000000081565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b73333068d06563a8dfdbf330a0e04a9d128e98bf5a81565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c6c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015610d1457507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015610d4c57508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b610dbe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f517569636b436f6e7665727465723a20496e76616c696420627269646765000081525060200191505060405180910390fd5b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f2e103aa707acc565f9a1547341914802b2bfe977fd79c595209f248ae4b0061360405160405180910390a35050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610f57577f000000000000000000000000000000000000000000000000000000000000000090505b919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461101d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156110c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f496e61766c69642074726561737572790000000000000000000000000000000081525060200191505060405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fc714d22a2f08b695f81e7c707058db484aa5b4d6b4c9fd64beb10fe85832f60860405160405180910390a250565b3273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461120a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f517569636b436f6e7665727465723a206d7573742075736520454f410000000081525060200191505060405180910390fd5b6112148282611286565b5050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e6a4390584846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b15801561132d57600080fd5b505afa158015611341573d6000803e3d6000fd5b505050506040513d602081101561135757600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561140d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f517569636b436f6e7665727465723a20496e76616c696420706169720000000081525060200191505060405180910390fd5b6114d9818273ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561147857600080fd5b505afa15801561148c573d6000803e3d6000fd5b505050506040513d60208110156114a257600080fd5b81019080805190602001909291905050508373ffffffffffffffffffffffffffffffffffffffff16611ae69092919063ffffffff16565b6000808273ffffffffffffffffffffffffffffffffffffffff166389afcb44306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1681526020019150506040805180830381600087803b15801561154457600080fd5b505af1158015611558573d6000803e3d6000fd5b505050506040513d604081101561156e57600080fd5b810190808051906020019092919080519060200190929190505050915091508273ffffffffffffffffffffffffffffffffffffffff16630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b1580156115d357600080fd5b505afa1580156115e7573d6000803e3d6000fd5b505050506040513d60208110156115fd57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161461164b57808280925081935050505b600082118061165a5750600081115b15611adf5761166b85858484611cc9565b5060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156116f557600080fd5b505afa158015611709573d6000803e3d6000fd5b505050506040513d602081101561171f57600080fd5b810190808051906020019092919050505090507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373333068d06563a8dfdbf330a0e04a9d128e98bf5a836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156117d757600080fd5b505af11580156117eb573d6000803e3d6000fd5b505050506040513d602081101561180157600080fd5b81019080805190602001909291905050505073333068d06563a8dfdbf330a0e04a9d128e98bf5a73ffffffffffffffffffffffffffffffffffffffff1663f60d6ceb826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561187a57600080fd5b505af115801561188e573d6000803e3d6000fd5b50505050600073b5c064f955d8e7f38fe0460c556a72987494ee1773ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561190f57600080fd5b505afa158015611923573d6000803e3d6000fd5b505050506040513d602081101561193957600080fd5b810190808051906020019092919050505090506000611975606461196760508561218f90919063ffffffff16565b61222490919063ffffffff16565b9050600061198c82846122ad90919063ffffffff16565b90506119ed7f00000000000000000000000000000000000000000000000000000000000000008373b5c064f955d8e7f38fe0460c556a72987494ee1773ffffffffffffffffffffffffffffffffffffffff16611ae69092919063ffffffff16565b611a4e600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168273b5c064f955d8e7f38fe0460c556a72987494ee1773ffffffffffffffffffffffffffffffffffffffff16611ae69092919063ffffffff16565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fd06b1d7ed79b664d17472c6f6997b929f1abe463ccccb4e5b6a0038f2f730c1589898860405180848152602001838152602001828152602001935050505060405180910390a4505050505b5050505050565b600060608473ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8585604051602401808373ffffffffffffffffffffffffffffffffffffffff168152602001828152602001925050506040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b60208310611ba95780518252602082019150602081019050602083039250611b86565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611c0b576040519150601f19603f3d011682016040523d82523d6000602084013e611c10565b606091505b5091509150818015611c505750600081511480611c4f5750808060200190516020811015611c3d57600080fd5b81019080805190602001909291905050505b5b611cc2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f5361666545524332303a205472616e73666572206661696c656400000000000081525060200191505060405180910390fd5b5050505050565b60008373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415611e2a576000611d14838561233090919063ffffffff16565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415611d7257809150611e24565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415611df757611df07f0000000000000000000000000000000000000000000000000000000000000000826123b3565b9150611e23565b6000611e0287610e9a565b9050611e10878284306123e9565b9150611e1f8182846000611cc9565b9250505b5b50612187565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415611ea157611e9a83611e8c86856123b3565b61233090919063ffffffff16565b9050612186565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611f1857611f1182611f0387866123b3565b61233090919063ffffffff16565b9050612185565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415611fda57611fd37f0000000000000000000000000000000000000000000000000000000000000000611fce85611fc0887f000000000000000000000000000000000000000000000000000000000000000088306123e9565b61233090919063ffffffff16565b6123b3565b9050612184565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561209c576120957f000000000000000000000000000000000000000000000000000000000000000061209084612082897f000000000000000000000000000000000000000000000000000000000000000089306123e9565b61233090919063ffffffff16565b6123b3565b9050612183565b60006120a786610e9a565b905060006120b486610e9a565b90508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156121085761210182876120fb8a868a306123e9565b87611cc9565b9250612180565b8673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561215a5761215387828761214e8a868a306123e9565b611cc9565b925061217f565b61217c828261216b8a868a306123e9565b6121778a868a306123e9565b611cc9565b92505b5b50505b5b5b5b5b949350505050565b6000808214806121ac57508282838502925082816121a957fe5b04145b61221e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d6d6174682d6d756c2d6f766572666c6f7700000000000000000000000081525060200191505060405180910390fd5b92915050565b600080821161229b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f6469766973696f6e206279207a65726f0000000000000000000000000000000081525060200191505060405180910390fd5b8183816122a457fe5b04905092915050565b600082828403915081111561232a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f64732d6d6174682d7375622d756e646572666c6f77000000000000000000000081525060200191505060405180910390fd5b92915050565b60008282840191508110156123ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d6d6174682d6164642d6f766572666c6f7700000000000000000000000081525060200191505060405180910390fd5b92915050565b60006123e1837f000000000000000000000000000000000000000000000000000000000000000084306123e9565b905092915050565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e6a4390587876040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b15801561249157600080fd5b505afa1580156124a5573d6000803e3d6000fd5b505050506040513d60208110156124bb57600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612571576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f517569636b436f6e7665727465723a2043616e6e6f7420636f6e76657274000081525060200191505060405180910390fd5b61259c81858873ffffffffffffffffffffffffffffffffffffffff16611ae69092919063ffffffff16565b6000808273ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b1580156125e557600080fd5b505afa1580156125f9573d6000803e3d6000fd5b505050506040513d606081101561260f57600080fd5b81019080805190602001909291908051906020019092919080519060200190929190505050506dffffffffffffffffffffffffffff1691506dffffffffffffffffffffffffffff1691508273ffffffffffffffffffffffffffffffffffffffff16630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b15801561269f57600080fd5b505afa1580156126b3573d6000803e3d6000fd5b505050506040513d60208110156126c957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1614156129735760006127c3838a73ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561277a57600080fd5b505afa15801561278e573d6000803e3d6000fd5b505050506040513d60208110156127a457600080fd5b81019080805190602001909291905050506122ad90919063ffffffff16565b905060006127dc6103e58361218f90919063ffffffff16565b9050612805816127f76103e88761218f90919063ffffffff16565b61233090919063ffffffff16565b612818848361218f90919063ffffffff16565b8161281f57fe5b0495508473ffffffffffffffffffffffffffffffffffffffff1663022c0d9f6000888a600067ffffffffffffffff8111801561285a57600080fd5b506040519080825280601f01601f19166020018201604052801561288d5781602001600182028036833780820191505090505b506040518563ffffffff1660e01b8152600401808581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156129055780820151818401526020810190506128ea565b50505050905090810190601f1680156129325780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561295457600080fd5b505af1158015612968573d6000803e3d6000fd5b505050505050612bd5565b6000612a29828a73ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156129e057600080fd5b505afa1580156129f4573d6000803e3d6000fd5b505050506040513d6020811015612a0a57600080fd5b81019080805190602001909291905050506122ad90919063ffffffff16565b90506000612a426103e58361218f90919063ffffffff16565b9050612a6b81612a5d6103e88661218f90919063ffffffff16565b61233090919063ffffffff16565b612a7e858361218f90919063ffffffff16565b81612a8557fe5b0495508473ffffffffffffffffffffffffffffffffffffffff1663022c0d9f8760008a600067ffffffffffffffff81118015612ac057600080fd5b506040519080825280601f01601f191660200182016040528015612af35781602001600182028036833780820191505090505b506040518563ffffffff1660e01b8152600401808581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612b6b578082015181840152602081019050612b50565b50505050905090810190601f168015612b985780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015612bba57600080fd5b505af1158015612bce573d6000803e3d6000fd5b5050505050505b50505094935050505056fea264697066735822122028d5fd99bfa1efa8944fb7466d65d275e3be6f50df87d33a3ed7297edd306a8964736f6c634300060c00330000000000000000000000005757371414417b8c6caad45baef941abc7d3ab32000000000000000000000000958d208cdf087843e9ad98d23823d32e17d723a1000000000000000000000000831753dd7087cac61ab5644b308642cc1c33dc130000000000000000000000000d500b1d8e8ef31e21c99d1db9a6444d3adf1270000000000000000000000000cf0b86f9944a60a0ba22b51a33c11d9e4de1ce9f
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000005757371414417b8c6caad45baef941abc7d3ab32000000000000000000000000958d208cdf087843e9ad98d23823d32e17d723a1000000000000000000000000831753dd7087cac61ab5644b308642cc1c33dc130000000000000000000000000d500b1d8e8ef31e21c99d1db9a6444d3adf1270000000000000000000000000cf0b86f9944a60a0ba22b51a33c11d9e4de1ce9f
-----Decoded View---------------
Arg [0] : _factory (address): 0x5757371414417b8c6caad45baef941abc7d3ab32
Arg [1] : _dragonLair (address): 0x958d208cdf087843e9ad98d23823d32e17d723a1
Arg [2] : _quick (address): 0x831753dd7087cac61ab5644b308642cc1c33dc13
Arg [3] : _weth (address): 0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270
Arg [4] : _treasury (address): 0xcf0b86f9944a60a0ba22b51a33c11d9e4de1ce9f
-----Encoded View---------------
5 Constructor Arguments found :
Arg [0] : 0000000000000000000000005757371414417b8c6caad45baef941abc7d3ab32
Arg [1] : 000000000000000000000000958d208cdf087843e9ad98d23823d32e17d723a1
Arg [2] : 000000000000000000000000831753dd7087cac61ab5644b308642cc1c33dc13
Arg [3] : 0000000000000000000000000d500b1d8e8ef31e21c99d1db9a6444d3adf1270
Arg [4] : 000000000000000000000000cf0b86f9944a60a0ba22b51a33c11d9e4de1ce9f
Deployed ByteCode Sourcemap
9366:9876:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8358:385;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12805:360;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9941:29;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8751:301;;;:::i;:::-;;10029:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;9716:86;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;9615:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8036:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;9811:102;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11176:337;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10936:190;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11521:207;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12581:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9496:42;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8063:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;9677:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8358:385;9114:5;;;;;;;;;;9100:19;;:10;:19;;;9092:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8463:6:::1;8459:277;;;8514:1;8494:22;;:8;:22;;;;:34;;;;8520:8;8494:34;8486:68;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;8628:8;8600:37;;8621:5;::::0;::::1;;;;;;;;8600:37;;;;;;;;;;;;8660:8;8652:5;::::0;:16:::1;;;;;;;;;;;;;;;;;;8459:277;;;8716:8;8701:12;;:23;;;;;;;;;;;;;;;;;;8459:277;8358:385:::0;;;:::o;12805:360::-;12036:9;12022:23;;:10;:23;;;12014:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13029:11:::1;13043:6;;:13;;13029:27;;13072:9;13067:91;13091:3;13087:1;:7;13067:91;;;13116:30;13125:6;;13132:1;13125:9;;;;;;;;;;;;;;;13136:6;;13143:1;13136:9;;;;;;;;;;;;;;;13116:8;:30::i;:::-;13096:3;;;;;;;13067:91;;;;12089:1;12805:360:::0;;;;:::o;9941:29::-;;;:::o;8751:301::-;8795:21;8819:12;;;;;;;;;;;8795:36;;8866:13;8852:27;;:10;:27;;;8844:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8962:13;8934:42;;8955:5;;;;;;;;;;8934:42;;;;;;;;;;;;8995:13;8987:5;;:21;;;;;;;;;;;;;;;;;;9042:1;9019:12;;:25;;;;;;;;;;;;;;;;;;8751:301;:::o;10029:23::-;;;;;;;;;;;;;:::o;9716:86::-;9759:42;9716:86;:::o;9615:35::-;;;:::o;8036:20::-;;;;;;;;;;;;:::o;9811:102::-;9869:42;9811:102;:::o;11176:337::-;9114:5;;;;;;;;;;9100:19;;:10;:19;;;9092:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11306:5:::1;11297:14;;:5;:14;;;;:31;;;;;11324:4;11315:13;;:5;:13;;;;11297:31;:50;;;;;11341:6;11332:15;;:5;:15;;;;11297:50;11275:130;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;11456:6;11438:8;:15;11447:5;11438:15;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;11498:6;11478:27;;11491:5;11478:27;;;;;;;;;;;;11176:337:::0;;:::o;10936:190::-;10991:14;11027:8;:15;11036:5;11027:15;;;;;;;;;;;;;;;;;;;;;;;;;11018:24;;11075:1;11057:20;;:6;:20;;;11053:66;;;11103:4;11094:13;;11053:66;10936:190;;;:::o;11521:207::-;9114:5;;;;;;;;;;9100:19;;:10;:19;;;9092:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11623:1:::1;11602:23;;:9;:23;;;;11594:52;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;11668:9;11657:8;;:20;;;;;;;;;;;;;;;;;;11711:8;;;;;;;;;;;11695:25;;;;;;;;;;;;11521:207:::0;:::o;12581:111::-;12036:9;12022:23;;:10;:23;;;12014:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12660:24:::1;12669:6;12677;12660:8;:24::i;:::-;12581:111:::0;;:::o;9496:42::-;;;:::o;8063:27::-;;;;;;;;;;;;;:::o;9677:30::-;;;:::o;13214:1585::-;13333:19;13370:7;:15;;;13386:6;13394;13370:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13333:69;;13446:1;13421:27;;13429:4;13421:27;;;;13413:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13561:117;13618:4;13638;:14;;;13661:4;13638:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13576:4;13561:34;;;;:117;;;;;:::i;:::-;13714:15;13731;13750:4;:9;;;13768:4;13750:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13713:61;;;;13799:4;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13789:23;;:6;:23;;;13785:95;;13851:7;13860;13829:39;;;;;;;;13785:95;13906:1;13896:7;:11;:26;;;;13921:1;13911:7;:11;13896:26;13892:886;;;13939:46;13952:6;13960;13968:7;13977;13939:12;:46::i;:::-;;14002:19;14031:5;14024:23;;;14056:4;14024:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14002:60;;14084:5;14077:21;;;9869:42;14119:11;14077:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9869:42;14146:23;;;14170:11;14146:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14199:22;9759:42;14224:26;;;14259:4;14224:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14199:66;;14280:23;14306:31;14333:3;14306:22;14325:2;14306:14;:18;;:22;;;;:::i;:::-;:26;;:31;;;;:::i;:::-;14280:57;;14352:21;14376:35;14395:15;14376:14;:18;;:35;;;;:::i;:::-;14352:59;;14426:58;14456:10;14468:15;9759:42;14426:29;;;;:58;;;;;:::i;:::-;14499:54;14529:8;;;;;;;;;;;14539:13;9759:42;14499:29;;;;:54;;;;;:::i;:::-;14656:6;14573:193;;14631:6;14573:193;;14602:10;14573:193;;;14681:7;14707;14733:14;14573:193;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13892:886;;;;;13214:1585;;;;;:::o;2577:302::-;2662:12;2676:17;2705:5;2697:19;;2740:10;2752:2;2756:6;2717:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2697:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2661:103;;;;2783:7;:57;;;;;2810:1;2795:4;:11;:16;:44;;;;2826:4;2815:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2795:44;2783:57;2775:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2577:302;;;;;:::o;14904:2534::-;15053:16;15121:6;15111:16;;:6;:16;;;15107:2324;;;15144:14;15161:20;15173:7;15161;:11;;:20;;;;:::i;:::-;15144:37;;15210:5;15200:15;;:6;:15;;;15196:383;;;15247:6;15236:17;;15196:383;;;15289:4;15279:14;;:6;:14;;;15275:304;;;15325:22;15334:4;15340:6;15325:8;:22::i;:::-;15314:33;;15275:304;;;15388:14;15405:17;15415:6;15405:9;:17::i;:::-;15388:34;;15450:44;15456:6;15464;15472;15488:4;15450:5;:44::i;:::-;15441:53;;15524:39;15537:6;15545;15553;15561:1;15524:12;:39::i;:::-;15513:50;;15275:304;;15196:383;15107:2324;;;;15610:5;15600:15;;:6;:15;;;15596:1835;;;15675:38;15705:7;15675:25;15684:6;15692:7;15675:8;:25::i;:::-;:29;;:38;;;;:::i;:::-;15664:49;;15596:1835;;;15745:5;15735:15;;:6;:15;;;15731:1700;;;15811:38;15841:7;15811:25;15820:6;15828:7;15811:8;:25::i;:::-;:29;;:38;;;;:::i;:::-;15800:49;;15731:1700;;;15881:4;15871:14;;:6;:14;;;15867:1564;;;15944:121;15971:4;15994:56;16042:7;15994:43;16000:6;16008:4;16014:7;16031:4;15994:5;:43::i;:::-;:47;;:56;;;;:::i;:::-;15944:8;:121::i;:::-;15933:132;;15867:1564;;;16097:4;16087:14;;:6;:14;;;16083:1348;;;16160:121;16187:4;16210:56;16258:7;16210:43;16216:6;16224:4;16230:7;16247:4;16210:5;:43::i;:::-;:47;;:56;;;;:::i;:::-;16160:8;:121::i;:::-;16149:132;;16083:1348;;;16345:15;16363:17;16373:6;16363:9;:17::i;:::-;16345:35;;16395:15;16413:17;16423:6;16413:9;:17::i;:::-;16395:35;;16460:6;16449:17;;:7;:17;;;16445:975;;;16561:189;16596:7;16626:6;16655:46;16661:6;16669:7;16678;16695:4;16655:5;:46::i;:::-;16724:7;16561:12;:189::i;:::-;16550:200;;16445:975;;;16787:6;16776:17;;:7;:17;;;16772:648;;;16888:189;16923:6;16952:7;16982;17012:46;17018:6;17026:7;17035;17052:4;17012:5;:46::i;:::-;16888:12;:189::i;:::-;16877:200;;16772:648;;;17129:275;17164:7;17194;17270:46;17276:6;17284:7;17293;17310:4;17270:5;:46::i;:::-;17339;17345:6;17353:7;17362;17379:4;17339:5;:46::i;:::-;17129:12;:275::i;:::-;17118:286;;16772:648;16445:975;16083:1348;;;15867:1564;15731:1700;15596:1835;15107:2324;14904:2534;;;;;;:::o;478:142::-;530:6;562:1;557;:6;:30;;;;586:1;581;576;572;:5;568:9;;;567:15;;;;;;:20;557:30;549:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;478:142;;;;:::o;628:137::-;680:7;712:1;708;:5;700:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;756:1;752;:5;;;;;;745:12;;628:137;;;;:::o;341:129::-;393:6;435:1;429;425;:5;421:9;;;420:16;;412:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;341:129;;;;:::o;205:128::-;257:6;299:1;293;289;:5;285:9;;;284:16;;276:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;205:128;;;;:::o;19029:210::-;19116:17;19187:44;19193:5;19200;19207:8;19225:4;19187:5;:44::i;:::-;19175:56;;19029:210;;;;:::o;17532:1447::-;17674:17;17747:19;17797:7;:15;;;17813:9;17824:7;17797:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17747:86;;17877:1;17852:27;;17860:4;17852:27;;;;17844:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17937:55;17976:4;17983:8;17944:9;17937:30;;;;:55;;;;;:::i;:::-;18055:16;18073;18095:4;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18054:59;;;;;;;;;18141:4;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18128:26;;:9;:26;;;18124:848;;;18171:19;18193:56;18240:8;18200:9;18193:27;;;18229:4;18193:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:46;;:56;;;;:::i;:::-;18171:78;;18264:23;18290:20;18306:3;18290:11;:15;;:20;;;;:::i;:::-;18264:46;;18403:39;18426:15;18403:18;18416:4;18403:8;:12;;:18;;;;:::i;:::-;:22;;:39;;;;:::i;:::-;18354:29;18374:8;18354:15;:19;;:29;;;;:::i;:::-;:88;;;;;;18325:117;;18471:4;:9;;;18481:1;18484:9;18495:2;18509:1;18499:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18471:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18124:848;;;;;18589:19;18611:56;18658:8;18618:9;18611:27;;;18647:4;18611:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:46;;:56;;;;:::i;:::-;18589:78;;18682:23;18708:20;18724:3;18708:11;:15;;:20;;;;:::i;:::-;18682:46;;18821:39;18844:15;18821:18;18834:4;18821:8;:12;;:18;;;;:::i;:::-;:22;;:39;;;;:::i;:::-;18772:29;18792:8;18772:15;:19;;:29;;;;:::i;:::-;:88;;;;;;18743:117;;18875:4;:9;;;18885;18896:1;18899:2;18913:1;18903:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18875:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18124:848;;;17532:1447;;;;;;;;;:::o
Swarm Source
ipfs://28d5fd99bfa1efa8944fb7466d65d275e3be6f50df87d33a3ed7297edd306a89
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.