{
  "abi": [
    {
      "constant": true,
      "inputs": [],
      "name": "operatorOwner",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "bases",
          "type": "address[]"
        },
        {
          "name": "quotes",
          "type": "address[]"
        },
        {
          "name": "xrts",
          "type": "uint128[]"
        },
        {
          "name": "whens",
          "type": "uint64[]"
        },
        {
          "name": "sigs",
          "type": "bytes"
        }
      ],
      "name": "updateMany",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "operator",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_seconds",
          "type": "uint256"
        }
      ],
      "name": "mockDecreaseTime",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_timestamp",
          "type": "uint256"
        }
      ],
      "name": "mockSetTimestamp",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getBlockNumberPublic",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_number",
          "type": "uint256"
        }
      ],
      "name": "mockAdvanceBlocks",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "PPF_v1_ID",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getTimestampPublic",
      "outputs": [
        {
          "name": "",
          "type": "uint64"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_seconds",
          "type": "uint256"
        }
      ],
      "name": "mockIncreaseTime",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_operator",
          "type": "address"
        }
      ],
      "name": "setOperator",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_operatorOwner",
          "type": "address"
        }
      ],
      "name": "setOperatorOwner",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "base",
          "type": "address"
        },
        {
          "name": "quote",
          "type": "address"
        }
      ],
      "name": "get",
      "outputs": [
        {
          "name": "",
          "type": "uint128"
        },
        {
          "name": "",
          "type": "uint64"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "ratePrecision",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "base",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "quote",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "xrt",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "when",
          "type": "uint64"
        }
      ],
      "name": "SetRate",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "operator",
          "type": "address"
        }
      ],
      "name": "SetOperator",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "operatorOwner",
          "type": "address"
        }
      ],
      "name": "SetOperatorOwner",
      "type": "event"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "base",
          "type": "address"
        },
        {
          "name": "quote",
          "type": "address"
        },
        {
          "name": "xrt",
          "type": "uint128"
        },
        {
          "name": "when",
          "type": "uint64"
        },
        {
          "name": "sig",
          "type": "bytes"
        }
      ],
      "name": "update",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ]
}