{
  "_format": "hh-sol-artifact-1",
  "contractName": "PriceFeed",
  "sourceName": "contracts/PriceFeed.sol",
  "abi": [
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "price",
          "type": "uint256"
        }
      ],
      "name": "LastGoodPriceUpdated",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "DECIMAL_PRECISION",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "TARGET_DIGITS",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "TIMEOUT",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "fetchPrice",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "fetchPrice",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "lastGoodPrice",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "name",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "priceAggregator",
      "outputs": [
        {
          "internalType": "contract AggregatorV3Interface",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_priceAggregatorAddress",
          "type": "address"
        },
        {
          "internalType": "string",
          "name": "_name",
          "type": "string"
        }
      ],
      "name": "setAddresses",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b50610ac2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a35760003560e01c80633078fff511610076578063a20baee61161005b578063a20baee614610129578063ace1798e14610138578063f56f48f21461014b57600080fd5b80633078fff5146100e9578063625c813d1461011457600080fd5b80630490be83146100a857806306fdde03146100c45780630fdb11cf146100d95780631be5c92f146100e1575b600080fd5b6100b160025481565b6040519081526020015b60405180910390f35b6100cc610154565b6040516100bb9190610607565b6100b16101e2565b6100b1601281565b6001546100fc906001600160a01b031681565b6040516001600160a01b0390911681526020016100bb565b610127610122366004610687565b61022d565b005b6100b1670de0b6b3a764000081565b6100b1610146366004610749565b610381565b6100b1610e1081565b6000805461016190610764565b80601f016020809104026020016040519081016040528092919081815260200182805461018d90610764565b80156101da5780601f106101af576101008083540402835291602001916101da565b820191906000526020600020905b8154815290600101906020018083116101bd57829003601f168201915b505050505081565b6000806101ed61038b565b90506101f8816104d0565b1561020557505060025490565b600061021c8260200151836080015160ff16610553565b9050610227816105b8565b92915050565b60035460ff16156102855760405162461bcd60e51b815260206004820152601560248201527f41646472657373657320616c726561647920736574000000000000000000000060448201526064015b60405180910390fd5b6003805460ff19166001179055600061029e82826107ed565b50600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03841617905560006102dc61038b565b90506102e7816104d0565b156103595760405162461bcd60e51b8152602060048201526024808201527f5072696365466565643a20436861696e6c696e6b206d75737420626520776f7260448201527f6b696e6700000000000000000000000000000000000000000000000000000000606482015260840161027c565b60006103708260200151836080015160ff16610553565b905061037b816105b8565b50505050565b60006102276101e2565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152600160009054906101000a90046001600160a01b03166001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610425575060408051601f3d908101601f19168201909252610422918101906108ad565b60015b61042c5790565b60ff166080820152600160009054906101000a90046001600160a01b03166001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa9250505080156104a3575060408051601f3d908101601f191682019092526104a0918101906108ea565b60015b6104aa5790565b5069ffffffffffffffffffff909316845250602083015260408201526001606082015290565b600081606001516104e357506001919050565b815169ffffffffffffffffffff1660000361050057506001919050565b604082015115806105145750428260400151115b1561052157506001919050565b600082602001511361053557506001919050565b61053e826105eb565b1561054b57506001919050565b506000919050565b6000806012831061058557610569601284610950565b61057490600a610a47565b61057e9085610a53565b90506105b1565b60128310156105b157610599836012610950565b6105a490600a610a47565b6105ae9085610a75565b90505b9392505050565b600281905560405181907f4d29de21de555af78a62fc82dd4bc05e9ae5b0660a37f04729527e0f22780cd390600090a250565b6000610e108260400151426106009190610950565b1192915050565b600060208083528351808285015260005b8181101561063457858101830151858201604001528201610618565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461066c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561069a57600080fd5b6106a383610655565b9150602083013567ffffffffffffffff808211156106c057600080fd5b818501915085601f8301126106d457600080fd5b8135818111156106e6576106e6610671565b604051601f8201601f19908116603f0116810190838211818310171561070e5761070e610671565b8160405282815288602084870101111561072757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561075b57600080fd5b6105b182610655565b600181811c9082168061077857607f821691505b60208210810361079857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156107e857600081815260208120601f850160051c810160208610156107c55750805b601f850160051c820191505b818110156107e4578281556001016107d1565b5050505b505050565b815167ffffffffffffffff81111561080757610807610671565b61081b816108158454610764565b8461079e565b602080601f83116001811461085057600084156108385750858301515b600019600386901b1c1916600185901b1785556107e4565b600085815260208120601f198616915b8281101561087f57888601518255948401946001909101908401610860565b508582101561089d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156108bf57600080fd5b815160ff811681146105b157600080fd5b805169ffffffffffffffffffff8116811461066c57600080fd5b600080600080600060a0868803121561090257600080fd5b61090b866108d0565b945060208601519350604086015192506060860151915061092e608087016108d0565b90509295509295909350565b634e487b7160e01b600052601160045260246000fd5b818103818111156102275761022761093a565b600181815b8085111561099e5781600019048211156109845761098461093a565b8085161561099157918102915b93841c9390800290610968565b509250929050565b6000826109b557506001610227565b816109c257506000610227565b81600181146109d857600281146109e2576109fe565b6001915050610227565b60ff8411156109f3576109f361093a565b50506001821b610227565b5060208310610133831016604e8410600b8410161715610a21575081810a610227565b610a2b8383610963565b8060001904821115610a3f57610a3f61093a565b029392505050565b60006105b183836109a6565b600082610a7057634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176102275761022761093a56fea26469706673582212209384338dab4bfd70e7f442e59c70d23871337a39e012981689e06ecf1939d01164736f6c63430008130033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a35760003560e01c80633078fff511610076578063a20baee61161005b578063a20baee614610129578063ace1798e14610138578063f56f48f21461014b57600080fd5b80633078fff5146100e9578063625c813d1461011457600080fd5b80630490be83146100a857806306fdde03146100c45780630fdb11cf146100d95780631be5c92f146100e1575b600080fd5b6100b160025481565b6040519081526020015b60405180910390f35b6100cc610154565b6040516100bb9190610607565b6100b16101e2565b6100b1601281565b6001546100fc906001600160a01b031681565b6040516001600160a01b0390911681526020016100bb565b610127610122366004610687565b61022d565b005b6100b1670de0b6b3a764000081565b6100b1610146366004610749565b610381565b6100b1610e1081565b6000805461016190610764565b80601f016020809104026020016040519081016040528092919081815260200182805461018d90610764565b80156101da5780601f106101af576101008083540402835291602001916101da565b820191906000526020600020905b8154815290600101906020018083116101bd57829003601f168201915b505050505081565b6000806101ed61038b565b90506101f8816104d0565b1561020557505060025490565b600061021c8260200151836080015160ff16610553565b9050610227816105b8565b92915050565b60035460ff16156102855760405162461bcd60e51b815260206004820152601560248201527f41646472657373657320616c726561647920736574000000000000000000000060448201526064015b60405180910390fd5b6003805460ff19166001179055600061029e82826107ed565b50600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03841617905560006102dc61038b565b90506102e7816104d0565b156103595760405162461bcd60e51b8152602060048201526024808201527f5072696365466565643a20436861696e6c696e6b206d75737420626520776f7260448201527f6b696e6700000000000000000000000000000000000000000000000000000000606482015260840161027c565b60006103708260200151836080015160ff16610553565b905061037b816105b8565b50505050565b60006102276101e2565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152600160009054906101000a90046001600160a01b03166001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610425575060408051601f3d908101601f19168201909252610422918101906108ad565b60015b61042c5790565b60ff166080820152600160009054906101000a90046001600160a01b03166001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa9250505080156104a3575060408051601f3d908101601f191682019092526104a0918101906108ea565b60015b6104aa5790565b5069ffffffffffffffffffff909316845250602083015260408201526001606082015290565b600081606001516104e357506001919050565b815169ffffffffffffffffffff1660000361050057506001919050565b604082015115806105145750428260400151115b1561052157506001919050565b600082602001511361053557506001919050565b61053e826105eb565b1561054b57506001919050565b506000919050565b6000806012831061058557610569601284610950565b61057490600a610a47565b61057e9085610a53565b90506105b1565b60128310156105b157610599836012610950565b6105a490600a610a47565b6105ae9085610a75565b90505b9392505050565b600281905560405181907f4d29de21de555af78a62fc82dd4bc05e9ae5b0660a37f04729527e0f22780cd390600090a250565b6000610e108260400151426106009190610950565b1192915050565b600060208083528351808285015260005b8181101561063457858101830151858201604001528201610618565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461066c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561069a57600080fd5b6106a383610655565b9150602083013567ffffffffffffffff808211156106c057600080fd5b818501915085601f8301126106d457600080fd5b8135818111156106e6576106e6610671565b604051601f8201601f19908116603f0116810190838211818310171561070e5761070e610671565b8160405282815288602084870101111561072757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561075b57600080fd5b6105b182610655565b600181811c9082168061077857607f821691505b60208210810361079857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156107e857600081815260208120601f850160051c810160208610156107c55750805b601f850160051c820191505b818110156107e4578281556001016107d1565b5050505b505050565b815167ffffffffffffffff81111561080757610807610671565b61081b816108158454610764565b8461079e565b602080601f83116001811461085057600084156108385750858301515b600019600386901b1c1916600185901b1785556107e4565b600085815260208120601f198616915b8281101561087f57888601518255948401946001909101908401610860565b508582101561089d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156108bf57600080fd5b815160ff811681146105b157600080fd5b805169ffffffffffffffffffff8116811461066c57600080fd5b600080600080600060a0868803121561090257600080fd5b61090b866108d0565b945060208601519350604086015192506060860151915061092e608087016108d0565b90509295509295909350565b634e487b7160e01b600052601160045260246000fd5b818103818111156102275761022761093a565b600181815b8085111561099e5781600019048211156109845761098461093a565b8085161561099157918102915b93841c9390800290610968565b509250929050565b6000826109b557506001610227565b816109c257506000610227565b81600181146109d857600281146109e2576109fe565b6001915050610227565b60ff8411156109f3576109f361093a565b50506001821b610227565b5060208310610133831016604e8410600b8410161715610a21575081810a610227565b610a2b8383610963565b8060001904821115610a3f57610a3f61093a565b029392505050565b60006105b183836109a6565b600082610a7057634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176102275761022761093a56fea26469706673582212209384338dab4bfd70e7f442e59c70d23871337a39e012981689e06ecf1939d01164736f6c63430008130033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
