[
  {
    "constant": true,
    "inputs": [],
    "name": "importSequence",
    "outputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "_validator",
        "type": "address"
      }
    ],
    "name": "setValidator",
    "outputs": [
      {
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "_newOwner",
        "type": "address"
      }
    ],
    "name": "changeOwnership",
    "outputs": [
      {
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "chainHopStartTime",
    "outputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "validator",
    "outputs": [
      {
        "name": "",
        "type": "address"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "originChain",
        "type": "bytes8"
      },
      {
        "name": "recipientAddress",
        "type": "address"
      },
      {
        "name": "amount",
        "type": "uint256"
      },
      {
        "name": "fee",
        "type": "uint256"
      },
      {
        "name": "extraData",
        "type": "bytes"
      },
      {
        "name": "currentHash",
        "type": "bytes32"
      },
      {
        "name": "globalSupplyInOtherChains",
        "type": "uint256"
      },
      {
        "name": "validators",
        "type": "address[]"
      }
    ],
    "name": "mintToken",
    "outputs": [
      {
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [
      {
        "name": "",
        "type": "address"
      },
      {
        "name": "",
        "type": "address"
      }
    ],
    "name": "claimables",
    "outputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "_exportFee",
        "type": "uint256"
      }
    ],
    "name": "setExportFeePerTenThousand",
    "outputs": [
      {
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "_chainName",
        "type": "bytes8"
      }
    ],
    "name": "removeDestinationChain",
    "outputs": [
      {
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "burnSequence",
    "outputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "_originChain",
        "type": "bytes8"
      },
      {
        "name": "_destinationChain",
        "type": "bytes8"
      },
      {
        "name": "_addresses",
        "type": "address[]"
      },
      {
        "name": "_extraData",
        "type": "bytes"
      },
      {
        "name": "_burnHashes",
        "type": "bytes32[]"
      },
      {
        "name": "_supplyOnAllChains",
        "type": "uint256[]"
      },
      {
        "name": "_importData",
        "type": "uint256[]"
      },
      {
        "name": "_proof",
        "type": "bytes"
      }
    ],
    "name": "importMET",
    "outputs": [
      {
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [],
    "name": "acceptOwnership",
    "outputs": [
      {
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "name": "exportedBurns",
    "outputs": [
      {
        "name": "",
        "type": "bytes32"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "_minimumExportFee",
        "type": "uint256"
      }
    ],
    "name": "setMinimumExportFee",
    "outputs": [
      {
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "auctions",
    "outputs": [
      {
        "name": "",
        "type": "address"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "owner",
    "outputs": [
      {
        "name": "",
        "type": "address"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "_startTime",
        "type": "uint256"
      }
    ],
    "name": "setChainHopStartTime",
    "outputs": [
      {
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [
      {
        "name": "",
        "type": "bytes32"
      }
    ],
    "name": "mintHashes",
    "outputs": [
      {
        "name": "",
        "type": "bytes32"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "minimumExportFee",
    "outputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [
      {
        "name": "",
        "type": "bytes32"
      }
    ],
    "name": "burnHashes",
    "outputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "exportFee",
    "outputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "_chainName",
        "type": "bytes8"
      },
      {
        "name": "_contractAddress",
        "type": "address"
      }
    ],
    "name": "addDestinationChain",
    "outputs": [
      {
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [
      {
        "name": "",
        "type": "bytes32"
      }
    ],
    "name": "burnAtTick",
    "outputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "_tokenAddr",
        "type": "address"
      },
      {
        "name": "_auctionsAddr",
        "type": "address"
      }
    ],
    "name": "initTokenPorter",
    "outputs": [],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "newOwner",
    "outputs": [
      {
        "name": "",
        "type": "address"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "name": "supplyOnAllChains",
    "outputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [
      {
        "name": "",
        "type": "bytes8"
      }
    ],
    "name": "destinationChains",
    "outputs": [
      {
        "name": "",
        "type": "address"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "tokenOwner",
        "type": "address"
      },
      {
        "name": "_destChain",
        "type": "bytes8"
      },
      {
        "name": "_destMetronomeAddr",
        "type": "address"
      },
      {
        "name": "_destRecipAddr",
        "type": "address"
      },
      {
        "name": "_amount",
        "type": "uint256"
      },
      {
        "name": "_fee",
        "type": "uint256"
      },
      {
        "name": "_extraData",
        "type": "bytes"
      }
    ],
    "name": "export",
    "outputs": [
      {
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "name": "recipients",
        "type": "address[]"
      }
    ],
    "name": "claimReceivables",
    "outputs": [
      {
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "token",
    "outputs": [
      {
        "name": "",
        "type": "address"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [
      {
        "name": "",
        "type": "bytes32"
      }
    ],
    "name": "merkleRoots",
    "outputs": [
      {
        "name": "",
        "type": "bytes32"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "name": "destinationChain",
        "type": "bytes8"
      },
      {
        "indexed": false,
        "name": "destinationMetronomeAddr",
        "type": "address"
      },
      {
        "indexed": true,
        "name": "destinationRecipientAddr",
        "type": "address"
      },
      {
        "indexed": false,
        "name": "amountToBurn",
        "type": "uint256"
      },
      {
        "indexed": false,
        "name": "fee",
        "type": "uint256"
      },
      {
        "indexed": false,
        "name": "extraData",
        "type": "bytes"
      },
      {
        "indexed": false,
        "name": "currentTick",
        "type": "uint256"
      },
      {
        "indexed": false,
        "name": "burnSequence",
        "type": "uint256"
      },
      {
        "indexed": true,
        "name": "currentBurnHash",
        "type": "bytes32"
      },
      {
        "indexed": false,
        "name": "prevBurnHash",
        "type": "bytes32"
      },
      {
        "indexed": false,
        "name": "dailyMintable",
        "type": "uint256"
      },
      {
        "indexed": false,
        "name": "supplyOnAllChains",
        "type": "uint256[]"
      },
      {
        "indexed": false,
        "name": "blockTimestamp",
        "type": "uint256"
      },
      {
        "indexed": true,
        "name": "exporter",
        "type": "address"
      }
    ],
    "name": "LogExportReceipt",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "name": "originChain",
        "type": "bytes8"
      },
      {
        "indexed": true,
        "name": "currentBurnHash",
        "type": "bytes32"
      },
      {
        "indexed": false,
        "name": "prevHash",
        "type": "bytes32"
      },
      {
        "indexed": true,
        "name": "destinationRecipientAddr",
        "type": "address"
      },
      {
        "indexed": false,
        "name": "amountToImport",
        "type": "uint256"
      },
      {
        "indexed": false,
        "name": "fee",
        "type": "uint256"
      },
      {
        "indexed": false,
        "name": "exportTimeStamp",
        "type": "uint256"
      },
      {
        "indexed": false,
        "name": "burnSequence",
        "type": "uint256"
      },
      {
        "indexed": false,
        "name": "extraData",
        "type": "bytes"
      }
    ],
    "name": "LogImportRequest",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "name": "originChain",
        "type": "bytes8"
      },
      {
        "indexed": true,
        "name": "destinationRecipientAddr",
        "type": "address"
      },
      {
        "indexed": false,
        "name": "amountImported",
        "type": "uint256"
      },
      {
        "indexed": false,
        "name": "fee",
        "type": "uint256"
      },
      {
        "indexed": false,
        "name": "extraData",
        "type": "bytes"
      },
      {
        "indexed": true,
        "name": "importSequence",
        "type": "uint256"
      },
      {
        "indexed": true,
        "name": "currentHash",
        "type": "bytes32"
      }
    ],
    "name": "LogImport",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "name": "prevOwner",
        "type": "address"
      },
      {
        "indexed": true,
        "name": "newOwner",
        "type": "address"
      }
    ],
    "name": "OwnershipChanged",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "name": "destinationMetronomeAddr",
        "type": "address"
      },
      {
        "indexed": true,
        "name": "destinationRecipientAddr",
        "type": "address"
      },
      {
        "indexed": false,
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "ExportOnChainClaimedReceiptLog",
    "type": "event"
  }
]