{
  "contractName": "TestChainlinkPriceOracle",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "int256",
          "name": "_answer",
          "type": "int256"
        }
      ],
      "name": "setAnswer",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_timestamp",
          "type": "uint256"
        }
      ],
      "name": "setTimestamp",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "latestAnswer",
      "outputs": [
        {
          "internalType": "int256",
          "name": "",
          "type": "int256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "latestTimestamp",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "metadata": "{\"compiler\":{\"version\":\"0.6.12+commit.27d51765\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"latestAnswer\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"latestTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"_answer\",\"type\":\"int256\"}],\"name\":\"setAnswer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"setTimestamp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/helpers/TestChainlinkPriceOracle.sol\":\"TestChainlinkPriceOracle\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/helpers/TestChainlinkPriceOracle.sol\":{\"keccak256\":\"0x1b9910e63f953facfddd082041f218c93bf49a4a0fae7afc6c733ba7231509b7\",\"license\":\"SEE LICENSE IN LICENSE\",\"urls\":[\"bzz-raw://df98ce67ec1d9739ade570fd3bf423a7ab53c5bd203820cc2d0df4cb3b80e320\",\"dweb:/ipfs/QmawAySi2MDVmuSpUn31rPezTZPHsQ9tVvME6zV4rcMshN\"]},\"/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/utility/interfaces/IChainlinkPriceOracle.sol\":{\"keccak256\":\"0x544a1d335c9a30e5543f5c069bbd9f73e6478b0a6941481619a0d20eea159c2a\",\"license\":\"SEE LICENSE IN LICENSE\",\"urls\":[\"bzz-raw://8649d3ff5e21bf5ff21d45a62193974e08ccec27b392e91cbfdad479a60e87f0\",\"dweb:/ipfs/QmatS5peisTv9PdqVz9eSuveQdhJBqpxfpr5q4YsMv51CZ\"]}},\"version\":1}",
  "bytecode": "0x608060405234801561001057600080fd5b5060eb8061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060465760003560e01c806350d25bcd14604b5780638205bf6a14606357806399213cd8146069578063a0a2b573146085575b600080fd5b6051609f565b60408051918252519081900360200190f35b605160a5565b608360048036036020811015607d57600080fd5b503560ab565b005b608360048036036020811015609957600080fd5b503560b0565b60005490565b60015490565b600055565b60015556fea2646970667358221220b69ce5dd49de1b63092f81599fc7e55fa5c6251e1405618cd68e8ce77cce560464736f6c634300060c0033",
  "deployedBytecode": "0x6080604052348015600f57600080fd5b506004361060465760003560e01c806350d25bcd14604b5780638205bf6a14606357806399213cd8146069578063a0a2b573146085575b600080fd5b6051609f565b60408051918252519081900360200190f35b605160a5565b608360048036036020811015607d57600080fd5b503560ab565b005b608360048036036020811015609957600080fd5b503560b0565b60005490565b60015490565b600055565b60015556fea2646970667358221220b69ce5dd49de1b63092f81599fc7e55fa5c6251e1405618cd68e8ce77cce560464736f6c634300060c0033",
  "immutableReferences": {},
  "sourceMap": "172:502:37:-:0;;;;;;;;;;;;;;;;;;;",
  "deployedSourceMap": "172:502:37:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;471:94;;;:::i;:::-;;;;;;;;;;;;;;;;571:101;;;:::i;296:75::-;;;;;;;;;;;;;;;;-1:-1:-1;296:75:37;;:::i;:::-;;377:88;;;;;;;;;;;;;;;;-1:-1:-1;377:88:37;;:::i;471:94::-;527:6;552;471:94;:::o;571:101::-;656:9;;571:101;:::o;296:75::-;348:6;:16;296:75::o;377:88::-;436:9;:22;377:88::o",
  "source": "// SPDX-License-Identifier: SEE LICENSE IN LICENSE\npragma solidity 0.6.12;\nimport \"../utility/interfaces/IChainlinkPriceOracle.sol\";\n\n/*\n    Chainlink price oracle mock\n*/\ncontract TestChainlinkPriceOracle is IChainlinkPriceOracle {\n    int256 private answer;\n    uint256 private timestamp;\n\n    function setAnswer(int256 _answer) public {\n        answer = _answer;\n    }\n\n    function setTimestamp(uint256 _timestamp) public {\n        timestamp = _timestamp;\n    }\n\n    function latestAnswer() external view override returns (int256) {\n        return answer;\n    }\n\n    function latestTimestamp() external view override returns (uint256) {\n        return timestamp;\n    }\n}\n",
  "sourcePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/helpers/TestChainlinkPriceOracle.sol",
  "ast": {
    "absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/helpers/TestChainlinkPriceOracle.sol",
    "exportedSymbols": {
      "TestChainlinkPriceOracle": [
        19236
      ]
    },
    "id": 19237,
    "license": "SEE LICENSE IN LICENSE",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 19190,
        "literals": [
          "solidity",
          "0.6",
          ".12"
        ],
        "nodeType": "PragmaDirective",
        "src": "51:23:37"
      },
      {
        "absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/utility/interfaces/IChainlinkPriceOracle.sol",
        "file": "../utility/interfaces/IChainlinkPriceOracle.sol",
        "id": 19191,
        "nodeType": "ImportDirective",
        "scope": 19237,
        "sourceUnit": 22822,
        "src": "75:57:37",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 19192,
              "name": "IChainlinkPriceOracle",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 22821,
              "src": "209:21:37",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_IChainlinkPriceOracle_$22821",
                "typeString": "contract IChainlinkPriceOracle"
              }
            },
            "id": 19193,
            "nodeType": "InheritanceSpecifier",
            "src": "209:21:37"
          }
        ],
        "contractDependencies": [
          22821
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 19236,
        "linearizedBaseContracts": [
          19236,
          22821
        ],
        "name": "TestChainlinkPriceOracle",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": false,
            "id": 19195,
            "mutability": "mutable",
            "name": "answer",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 19236,
            "src": "237:21:37",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_int256",
              "typeString": "int256"
            },
            "typeName": {
              "id": 19194,
              "name": "int256",
              "nodeType": "ElementaryTypeName",
              "src": "237:6:37",
              "typeDescriptions": {
                "typeIdentifier": "t_int256",
                "typeString": "int256"
              }
            },
            "value": null,
            "visibility": "private"
          },
          {
            "constant": false,
            "id": 19197,
            "mutability": "mutable",
            "name": "timestamp",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 19236,
            "src": "264:25:37",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 19196,
              "name": "uint256",
              "nodeType": "ElementaryTypeName",
              "src": "264:7:37",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": null,
            "visibility": "private"
          },
          {
            "body": {
              "id": 19206,
              "nodeType": "Block",
              "src": "338:33:37",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 19204,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 19202,
                      "name": "answer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19195,
                      "src": "348:6:37",
                      "typeDescriptions": {
                        "typeIdentifier": "t_int256",
                        "typeString": "int256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 19203,
                      "name": "_answer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19199,
                      "src": "357:7:37",
                      "typeDescriptions": {
                        "typeIdentifier": "t_int256",
                        "typeString": "int256"
                      }
                    },
                    "src": "348:16:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "id": 19205,
                  "nodeType": "ExpressionStatement",
                  "src": "348:16:37"
                }
              ]
            },
            "documentation": null,
            "functionSelector": "99213cd8",
            "id": 19207,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "setAnswer",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 19200,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19199,
                  "mutability": "mutable",
                  "name": "_answer",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19207,
                  "src": "315:14:37",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  },
                  "typeName": {
                    "id": 19198,
                    "name": "int256",
                    "nodeType": "ElementaryTypeName",
                    "src": "315:6:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "314:16:37"
            },
            "returnParameters": {
              "id": 19201,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "338:0:37"
            },
            "scope": 19236,
            "src": "296:75:37",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 19216,
              "nodeType": "Block",
              "src": "426:39:37",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 19214,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 19212,
                      "name": "timestamp",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19197,
                      "src": "436:9:37",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 19213,
                      "name": "_timestamp",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19209,
                      "src": "448:10:37",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "436:22:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 19215,
                  "nodeType": "ExpressionStatement",
                  "src": "436:22:37"
                }
              ]
            },
            "documentation": null,
            "functionSelector": "a0a2b573",
            "id": 19217,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "setTimestamp",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 19210,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19209,
                  "mutability": "mutable",
                  "name": "_timestamp",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19217,
                  "src": "399:18:37",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19208,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "399:7:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "398:20:37"
            },
            "returnParameters": {
              "id": 19211,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "426:0:37"
            },
            "scope": 19236,
            "src": "377:88:37",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              22815
            ],
            "body": {
              "id": 19225,
              "nodeType": "Block",
              "src": "535:30:37",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 19223,
                    "name": "answer",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 19195,
                    "src": "552:6:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "functionReturnParameters": 19222,
                  "id": 19224,
                  "nodeType": "Return",
                  "src": "545:13:37"
                }
              ]
            },
            "documentation": null,
            "functionSelector": "50d25bcd",
            "id": 19226,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "latestAnswer",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 19219,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "509:8:37"
            },
            "parameters": {
              "id": 19218,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "492:2:37"
            },
            "returnParameters": {
              "id": 19222,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19221,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19226,
                  "src": "527:6:37",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  },
                  "typeName": {
                    "id": 19220,
                    "name": "int256",
                    "nodeType": "ElementaryTypeName",
                    "src": "527:6:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "526:8:37"
            },
            "scope": 19236,
            "src": "471:94:37",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              22820
            ],
            "body": {
              "id": 19234,
              "nodeType": "Block",
              "src": "639:33:37",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 19232,
                    "name": "timestamp",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 19197,
                    "src": "656:9:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 19231,
                  "id": 19233,
                  "nodeType": "Return",
                  "src": "649:16:37"
                }
              ]
            },
            "documentation": null,
            "functionSelector": "8205bf6a",
            "id": 19235,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "latestTimestamp",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 19228,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "612:8:37"
            },
            "parameters": {
              "id": 19227,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "595:2:37"
            },
            "returnParameters": {
              "id": 19231,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19230,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19235,
                  "src": "630:7:37",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19229,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "630:7:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "629:9:37"
            },
            "scope": 19236,
            "src": "571:101:37",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 19237,
        "src": "172:502:37"
      }
    ],
    "src": "51:624:37"
  },
  "legacyAST": {
    "absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/helpers/TestChainlinkPriceOracle.sol",
    "exportedSymbols": {
      "TestChainlinkPriceOracle": [
        19236
      ]
    },
    "id": 19237,
    "license": "SEE LICENSE IN LICENSE",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 19190,
        "literals": [
          "solidity",
          "0.6",
          ".12"
        ],
        "nodeType": "PragmaDirective",
        "src": "51:23:37"
      },
      {
        "absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/utility/interfaces/IChainlinkPriceOracle.sol",
        "file": "../utility/interfaces/IChainlinkPriceOracle.sol",
        "id": 19191,
        "nodeType": "ImportDirective",
        "scope": 19237,
        "sourceUnit": 22822,
        "src": "75:57:37",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 19192,
              "name": "IChainlinkPriceOracle",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 22821,
              "src": "209:21:37",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_IChainlinkPriceOracle_$22821",
                "typeString": "contract IChainlinkPriceOracle"
              }
            },
            "id": 19193,
            "nodeType": "InheritanceSpecifier",
            "src": "209:21:37"
          }
        ],
        "contractDependencies": [
          22821
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 19236,
        "linearizedBaseContracts": [
          19236,
          22821
        ],
        "name": "TestChainlinkPriceOracle",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": false,
            "id": 19195,
            "mutability": "mutable",
            "name": "answer",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 19236,
            "src": "237:21:37",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_int256",
              "typeString": "int256"
            },
            "typeName": {
              "id": 19194,
              "name": "int256",
              "nodeType": "ElementaryTypeName",
              "src": "237:6:37",
              "typeDescriptions": {
                "typeIdentifier": "t_int256",
                "typeString": "int256"
              }
            },
            "value": null,
            "visibility": "private"
          },
          {
            "constant": false,
            "id": 19197,
            "mutability": "mutable",
            "name": "timestamp",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 19236,
            "src": "264:25:37",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 19196,
              "name": "uint256",
              "nodeType": "ElementaryTypeName",
              "src": "264:7:37",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": null,
            "visibility": "private"
          },
          {
            "body": {
              "id": 19206,
              "nodeType": "Block",
              "src": "338:33:37",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 19204,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 19202,
                      "name": "answer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19195,
                      "src": "348:6:37",
                      "typeDescriptions": {
                        "typeIdentifier": "t_int256",
                        "typeString": "int256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 19203,
                      "name": "_answer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19199,
                      "src": "357:7:37",
                      "typeDescriptions": {
                        "typeIdentifier": "t_int256",
                        "typeString": "int256"
                      }
                    },
                    "src": "348:16:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "id": 19205,
                  "nodeType": "ExpressionStatement",
                  "src": "348:16:37"
                }
              ]
            },
            "documentation": null,
            "functionSelector": "99213cd8",
            "id": 19207,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "setAnswer",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 19200,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19199,
                  "mutability": "mutable",
                  "name": "_answer",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19207,
                  "src": "315:14:37",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  },
                  "typeName": {
                    "id": 19198,
                    "name": "int256",
                    "nodeType": "ElementaryTypeName",
                    "src": "315:6:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "314:16:37"
            },
            "returnParameters": {
              "id": 19201,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "338:0:37"
            },
            "scope": 19236,
            "src": "296:75:37",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 19216,
              "nodeType": "Block",
              "src": "426:39:37",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 19214,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 19212,
                      "name": "timestamp",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19197,
                      "src": "436:9:37",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 19213,
                      "name": "_timestamp",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 19209,
                      "src": "448:10:37",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "436:22:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 19215,
                  "nodeType": "ExpressionStatement",
                  "src": "436:22:37"
                }
              ]
            },
            "documentation": null,
            "functionSelector": "a0a2b573",
            "id": 19217,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "setTimestamp",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 19210,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19209,
                  "mutability": "mutable",
                  "name": "_timestamp",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19217,
                  "src": "399:18:37",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19208,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "399:7:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "398:20:37"
            },
            "returnParameters": {
              "id": 19211,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "426:0:37"
            },
            "scope": 19236,
            "src": "377:88:37",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              22815
            ],
            "body": {
              "id": 19225,
              "nodeType": "Block",
              "src": "535:30:37",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 19223,
                    "name": "answer",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 19195,
                    "src": "552:6:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "functionReturnParameters": 19222,
                  "id": 19224,
                  "nodeType": "Return",
                  "src": "545:13:37"
                }
              ]
            },
            "documentation": null,
            "functionSelector": "50d25bcd",
            "id": 19226,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "latestAnswer",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 19219,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "509:8:37"
            },
            "parameters": {
              "id": 19218,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "492:2:37"
            },
            "returnParameters": {
              "id": 19222,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19221,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19226,
                  "src": "527:6:37",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  },
                  "typeName": {
                    "id": 19220,
                    "name": "int256",
                    "nodeType": "ElementaryTypeName",
                    "src": "527:6:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "526:8:37"
            },
            "scope": 19236,
            "src": "471:94:37",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              22820
            ],
            "body": {
              "id": 19234,
              "nodeType": "Block",
              "src": "639:33:37",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 19232,
                    "name": "timestamp",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 19197,
                    "src": "656:9:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 19231,
                  "id": 19233,
                  "nodeType": "Return",
                  "src": "649:16:37"
                }
              ]
            },
            "documentation": null,
            "functionSelector": "8205bf6a",
            "id": 19235,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "latestTimestamp",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 19228,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "612:8:37"
            },
            "parameters": {
              "id": 19227,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "595:2:37"
            },
            "returnParameters": {
              "id": 19231,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19230,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 19235,
                  "src": "630:7:37",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19229,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "630:7:37",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "629:9:37"
            },
            "scope": 19236,
            "src": "571:101:37",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 19237,
        "src": "172:502:37"
      }
    ],
    "src": "51:624:37"
  },
  "compiler": {
    "name": "solc",
    "version": "0.6.12+commit.27d51765.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.2.3",
  "updatedAt": "2020-10-20T08:24:47.805Z",
  "devdoc": {
    "kind": "dev",
    "methods": {},
    "version": 1
  },
  "userdoc": {
    "kind": "user",
    "methods": {},
    "version": 1
  }
}