{
  "generated": "Generated. Do not edit.",
  "abi": [
    {
      "type": "constructor",
      "inputs": [
        {
          "name": "cfg",
          "type": "tuple",
          "internalType": "struct EquityOracleConfig",
          "components": [
            {
              "name": "stockToken",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "loanToken",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "stockFeed",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "loanFeed",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "sequencerFeed",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "calendar",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "liveStaleness",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "loanStaleness",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "maxDarkDuration",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "darkHaircutBps",
              "type": "uint16",
              "internalType": "uint16"
            },
            {
              "name": "caBoundaryWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "sequencerGrace",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "darkStartOffset",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "darkEndOffset",
              "type": "uint64",
              "internalType": "uint64"
            }
          ]
        }
      ],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "caBoundaryWindow",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint64",
          "internalType": "uint64"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "calendar",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "address",
          "internalType": "contract IHolidayCalendar"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "darkEndOffset",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint64",
          "internalType": "uint64"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "darkHaircutBps",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint16",
          "internalType": "uint16"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "darkStartOffset",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint64",
          "internalType": "uint64"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "liveStaleness",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint64",
          "internalType": "uint64"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "loanFeed",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "address",
          "internalType": "contract IAggregatorV3"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "loanStaleness",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint64",
          "internalType": "uint64"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "loanToken",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "address",
          "internalType": "address"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "maxDarkDuration",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint64",
          "internalType": "uint64"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "price",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "regime",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint8",
          "internalType": "enum Regime"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "scale",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "sequencerFeed",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "address",
          "internalType": "contract IAggregatorV3"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "sequencerGrace",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint64",
          "internalType": "uint64"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "stockFeed",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "address",
          "internalType": "contract IAggregatorV3"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "stockToken",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "address",
          "internalType": "contract IStockToken"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "error",
      "name": "DarkDurationExceeded",
      "inputs": []
    },
    {
      "type": "error",
      "name": "InvalidConfig",
      "inputs": []
    },
    {
      "type": "error",
      "name": "InvalidDecimals",
      "inputs": []
    },
    {
      "type": "error",
      "name": "InvalidFeed",
      "inputs": []
    },
    {
      "type": "error",
      "name": "MulDivOverflow",
      "inputs": []
    },
    {
      "type": "error",
      "name": "PriceUnavailable",
      "inputs": [
        {
          "name": "regime",
          "type": "uint8",
          "internalType": "enum Regime"
        }
      ]
    },
    {
      "type": "error",
      "name": "ZeroAddress",
      "inputs": []
    }
  ]
}
