ETH Price: $2,049.22 (-4.62%)

Contract

0x99d19c99E279dCA8e5fEbc8A19bB4AC170D8FA24
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

TokenTracker

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer226394162025-06-05 15:51:35294 days ago1749138695IN
Stable NOK: NOK Token
0 ETH0.000195054
Transfer212954072024-11-29 19:23:11482 days ago1732908191IN
Stable NOK: NOK Token
0 ETH0.0008106215.13716962
Transfer211951972024-11-15 19:31:47496 days ago1731699107IN
Stable NOK: NOK Token
0 ETH0.0008697717.8364596
Transfer211888662024-11-14 22:18:23497 days ago1731622703IN
Stable NOK: NOK Token
0 ETH0.0014389726.86460294
Transfer200402952024-06-07 13:37:47657 days ago1717767467IN
Stable NOK: NOK Token
0 ETH0.0010900220.35
Burn194334672024-03-14 13:12:59742 days ago1710421979IN
Stable NOK: NOK Token
0 ETH0.0019483761.57739933
Transfer194270512024-03-13 15:30:11743 days ago1710343811IN
Stable NOK: NOK Token
0 ETH0.0041419777.32763718
Transfer194270122024-03-13 15:22:11743 days ago1710343331IN
Stable NOK: NOK Token
0 ETH0.0037278976.44763718
Transfer165459962023-02-03 4:53:351147 days ago1675400015IN
Stable NOK: NOK Token
0.002 ETH0.0006591831.29891542
Transfer156027312022-09-24 10:50:351279 days ago1664016635IN
Stable NOK: NOK Token
0 ETH0.000517539.66200958
Mint145795762022-04-13 21:34:101443 days ago1649885650IN
Stable NOK: NOK Token
0 ETH0.0015779543.62477384
Transfer126868062021-06-22 22:41:111738 days ago1624401671IN
Stable NOK: NOK Token
0 ETH0.0019974837.3
Transfer123232792021-04-27 15:36:211794 days ago1619537781IN
Stable NOK: NOK Token
0 ETH0.0049749892.9
Mint120262552021-03-12 21:59:041840 days ago1615586344IN
Stable NOK: NOK Token
0 ETH0.00437508120
Transfer115179042020-12-24 18:23:541918 days ago1608834234IN
Stable NOK: NOK Token
0 ETH0.0011239230
Mint115163842020-12-24 12:47:341918 days ago1608814054IN
Stable NOK: NOK Token
0 ETH0.0012760635
Transfer114511602020-12-14 12:36:361928 days ago1607949396IN
Stable NOK: NOK Token
0 ETH0.0010489928
Mint114511502020-12-14 12:34:381928 days ago1607949278IN
Stable NOK: NOK Token
0 ETH0.0010937730
Transfer114230592020-12-10 4:27:381932 days ago1607574458IN
Stable NOK: NOK Token
0 ETH0.0007492820
Transfer114224952020-12-10 2:24:211933 days ago1607567061IN
Stable NOK: NOK Token
0 ETH0.0010490420
Mint114220952020-12-10 0:58:011933 days ago1607561881IN
Stable NOK: NOK Token
0 ETH0.0010937730
Transfer110557302020-10-14 19:24:291989 days ago1602703469IN
Stable NOK: NOK Token
0 ETH0.0012101653.90000014
Transfer110502332020-10-13 23:11:211990 days ago1602630681IN
Stable NOK: NOK Token
0 ETH0.002622650
Transfer110377872020-10-12 1:27:531992 days ago1602466073IN
Stable NOK: NOK Token
0 ETH0.0005837526
Mint110377462020-10-12 1:18:301992 days ago1602465510IN
Stable NOK: NOK Token
0 ETH0.0009479326
View all transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
StableNOK

Compiler Version
v0.7.2+commit.51b20bc0

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity Multiple files format)

File 1 of 2: StableNOK.sol
pragma solidity 0.7.2;
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// Author: Bitnord
// Website: https://bitnord.no
//
//===========================================================================================================
import "IERC20.sol";
//===========================================================================================================
/**
 * StableNOK ERC20 token contract
 * 
 * 
 */
contract StableNOK {

  //-------------------------------------------------------------------------------------------------------
  /**
   * Global contract variables
   * 
   */
  address public admin;
  mapping (address => uint256) private balances;
  mapping (address => uint256) private frozen;
  mapping (address => mapping (address => uint256)) private allowances;
  string  public name;
  string  public symbol;
  uint8   public decimals;
  uint256 public totalSupply;
  bool    public paused = false;
  uint256 public constant MAX_UINT = 2**256 - 1;
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
   * Contract events
   * 
   */
  event Transfer(address indexed _from,   address indexed _to,      uint256 _value);
  event Approval(address indexed _owner,  address indexed _spender, uint256 _value);
  event Paused();
  event Unpaused();
  event AdminPowersTransferred(address  indexed _previousAdmin, address indexed _newAdmin);
  event AdminPowersRenounced(address    indexed _previousAdmin);
  event FundsFrozen(address indexed _account, uint256 _amount);
  event FundsUnFrozen(address indexed _account, uint256 _amount);
  event FrozenFundsBurned(address indexed _account, uint256 _amount);
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Contract constructor
  * 
  */
  constructor() {
    admin = msg.sender;
    name = "Stable NOK";
    symbol = "NOK";
    decimals = 2;
    totalSupply = 1000;
    balances[admin] = totalSupply;
    emit Transfer(address(0), admin, totalSupply);
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * ERC20 transfer function
  * 
  */
  function transfer(address _to, uint256 _value) public returns (bool success) {
    require(!paused);
    require(_to != address(0));
    require(balances[msg.sender] >= _value);
    balances[msg.sender] -= _value;
    balances[_to] += _value;
    emit Transfer(msg.sender, _to, _value);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * ERC20 transferFrom function
  * 
  */
  function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {
    require(!paused);
    require(_from != address(0));
    require(_to != address(0));
    require(balances[_from] >= _value);
    require(allowances[_from][msg.sender] >= _value);
    balances[_to] += _value;
    balances[_from] -= _value;
    if(allowances[_from][msg.sender] != MAX_UINT) { // Allow for infinite allowance
      allowances[_from][msg.sender] -= _value;
    }
    emit Transfer(_from, _to, _value);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * ERC20 approve function
  * 
  */
  function approve(address _spender, uint256 _value) public returns (bool success) {
    require(!paused);
    require(_spender != address(0));
    allowances[msg.sender][_spender] = _value;
    emit Approval(msg.sender, _spender, _value);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * ERC20 allowance function
  * 
  */
  function allowance(address _owner, address _spender) public view returns (uint256 remaining) {
    return allowances[_owner][_spender];
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * ERC20 balanceOf function
  * 
  */
  function balanceOf(address _owner) public view returns (uint256 balance) {
    return balances[_owner];
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 safeApprove function
  * Added as alternative approval management functions to avoid known front-running attacks.
  * More info: https://docs.google.com/document/d/1YLPtQxZu1UAvO9cZ1O2RPXBbT0mooh4DYKjA_jp-RLM
  * 
  */
  function safeApprove(address _spender, uint256 _value, uint256 _expectedAllowance) public returns (bool success) {
    require(!paused);
    require(_spender != address(0));
    require(allowances[msg.sender][_spender] == _expectedAllowance);
    allowances[msg.sender][_spender] = _value;
    emit Approval(msg.sender, _spender, _value);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 increaseApproval function
  * Added as alternative approval management functions to avoid known front-running attacks.
  * More info: https://docs.google.com/document/d/1YLPtQxZu1UAvO9cZ1O2RPXBbT0mooh4DYKjA_jp-RLM
  * 
  */
  function increaseApproval(address _spender, uint _addedValue) public returns (bool success) {
    require(!paused);
    require(_spender != address(0));
    require((allowances[msg.sender][_spender] + _addedValue) >= allowances[msg.sender][_spender]);
    allowances[msg.sender][_spender] += _addedValue;
    emit Approval(msg.sender, _spender, allowances[msg.sender][_spender]);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 decreaseApproval function
  * Added as alternative approval management functions to avoid known front-running attacks.
  * More info: https://docs.google.com/document/d/1YLPtQxZu1UAvO9cZ1O2RPXBbT0mooh4DYKjA_jp-RLM
  * 
  */
  function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool success) {
    require(!paused);
    require(_spender != address(0));
    if(_subtractedValue > allowances[msg.sender][_spender]) {
      allowances[msg.sender][_spender] = 0;
    } else {
      allowances[msg.sender][_spender] = allowances[msg.sender][_spender] - _subtractedValue;
    }
    emit Approval(msg.sender, _spender, allowances[msg.sender][_spender]);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 mint function
  * 
  */
  function mint(address _account, uint256 _amount) public returns (bool success) {
    require(msg.sender == admin);
    totalSupply += _amount;
    balances[_account] += _amount;
    emit Transfer(address(0), _account, _amount);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 burn function
  * 
  */
  function burn(address _account, uint256 _amount) public returns (bool success) {
    require(msg.sender == admin);
    require(balances[_account] >= _amount);
    totalSupply -= _amount;
    balances[_account] -= _amount;
    emit Transfer(_account, address(0), _amount);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 pause function
  * 
  */
  function pause() public returns (bool success) {
    require(msg.sender == admin);
    paused = true;
    emit Paused();
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 unpause function
  * 
  */
  function unpause() public returns (bool success) {
    require(msg.sender == admin);
    paused = false;
    emit Unpaused();
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 transferAdminPowers function
  * 
  */
  function transferAdminPowers(address _newAdmin) public returns (bool success) {
    require(msg.sender == admin);
    require(_newAdmin != address(0));
    admin = _newAdmin;
    emit AdminPowersTransferred(admin, _newAdmin);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 renounceAdminPowers function
  * 
  */
  function renounceAdminPowers() public returns (bool success) {
    require(msg.sender == admin);
    admin = address(0);
    emit AdminPowersRenounced(admin);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 freeze function
  * 
  */
  function freeze(address _account, uint256 _amount) public returns (bool success) {
    require(msg.sender == admin);
    require(balances[_account] >= _amount);
    balances[_account] -=_amount;
    frozen[_account] += _amount;
    emit FundsFrozen(_account, _amount);
    emit Transfer(_account, address(0), _amount);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 unFreeze function
  * 
  */
  function unFreeze(address _account, uint256 _amount) public returns (bool success) {
    require(msg.sender == admin);
    require(frozen[_account] >= _amount);
    frozen[_account] -= _amount;
    balances[_account] += _amount;
    emit FundsUnFrozen(_account, _amount);
    emit Transfer(address(0), _account, _amount);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 burnFrozen function
  * 
  */
  function burnFrozen(address _account, uint256 _amount) public returns (bool success) {
    require(msg.sender == admin);
    require(frozen[_account] >= _amount);
    totalSupply -= _amount;
    frozen[_account] -= _amount;
    emit FrozenFundsBurned(_account, _amount);
    return true;
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 recoverERC20 function
  * Used to recover wrongly sent ERC20 tokens to the contract
  * 
  */
  function recoverERC20(address tokenAddress, uint256 tokenAmount) public returns (bool success) {
    require(msg.sender == admin);
    return IERC20(tokenAddress).transfer(admin, tokenAmount);
  }
  //-------------------------------------------------------------------------------------------------------


  //-------------------------------------------------------------------------------------------------------
  /**
  * Non-standard ERC20 receive function
  * Disallows Ether transactions to the contract address
  * 
  */
  receive() external payable {
    revert();
  }
  //-------------------------------------------------------------------------------------------------------

}

File 2 of 2: IERC20.sol
pragma solidity 0.7.2;
// SPDX-License-Identifier: MIT
/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_previousAdmin","type":"address"}],"name":"AdminPowersRenounced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_previousAdmin","type":"address"},{"indexed":true,"internalType":"address","name":"_newAdmin","type":"address"}],"name":"AdminPowersTransferred","type":"event"},{"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":"_account","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"FrozenFundsBurned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_account","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"FundsFrozen","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_account","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"FundsUnFrozen","type":"event"},{"anonymous":false,"inputs":[],"name":"Paused","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"},{"anonymous":false,"inputs":[],"name":"Unpaused","type":"event"},{"inputs":[],"name":"MAX_UINT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"remaining","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"burnFrozen","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"freeze","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"tokenAmount","type":"uint256"}],"name":"recoverERC20","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceAdminPowers","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"},{"internalType":"uint256","name":"_expectedAllowance","type":"uint256"}],"name":"safeApprove","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"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":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newAdmin","type":"address"}],"name":"transferAdminPowers","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"unFreeze","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526000600860006101000a81548160ff0219169083151502179055503480156200002c57600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600a81526020017f537461626c65204e4f4b0000000000000000000000000000000000000000000081525060049080519060200190620000ba92919062000223565b506040518060400160405280600381526020017f4e4f4b0000000000000000000000000000000000000000000000000000000000815250600590805190602001906200010892919062000223565b506002600660006101000a81548160ff021916908360ff1602179055506103e8600781905550600754600160008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6007546040518082815260200191505060405180910390a3620002c9565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200026657805160ff191683800117855562000297565b8280016001018555821562000297579182015b828111156200029657825182559160200191906001019062000279565b5b509050620002a69190620002aa565b5090565b5b80821115620002c5576000816000905550600101620002ab565b5090565b6128df80620002d96000396000f3fe60806040526004361061016a5760003560e01c806375bc67bf116100d1578063a9059cbb1161008a578063e5b5019a11610064578063e5b5019a14610981578063e991f550146109ac578063f650366214610a1d578063f851a44014610a9857610174565b8063a9059cbb1461081a578063d73dd6231461088b578063dd62ed3e146108fc57610174565b806375bc67bf146105e75780638456cb591461064e5780638980f11f1461067b57806389f1258c146106ec57806395d89b41146107195780639dc29fac146107a957610174565b8063313ce56711610123578063313ce567146104185780633f4ba83a1461044657806340c10f19146104735780635c975abb146104e4578063661884631461051157806370a082311461058257610174565b806306fdde0314610179578063095ea7b31461020957806318160ddd1461027a57806323b872dd146102a557806324bce60c146103365780632df38460146103a757610174565b3661017457600080fd5b600080fd5b34801561018557600080fd5b5061018e610ad9565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101ce5780820151818401526020810190506101b3565b50505050905090810190601f1680156101fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561021557600080fd5b506102626004803603604081101561022c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b77565b60405180821515815260200191505060405180910390f35b34801561028657600080fd5b5061028f610cbd565b6040518082815260200191505060405180910390f35b3480156102b157600080fd5b5061031e600480360360608110156102c857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610cc3565b60405180821515815260200191505060405180910390f35b34801561034257600080fd5b5061038f6004803603604081101561035957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611060565b60405180821515815260200191505060405180910390f35b3480156103b357600080fd5b50610400600480360360408110156103ca57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061125f565b60405180821515815260200191505060405180910390f35b34801561042457600080fd5b5061042d61145e565b604051808260ff16815260200191505060405180910390f35b34801561045257600080fd5b5061045b611471565b60405180821515815260200191505060405180910390f35b34801561047f57600080fd5b506104cc6004803603604081101561049657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061151a565b60405180821515815260200191505060405180910390f35b3480156104f057600080fd5b506104f9611642565b60405180821515815260200191505060405180910390f35b34801561051d57600080fd5b5061056a6004803603604081101561053457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611655565b60405180821515815260200191505060405180910390f35b34801561058e57600080fd5b506105d1600480360360208110156105a557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119a1565b6040518082815260200191505060405180910390f35b3480156105f357600080fd5b506106366004803603602081101561060a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119ea565b60405180821515815260200191505060405180910390f35b34801561065a57600080fd5b50610663611b42565b60405180821515815260200191505060405180910390f35b34801561068757600080fd5b506106d46004803603604081101561069e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611beb565b60405180821515815260200191505060405180910390f35b3480156106f857600080fd5b50610701611d1a565b60405180821515815260200191505060405180910390f35b34801561072557600080fd5b5061072e611e20565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561076e578082015181840152602081019050610753565b50505050905090810190601f16801561079b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156107b557600080fd5b50610802600480360360408110156107cc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611ebe565b60405180821515815260200191505060405180910390f35b34801561082657600080fd5b506108736004803603604081101561083d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612032565b60405180821515815260200191505060405180910390f35b34801561089757600080fd5b506108e4600480360360408110156108ae57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506121dd565b60405180821515815260200191505060405180910390f35b34801561090857600080fd5b5061096b6004803603604081101561091f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506124af565b6040518082815260200191505060405180910390f35b34801561098d57600080fd5b50610996612536565b6040518082815260200191505060405180910390f35b3480156109b857600080fd5b50610a05600480360360408110156109cf57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061255a565b60405180821515815260200191505060405180910390f35b348015610a2957600080fd5b50610a8060048036036060811015610a4057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506126b6565b60405180821515815260200191505060405180910390f35b348015610aa457600080fd5b50610aad612885565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b6f5780601f10610b4457610100808354040283529160200191610b6f565b820191906000526020600020905b815481529060010190602001808311610b5257829003601f168201915b505050505081565b6000600860009054906101000a900460ff1615610b9357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610bcd57600080fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60075481565b6000600860009054906101000a900460ff1615610cdf57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610d1957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d5357600080fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610d9f57600080fd5b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610e2857600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610ff05781600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110bb57600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561110757600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff167f87bd35dd5213917fa3c4bc2cf1e339f2266264ea12945571c332c3ccd0f6b194836040518082815260200191505060405180910390a2600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112ba57600080fd5b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561130657600080fd5b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff167fa2f640632c221843c5607a3ed473fd33f7011f34dbe6b4ada004f52bd6119d10836040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600660009054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114cc57600080fd5b6000600860006101000a81548160ff0219169083151502179055507fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693360405160405180910390a16001905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461157557600080fd5b8160076000828254019250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600860009054906101000a900460ff1681565b6000600860009054906101000a900460ff161561167157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156116ab57600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156117b6576000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118b6565b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205403600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a4557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a7f57600080fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f9f4b8d4b11b3e851bfc655bf62ad85ef36b1f0ea64e2246fa1d5dfc76c28336660405160405180910390a360019050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b9d57600080fd5b6001600860006101000a81548160ff0219169083151502179055507f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75260405160405180910390a16001905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c4657600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611cd757600080fd5b505af1158015611ceb573d6000803e3d6000fd5b505050506040513d6020811015611d0157600080fd5b8101908080519060200190929190505050905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611d7557600080fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fdce4271ac9caf7531a84b13ba9914907b91f10d440c4c176f9d7bb0fb395789e60405160405180910390a26001905090565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611eb65780601f10611e8b57610100808354040283529160200191611eb6565b820191906000526020600020905b815481529060010190602001808311611e9957829003601f168201915b505050505081565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f1957600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611f6557600080fd5b8160076000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600860009054906101000a900460ff161561204e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561208857600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156120d457600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600860009054906101000a900460ff16156121f957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561223357600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401101561233a57600080fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146125b557600080fd5b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561260157600080fd5b8160076000828254039250508190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff167f229522854127d1321dd259a261b07ce4ff1e4cf6631d075613a8b3f5b7f158fd836040518082815260200191505060405180910390a26001905092915050565b6000600860009054906101000a900460ff16156126d257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561270c57600080fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461279457600080fd5b82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a3600190509392505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff168156fea26469706673582212206309a7a36317fff6bd551f4f0bf7be6f9cec44e791d60508db5a5aac96eba53a64736f6c63430007020033

Deployed Bytecode

0x60806040526004361061016a5760003560e01c806375bc67bf116100d1578063a9059cbb1161008a578063e5b5019a11610064578063e5b5019a14610981578063e991f550146109ac578063f650366214610a1d578063f851a44014610a9857610174565b8063a9059cbb1461081a578063d73dd6231461088b578063dd62ed3e146108fc57610174565b806375bc67bf146105e75780638456cb591461064e5780638980f11f1461067b57806389f1258c146106ec57806395d89b41146107195780639dc29fac146107a957610174565b8063313ce56711610123578063313ce567146104185780633f4ba83a1461044657806340c10f19146104735780635c975abb146104e4578063661884631461051157806370a082311461058257610174565b806306fdde0314610179578063095ea7b31461020957806318160ddd1461027a57806323b872dd146102a557806324bce60c146103365780632df38460146103a757610174565b3661017457600080fd5b600080fd5b34801561018557600080fd5b5061018e610ad9565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101ce5780820151818401526020810190506101b3565b50505050905090810190601f1680156101fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561021557600080fd5b506102626004803603604081101561022c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b77565b60405180821515815260200191505060405180910390f35b34801561028657600080fd5b5061028f610cbd565b6040518082815260200191505060405180910390f35b3480156102b157600080fd5b5061031e600480360360608110156102c857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610cc3565b60405180821515815260200191505060405180910390f35b34801561034257600080fd5b5061038f6004803603604081101561035957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611060565b60405180821515815260200191505060405180910390f35b3480156103b357600080fd5b50610400600480360360408110156103ca57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061125f565b60405180821515815260200191505060405180910390f35b34801561042457600080fd5b5061042d61145e565b604051808260ff16815260200191505060405180910390f35b34801561045257600080fd5b5061045b611471565b60405180821515815260200191505060405180910390f35b34801561047f57600080fd5b506104cc6004803603604081101561049657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061151a565b60405180821515815260200191505060405180910390f35b3480156104f057600080fd5b506104f9611642565b60405180821515815260200191505060405180910390f35b34801561051d57600080fd5b5061056a6004803603604081101561053457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611655565b60405180821515815260200191505060405180910390f35b34801561058e57600080fd5b506105d1600480360360208110156105a557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119a1565b6040518082815260200191505060405180910390f35b3480156105f357600080fd5b506106366004803603602081101561060a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119ea565b60405180821515815260200191505060405180910390f35b34801561065a57600080fd5b50610663611b42565b60405180821515815260200191505060405180910390f35b34801561068757600080fd5b506106d46004803603604081101561069e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611beb565b60405180821515815260200191505060405180910390f35b3480156106f857600080fd5b50610701611d1a565b60405180821515815260200191505060405180910390f35b34801561072557600080fd5b5061072e611e20565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561076e578082015181840152602081019050610753565b50505050905090810190601f16801561079b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156107b557600080fd5b50610802600480360360408110156107cc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611ebe565b60405180821515815260200191505060405180910390f35b34801561082657600080fd5b506108736004803603604081101561083d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612032565b60405180821515815260200191505060405180910390f35b34801561089757600080fd5b506108e4600480360360408110156108ae57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506121dd565b60405180821515815260200191505060405180910390f35b34801561090857600080fd5b5061096b6004803603604081101561091f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506124af565b6040518082815260200191505060405180910390f35b34801561098d57600080fd5b50610996612536565b6040518082815260200191505060405180910390f35b3480156109b857600080fd5b50610a05600480360360408110156109cf57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061255a565b60405180821515815260200191505060405180910390f35b348015610a2957600080fd5b50610a8060048036036060811015610a4057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506126b6565b60405180821515815260200191505060405180910390f35b348015610aa457600080fd5b50610aad612885565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b6f5780601f10610b4457610100808354040283529160200191610b6f565b820191906000526020600020905b815481529060010190602001808311610b5257829003601f168201915b505050505081565b6000600860009054906101000a900460ff1615610b9357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610bcd57600080fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60075481565b6000600860009054906101000a900460ff1615610cdf57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610d1957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d5357600080fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610d9f57600080fd5b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610e2857600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610ff05781600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110bb57600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561110757600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff167f87bd35dd5213917fa3c4bc2cf1e339f2266264ea12945571c332c3ccd0f6b194836040518082815260200191505060405180910390a2600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112ba57600080fd5b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561130657600080fd5b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff167fa2f640632c221843c5607a3ed473fd33f7011f34dbe6b4ada004f52bd6119d10836040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600660009054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114cc57600080fd5b6000600860006101000a81548160ff0219169083151502179055507fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693360405160405180910390a16001905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461157557600080fd5b8160076000828254019250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600860009054906101000a900460ff1681565b6000600860009054906101000a900460ff161561167157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156116ab57600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156117b6576000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118b6565b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205403600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a4557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a7f57600080fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f9f4b8d4b11b3e851bfc655bf62ad85ef36b1f0ea64e2246fa1d5dfc76c28336660405160405180910390a360019050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b9d57600080fd5b6001600860006101000a81548160ff0219169083151502179055507f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75260405160405180910390a16001905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c4657600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611cd757600080fd5b505af1158015611ceb573d6000803e3d6000fd5b505050506040513d6020811015611d0157600080fd5b8101908080519060200190929190505050905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611d7557600080fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fdce4271ac9caf7531a84b13ba9914907b91f10d440c4c176f9d7bb0fb395789e60405160405180910390a26001905090565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611eb65780601f10611e8b57610100808354040283529160200191611eb6565b820191906000526020600020905b815481529060010190602001808311611e9957829003601f168201915b505050505081565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f1957600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611f6557600080fd5b8160076000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600860009054906101000a900460ff161561204e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561208857600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156120d457600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600860009054906101000a900460ff16156121f957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561223357600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401101561233a57600080fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146125b557600080fd5b81600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561260157600080fd5b8160076000828254039250508190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff167f229522854127d1321dd259a261b07ce4ff1e4cf6631d075613a8b3f5b7f158fd836040518082815260200191505060405180910390a26001905092915050565b6000600860009054906101000a900460ff16156126d257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561270c57600080fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461279457600080fd5b82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a3600190509392505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff168156fea26469706673582212206309a7a36317fff6bd551f4f0bf7be6f9cec44e791d60508db5a5aac96eba53a64736f6c63430007020033

Deployed Bytecode Sourcemap

494:13298:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13664:8;;;494:13298;;;;878:19;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4090:264;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;956:26;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3268:549;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11162:347;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11796:350;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;928:23;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;9694:151;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8142:254;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;987:29;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;7377:482;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;5045:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10143:252;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;9262:146;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;13087:199;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;10693:184;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;902:21;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8679:299;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2675:315;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;6485:407;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4629:141;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1021:45;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12435:298;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;5634:366;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;682:20;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;878:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4090:264::-;4157:12;4187:6;;;;;;;;;;;4186:7;4178:16;;;;;;4229:1;4209:22;;:8;:22;;;;4201:31;;;;;;4274:6;4239:10;:22;4250:10;4239:22;;;;;;;;;;;;;;;:32;4262:8;4239:32;;;;;;;;;;;;;;;:41;;;;4313:8;4292:38;;4301:10;4292:38;;;4323:6;4292:38;;;;;;;;;;;;;;;;;;4344:4;4337:11;;4090:264;;;;:::o;956:26::-;;;;:::o;3268:549::-;3350:12;3380:6;;;;;;;;;;;3379:7;3371:16;;;;;;3419:1;3402:19;;:5;:19;;;;3394:28;;;;;;3452:1;3437:17;;:3;:17;;;;3429:26;;;;;;3489:6;3470:8;:15;3479:5;3470:15;;;;;;;;;;;;;;;;:25;;3462:34;;;;;;3544:6;3511:10;:17;3522:5;3511:17;;;;;;;;;;;;;;;:29;3529:10;3511:29;;;;;;;;;;;;;;;;:39;;3503:48;;;;;;3575:6;3558:8;:13;3567:3;3558:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;3607:6;3588:8;:15;3597:5;3588:15;;;;;;;;;;;;;;;;:25;;;;;;;;;;;1056:10;3623;:17;3634:5;3623:17;;;;;;;;;;;;;;;:29;3641:10;3623:29;;;;;;;;;;;;;;;;:41;3620:134;;3740:6;3707:10;:17;3718:5;3707:17;;;;;;;;;;;;;;;:29;3725:10;3707:29;;;;;;;;;;;;;;;;:39;;;;;;;;;;;3620:134;3781:3;3765:28;;3774:5;3765:28;;;3786:6;3765:28;;;;;;;;;;;;;;;;;;3807:4;3800:11;;3268:549;;;;;:::o;11162:347::-;11229:12;11272:5;;;;;;;;;;;11258:19;;:10;:19;;;11250:28;;;;;;11315:7;11293:8;:18;11302:8;11293:18;;;;;;;;;;;;;;;;:29;;11285:38;;;;;;11351:7;11330:8;:18;11339:8;11330:18;;;;;;;;;;;;;;;;:28;;;;;;;;;;;11385:7;11365:6;:16;11372:8;11365:16;;;;;;;;;;;;;;;;:27;;;;;;;;;;;11416:8;11404:30;;;11426:7;11404:30;;;;;;;;;;;;;;;;;;11473:1;11446:39;;11455:8;11446:39;;;11477:7;11446:39;;;;;;;;;;;;;;;;;;11499:4;11492:11;;11162:347;;;;:::o;11796:350::-;11865:12;11908:5;;;;;;;;;;;11894:19;;:10;:19;;;11886:28;;;;;;11949:7;11929:6;:16;11936:8;11929:16;;;;;;;;;;;;;;;;:27;;11921:36;;;;;;11984:7;11964:6;:16;11971:8;11964:16;;;;;;;;;;;;;;;;:27;;;;;;;;;;;12020:7;11998:8;:18;12007:8;11998:18;;;;;;;;;;;;;;;;:29;;;;;;;;;;;12053:8;12039:32;;;12063:7;12039:32;;;;;;;;;;;;;;;;;;12104:8;12083:39;;12100:1;12083:39;;;12114:7;12083:39;;;;;;;;;;;;;;;;;;12136:4;12129:11;;11796:350;;;;:::o;928:23::-;;;;;;;;;;;;;:::o;9694:151::-;9729:12;9772:5;;;;;;;;;;;9758:19;;:10;:19;;;9750:28;;;;;;9794:5;9785:6;;:14;;;;;;;;;;;;;;;;;;9811:10;;;;;;;;;;9835:4;9828:11;;9694:151;:::o;8142:254::-;8207:12;8250:5;;;;;;;;;;;8236:19;;:10;:19;;;8228:28;;;;;;8278:7;8263:11;;:22;;;;;;;;;;;8314:7;8292:8;:18;8301:8;8292:18;;;;;;;;;;;;;;;;:29;;;;;;;;;;;8354:8;8333:39;;8350:1;8333:39;;;8364:7;8333:39;;;;;;;;;;;;;;;;;;8386:4;8379:11;;8142:254;;;;:::o;987:29::-;;;;;;;;;;;;;:::o;7377:482::-;7460:12;7490:6;;;;;;;;;;;7489:7;7481:16;;;;;;7532:1;7512:22;;:8;:22;;;;7504:31;;;;;;7564:10;:22;7575:10;7564:22;;;;;;;;;;;;;;;:32;7587:8;7564:32;;;;;;;;;;;;;;;;7545:16;:51;7542:218;;;7642:1;7607:10;:22;7618:10;7607:22;;;;;;;;;;;;;;;:32;7630:8;7607:32;;;;;;;;;;;;;;;:36;;;;7542:218;;;7736:16;7701:10;:22;7712:10;7701:22;;;;;;;;;;;;;;;:32;7724:8;7701:32;;;;;;;;;;;;;;;;:51;7666:10;:22;7677:10;7666:22;;;;;;;;;;;;;;;:32;7689:8;7666:32;;;;;;;;;;;;;;;:86;;;;7542:218;7792:8;7771:64;;7780:10;7771:64;;;7802:10;:22;7813:10;7802:22;;;;;;;;;;;;;;;:32;7825:8;7802:32;;;;;;;;;;;;;;;;7771:64;;;;;;;;;;;;;;;;;;7849:4;7842:11;;7377:482;;;;:::o;5045:109::-;5101:15;5132:8;:16;5141:6;5132:16;;;;;;;;;;;;;;;;5125:23;;5045:109;;;:::o;10143:252::-;10207:12;10250:5;;;;;;;;;;;10236:19;;:10;:19;;;10228:28;;;;;;10292:1;10271:23;;:9;:23;;;;10263:32;;;;;;10310:9;10302:5;;:17;;;;;;;;;;;;;;;;;;10361:9;10331:40;;10354:5;;;;;;;;;;10331:40;;;;;;;;;;;;10385:4;10378:11;;10143:252;;;:::o;9262:146::-;9295:12;9338:5;;;;;;;;;;;9324:19;;:10;:19;;;9316:28;;;;;;9360:4;9351:6;;:13;;;;;;;;;;;;;;;;;;9376:8;;;;;;;;;;9398:4;9391:11;;9262:146;:::o;13087:199::-;13168:12;13211:5;;;;;;;;;;;13197:19;;:10;:19;;;13189:28;;;;;;13238:12;13231:29;;;13261:5;;;;;;;;;;13268:11;13231:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13224:56;;13087:199;;;;:::o;10693:184::-;10740:12;10783:5;;;;;;;;;;;10769:19;;:10;:19;;;10761:28;;;;;;10812:1;10796:5;;:18;;;;;;;;;;;;;;;;;;10847:5;;;;;;;;;;10826:27;;;;;;;;;;;;10867:4;10860:11;;10693:184;:::o;902:21::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8679:299::-;8744:12;8787:5;;;;;;;;;;;8773:19;;:10;:19;;;8765:28;;;;;;8830:7;8808:8;:18;8817:8;8808:18;;;;;;;;;;;;;;;;:29;;8800:38;;;;;;8860:7;8845:11;;:22;;;;;;;;;;;8896:7;8874:8;:18;8883:8;8874:18;;;;;;;;;;;;;;;;:29;;;;;;;;;;;8942:1;8915:39;;8924:8;8915:39;;;8946:7;8915:39;;;;;;;;;;;;;;;;;;8968:4;8961:11;;8679:299;;;;:::o;2675:315::-;2738:12;2768:6;;;;;;;;;;;2767:7;2759:16;;;;;;2805:1;2790:17;;:3;:17;;;;2782:26;;;;;;2847:6;2823:8;:20;2832:10;2823:20;;;;;;;;;;;;;;;;:30;;2815:39;;;;;;2885:6;2861:8;:20;2870:10;2861:20;;;;;;;;;;;;;;;;:30;;;;;;;;;;;2915:6;2898:8;:13;2907:3;2898:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;2954:3;2933:33;;2942:10;2933:33;;;2959:6;2933:33;;;;;;;;;;;;;;;;;;2980:4;2973:11;;2675:315;;;;:::o;6485:407::-;6563:12;6593:6;;;;;;;;;;;6592:7;6584:16;;;;;;6635:1;6615:22;;:8;:22;;;;6607:31;;;;;;6705:10;:22;6716:10;6705:22;;;;;;;;;;;;;;;:32;6728:8;6705:32;;;;;;;;;;;;;;;;6689:11;6654:10;:22;6665:10;6654:22;;;;;;;;;;;;;;;:32;6677:8;6654:32;;;;;;;;;;;;;;;;:46;6653:84;;6645:93;;;;;;6781:11;6745:10;:22;6756:10;6745:22;;;;;;;;;;;;;;;:32;6768:8;6745:32;;;;;;;;;;;;;;;;:47;;;;;;;;;;;6825:8;6804:64;;6813:10;6804:64;;;6835:10;:22;6846:10;6835:22;;;;;;;;;;;;;;;:32;6858:8;6835:32;;;;;;;;;;;;;;;;6804:64;;;;;;;;;;;;;;;;;;6882:4;6875:11;;6485:407;;;;:::o;4629:141::-;4703:17;4736:10;:18;4747:6;4736:18;;;;;;;;;;;;;;;:28;4755:8;4736:28;;;;;;;;;;;;;;;;4729:35;;4629:141;;;;:::o;1021:45::-;1056:10;1021:45;:::o;12435:298::-;12506:12;12549:5;;;;;;;;;;;12535:19;;:10;:19;;;12527:28;;;;;;12590:7;12570:6;:16;12577:8;12570:16;;;;;;;;;;;;;;;;:27;;12562:36;;;;;;12620:7;12605:11;;:22;;;;;;;;;;;12654:7;12634:6;:16;12641:8;12634:16;;;;;;;;;;;;;;;;:27;;;;;;;;;;;12691:8;12673:36;;;12701:7;12673:36;;;;;;;;;;;;;;;;;;12723:4;12716:11;;12435:298;;;;:::o;5634:366::-;5733:12;5763:6;;;;;;;;;;;5762:7;5754:16;;;;;;5805:1;5785:22;;:8;:22;;;;5777:31;;;;;;5859:18;5823:10;:22;5834:10;5823:22;;;;;;;;;;;;;;;:32;5846:8;5823:32;;;;;;;;;;;;;;;;:54;5815:63;;;;;;5920:6;5885:10;:22;5896:10;5885:22;;;;;;;;;;;;;;;:32;5908:8;5885:32;;;;;;;;;;;;;;;:41;;;;5959:8;5938:38;;5947:10;5938:38;;;5969:6;5938:38;;;;;;;;;;;;;;;;;;5990:4;5983:11;;5634:366;;;;;:::o;682:20::-;;;;;;;;;;;;:::o

Swarm Source

ipfs://6309a7a36317fff6bd551f4f0bf7be6f9cec44e791d60508db5a5aac96eba53a

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

Stable NOK is a stablecoin for the Norwegian Krone. It is mainly used by the cryptocurrency exchange Bitnord.

Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.