{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "urn:capstone:back-to-back-funding-book:numerical-inputs:v1r2",
  "title": "Strict public numerical and assumption annex",
  "description": "Explicit source parameters only. No missing-field defaults or profile-file fallback. Closed types are independent of any calculated reference output.",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "ois",
    "internal_AAA_initial",
    "execution_margin",
    "replacement_margin",
    "reference_coupon_spread",
    "deployment_coupon_spread",
    "opening_legacy_spread",
    "provider_CDS",
    "own_bond_spread",
    "own_CDS_spread",
    "stressed_own_bond_spread",
    "stressed_provider_CDS",
    "opening_free_cash",
    "opening_legacy_funding",
    "incurred_CVA",
    "notional",
    "funding_years",
    "deployment_years",
    "quarter",
    "provider_recovery",
    "assumption_status",
    "schema_version",
    "currency",
    "conditional_reserve_facility",
    "regulatory",
    "desk",
    "actions",
    "leverage_snapshot",
    "collateral_gate",
    "reserve_uncertainty",
    "terminal",
    "allocation",
    "funding_contract",
    "replacement_quote",
    "cash_ledger",
    "day_one_accounting",
    "whole_book",
    "collateral_comparison",
    "source_evidence",
    "scenarios",
    "classification_countercase"
  ],
  "properties": {
    "ois": {
      "$ref": "#/$defs/decimal"
    },
    "internal_AAA_initial": {
      "$ref": "#/$defs/decimal"
    },
    "execution_margin": {
      "$ref": "#/$defs/decimal"
    },
    "replacement_margin": {
      "$ref": "#/$defs/decimal"
    },
    "reference_coupon_spread": {
      "$ref": "#/$defs/decimal"
    },
    "deployment_coupon_spread": {
      "$ref": "#/$defs/decimal"
    },
    "opening_legacy_spread": {
      "$ref": "#/$defs/decimal"
    },
    "provider_CDS": {
      "$ref": "#/$defs/nonnegative"
    },
    "own_bond_spread": {
      "$ref": "#/$defs/nonnegative"
    },
    "own_CDS_spread": {
      "$ref": "#/$defs/nonnegative"
    },
    "stressed_own_bond_spread": {
      "$ref": "#/$defs/nonnegative"
    },
    "stressed_provider_CDS": {
      "$ref": "#/$defs/nonnegative"
    },
    "opening_free_cash": {
      "$ref": "#/$defs/nonnegative"
    },
    "opening_legacy_funding": {
      "$ref": "#/$defs/nonnegative"
    },
    "incurred_CVA": {
      "$ref": "#/$defs/nonnegative"
    },
    "notional": {
      "$ref": "#/$defs/positive"
    },
    "funding_years": {
      "$ref": "#/$defs/positive"
    },
    "deployment_years": {
      "$ref": "#/$defs/positive"
    },
    "quarter": {
      "$ref": "#/$defs/positive"
    },
    "provider_recovery": {
      "$ref": "#/$defs/ratio"
    },
    "assumption_status": {
      "$ref": "#/$defs/text"
    },
    "schema_version": {
      "const": "back_to_back_funding_book.v1r2"
    },
    "currency": {
      "$ref": "#/$defs/currency"
    },
    "conditional_reserve_facility": {
      "$ref": "#/$defs/conditional_reserve_facility"
    },
    "regulatory": {
      "$ref": "#/$defs/regulatory"
    },
    "desk": {
      "$ref": "#/$defs/desk"
    },
    "actions": {
      "$ref": "#/$defs/actions"
    },
    "leverage_snapshot": {
      "$ref": "#/$defs/leverage_snapshot"
    },
    "collateral_gate": {
      "$ref": "#/$defs/collateral_gate"
    },
    "reserve_uncertainty": {
      "$ref": "#/$defs/reserve_uncertainty"
    },
    "terminal": {
      "$ref": "#/$defs/terminal"
    },
    "allocation": {
      "$ref": "#/$defs/allocation"
    },
    "funding_contract": {
      "$ref": "#/$defs/funding_contract"
    },
    "replacement_quote": {
      "$ref": "#/$defs/replacement_quote"
    },
    "cash_ledger": {
      "$ref": "#/$defs/cash_ledger"
    },
    "day_one_accounting": {
      "$ref": "#/$defs/day_one_accounting"
    },
    "whole_book": {
      "$ref": "#/$defs/whole_book"
    },
    "collateral_comparison": {
      "$ref": "#/$defs/collateral_comparison"
    },
    "source_evidence": {
      "$ref": "#/$defs/source_evidence_map"
    },
    "scenarios": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/scenario"
      },
      "minItems": 1
    },
    "classification_countercase": {
      "$ref": "#/$defs/classification_countercase"
    }
  },
  "$defs": {
    "text": {
      "type": "string",
      "minLength": 1
    },
    "decimal": {
      "type": "string",
      "pattern": "^-?(0|[1-9][0-9]*)(\\.[0-9]+)?(?![\\s\\S])"
    },
    "nonnegative": {
      "type": "string",
      "pattern": "^(0|[1-9][0-9]*)(\\.[0-9]+)?(?![\\s\\S])"
    },
    "positive": {
      "type": "string",
      "pattern": "^(?:[1-9][0-9]*(?:\\.[0-9]+)?|0\\.[0-9]*[1-9][0-9]*)(?![\\s\\S])"
    },
    "ratio": {
      "type": "string",
      "pattern": "^(?:0(?:\\.[0-9]+)?|1(?:\\.0+)?)(?![\\s\\S])"
    },
    "date": {
      "type": "string",
      "format": "date",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "currency": {
      "const": "USD"
    },
    "flag": {
      "type": "boolean"
    },
    "count": {
      "type": "integer",
      "minimum": 0
    },
    "id": {
      "type": "string",
      "pattern": "^[A-Za-z][A-Za-z0-9_.:-]*$"
    },
    "source": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "file",
        "locator"
      ],
      "properties": {
        "file": {
          "type": "string",
          "pattern": "^(?:[A-Za-z0-9][A-Za-z0-9_.-]*/)+[A-Za-z0-9][A-Za-z0-9_.-]*\\.(md|json|txt)$"
        },
        "locator": {
          "$ref": "#/$defs/text"
        }
      }
    },
    "haircuts": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "up_to_1",
        "up_to_3",
        "up_to_5",
        "up_to_10",
        "over_10"
      ],
      "properties": {
        "up_to_1": {
          "$ref": "#/$defs/ratio"
        },
        "up_to_3": {
          "$ref": "#/$defs/ratio"
        },
        "up_to_5": {
          "$ref": "#/$defs/ratio"
        },
        "up_to_10": {
          "$ref": "#/$defs/ratio"
        },
        "over_10": {
          "$ref": "#/$defs/ratio"
        }
      }
    },
    "conditional_reserve_facility": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "funding_spread_beta",
        "own_spread_initial",
        "fee",
        "opening_cash",
        "opening_equity",
        "scope",
        "target",
        "default_model",
        "deposit_remuneration",
        "cash_interest",
        "coupons_paid_from",
        "reusable_VM",
        "executed"
      ],
      "properties": {
        "funding_spread_beta": {
          "$ref": "#/$defs/decimal"
        },
        "own_spread_initial": {
          "$ref": "#/$defs/nonnegative"
        },
        "fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "opening_cash": {
          "$ref": "#/$defs/nonnegative"
        },
        "opening_equity": {
          "$ref": "#/$defs/nonnegative"
        },
        "scope": {
          "$ref": "#/$defs/text"
        },
        "target": {
          "const": "positive_incremental_funding_mark_ois_deposit"
        },
        "default_model": {
          "const": "deterministic_no_default"
        },
        "deposit_remuneration": {
          "const": "OIS"
        },
        "cash_interest": {
          "const": "OIS"
        },
        "coupons_paid_from": {
          "const": "opening_cash_then_executed_deficit_facility"
        },
        "reusable_VM": {
          "const": "0"
        },
        "executed": {
          "$ref": "#/$defs/flag"
        }
      }
    },
    "regulatory": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "alpha",
        "sd_decay",
        "business_days",
        "min_maturity_days",
        "bespoke_mpor_days",
        "margin_scale",
        "BA_discount_decay",
        "maturity_cap",
        "protection_floor",
        "credit_protection_original_minimum",
        "secured_lending_holding_days",
        "repo_holding_days",
        "haircut_table_days",
        "BA_one_year_floor",
        "haircut_revaluation_days",
        "CVA_RWA_multiplier",
        "single_name_AAA_sf",
        "single_name_A_sf",
        "IR_sf",
        "credit_rho",
        "multiplier_floor",
        "provider_rw",
        "protection_provider_rw",
        "deployment_rw",
        "minimum_total_capital",
        "leverage_minimum",
        "BA_financial_IG_rw",
        "BA_scalar",
        "BA_rho",
        "BA_beta",
        "BB_sovereign_haircut",
        "gold_haircut",
        "main_index_equity_haircut",
        "FX_haircut",
        "BA_short_term_exception_evidence",
        "BA_short_term_exception",
        "AAA_other_haircuts",
        "BBB_other_haircuts",
        "AAA_sovereign_haircuts",
        "BBB_sovereign_haircuts",
        "AAA_securitisation_haircuts",
        "BBB_securitisation_haircuts"
      ],
      "properties": {
        "alpha": {
          "$ref": "#/$defs/positive"
        },
        "sd_decay": {
          "$ref": "#/$defs/positive"
        },
        "business_days": {
          "$ref": "#/$defs/positive"
        },
        "min_maturity_days": {
          "$ref": "#/$defs/positive"
        },
        "bespoke_mpor_days": {
          "$ref": "#/$defs/positive"
        },
        "margin_scale": {
          "$ref": "#/$defs/positive"
        },
        "BA_discount_decay": {
          "$ref": "#/$defs/positive"
        },
        "maturity_cap": {
          "$ref": "#/$defs/positive"
        },
        "protection_floor": {
          "$ref": "#/$defs/positive"
        },
        "credit_protection_original_minimum": {
          "$ref": "#/$defs/positive"
        },
        "secured_lending_holding_days": {
          "$ref": "#/$defs/positive"
        },
        "repo_holding_days": {
          "$ref": "#/$defs/positive"
        },
        "haircut_table_days": {
          "$ref": "#/$defs/positive"
        },
        "BA_one_year_floor": {
          "$ref": "#/$defs/positive"
        },
        "haircut_revaluation_days": {
          "$ref": "#/$defs/positive"
        },
        "CVA_RWA_multiplier": {
          "$ref": "#/$defs/positive"
        },
        "single_name_AAA_sf": {
          "$ref": "#/$defs/ratio"
        },
        "single_name_A_sf": {
          "$ref": "#/$defs/ratio"
        },
        "IR_sf": {
          "$ref": "#/$defs/ratio"
        },
        "credit_rho": {
          "$ref": "#/$defs/ratio"
        },
        "multiplier_floor": {
          "$ref": "#/$defs/ratio"
        },
        "provider_rw": {
          "$ref": "#/$defs/ratio"
        },
        "protection_provider_rw": {
          "$ref": "#/$defs/ratio"
        },
        "deployment_rw": {
          "$ref": "#/$defs/ratio"
        },
        "minimum_total_capital": {
          "$ref": "#/$defs/ratio"
        },
        "leverage_minimum": {
          "$ref": "#/$defs/ratio"
        },
        "BA_financial_IG_rw": {
          "$ref": "#/$defs/ratio"
        },
        "BA_scalar": {
          "$ref": "#/$defs/ratio"
        },
        "BA_rho": {
          "$ref": "#/$defs/ratio"
        },
        "BA_beta": {
          "$ref": "#/$defs/ratio"
        },
        "BB_sovereign_haircut": {
          "$ref": "#/$defs/ratio"
        },
        "gold_haircut": {
          "$ref": "#/$defs/ratio"
        },
        "main_index_equity_haircut": {
          "$ref": "#/$defs/ratio"
        },
        "FX_haircut": {
          "$ref": "#/$defs/ratio"
        },
        "BA_short_term_exception_evidence": {
          "$ref": "#/$defs/text"
        },
        "BA_short_term_exception": {
          "$ref": "#/$defs/flag"
        },
        "AAA_other_haircuts": {
          "$ref": "#/$defs/haircuts"
        },
        "BBB_other_haircuts": {
          "$ref": "#/$defs/haircuts"
        },
        "AAA_sovereign_haircuts": {
          "$ref": "#/$defs/haircuts"
        },
        "BBB_sovereign_haircuts": {
          "$ref": "#/$defs/haircuts"
        },
        "AAA_securitisation_haircuts": {
          "$ref": "#/$defs/haircuts"
        },
        "BBB_securitisation_haircuts": {
          "$ref": "#/$defs/haircuts"
        }
      }
    },
    "desk": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "CSA_closeout_gap_funding_move",
        "equity_hurdle",
        "day1_fee",
        "capital_sampling",
        "discount_convention",
        "day1_deferral_policy",
        "CVA_default_grid",
        "CVA_KVA_survival",
        "funding_KVA_scope",
        "accounting_scope",
        "action_timing",
        "annual_schedule",
        "component_pricing_scope"
      ],
      "properties": {
        "CSA_closeout_gap_funding_move": {
          "$ref": "#/$defs/decimal"
        },
        "equity_hurdle": {
          "$ref": "#/$defs/nonnegative"
        },
        "day1_fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "capital_sampling": {
          "const": "beginning_interval_end_payment"
        },
        "discount_convention": {
          "const": "nominal_ois_compounded_contract_quarter"
        },
        "day1_deferral_policy": {
          "const": "frozen_pricing_annuity_management_deferral"
        },
        "CVA_default_grid": {
          "const": "quarter_end_constant_cds_lgd"
        },
        "CVA_KVA_survival": {
          "const": "default_weighted_cva_contractual_kva"
        },
        "funding_KVA_scope": {
          "$ref": "#/$defs/text"
        },
        "accounting_scope": {
          "$ref": "#/$defs/text"
        },
        "action_timing": {
          "const": "business_day_event_grid_next_quarter_payment"
        },
        "annual_schedule": {
          "$ref": "#/$defs/text"
        },
        "component_pricing_scope": {
          "$ref": "#/$defs/text"
        }
      }
    },
    "csa_action": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "stress_funding_move",
        "fee",
        "annual_commitment_fee",
        "facility_limit",
        "liquidity_buffer",
        "stress_days",
        "facility_spread",
        "effective_business_days",
        "margin_remuneration_spread",
        "annual_administration_fee",
        "facility_upfront_fee",
        "facility_commitment_rate",
        "facility_draw_ois",
        "stress_scenario_probability",
        "quote_id",
        "requires",
        "facility_repayment_source",
        "cost_scope",
        "executable",
        "baseline_executed",
        "two_way",
        "full_mark_coverage",
        "rehypothecation_allowed",
        "leverage_vm",
        "quoted_at",
        "source_evidence"
      ],
      "properties": {
        "stress_funding_move": {
          "$ref": "#/$defs/decimal"
        },
        "fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "annual_commitment_fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "facility_limit": {
          "$ref": "#/$defs/nonnegative"
        },
        "liquidity_buffer": {
          "$ref": "#/$defs/nonnegative"
        },
        "stress_days": {
          "$ref": "#/$defs/nonnegative"
        },
        "facility_spread": {
          "$ref": "#/$defs/nonnegative"
        },
        "effective_business_days": {
          "$ref": "#/$defs/nonnegative"
        },
        "margin_remuneration_spread": {
          "$ref": "#/$defs/nonnegative"
        },
        "annual_administration_fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "facility_upfront_fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "facility_commitment_rate": {
          "$ref": "#/$defs/nonnegative"
        },
        "facility_draw_ois": {
          "$ref": "#/$defs/nonnegative"
        },
        "stress_scenario_probability": {
          "$ref": "#/$defs/ratio"
        },
        "quote_id": {
          "$ref": "#/$defs/text"
        },
        "requires": {
          "$ref": "#/$defs/text"
        },
        "facility_repayment_source": {
          "$ref": "#/$defs/text"
        },
        "cost_scope": {
          "$ref": "#/$defs/text"
        },
        "executable": {
          "$ref": "#/$defs/flag"
        },
        "baseline_executed": {
          "$ref": "#/$defs/flag"
        },
        "two_way": {
          "$ref": "#/$defs/flag"
        },
        "full_mark_coverage": {
          "$ref": "#/$defs/flag"
        },
        "rehypothecation_allowed": {
          "$ref": "#/$defs/flag"
        },
        "leverage_vm": {
          "$ref": "#/$defs/leverage_vm"
        },
        "quoted_at": {
          "$ref": "#/$defs/date"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "substitute_action": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "replacement_credit_move",
        "upfront_fee",
        "annual_spread_concession",
        "unwind_fee",
        "effective_business_days",
        "replacement_coupon_spread",
        "reversal_effective_business_days",
        "replacement_quantity",
        "replacement_residual_years",
        "original_years",
        "quote_id",
        "requires",
        "replacement_issuer",
        "executable",
        "baseline_executed",
        "quoted_at",
        "replacement_issuer_kind",
        "replacement_issue_rating",
        "replacement_material_positive_correlation",
        "replacement_issued",
        "replacement_enforceable",
        "replacement_market_liquid",
        "replacement_same_currency",
        "eligibility_source_evidence",
        "source_evidence"
      ],
      "properties": {
        "replacement_credit_move": {
          "$ref": "#/$defs/decimal"
        },
        "upfront_fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "annual_spread_concession": {
          "$ref": "#/$defs/nonnegative"
        },
        "unwind_fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "effective_business_days": {
          "$ref": "#/$defs/nonnegative"
        },
        "replacement_coupon_spread": {
          "$ref": "#/$defs/nonnegative"
        },
        "reversal_effective_business_days": {
          "$ref": "#/$defs/nonnegative"
        },
        "replacement_quantity": {
          "$ref": "#/$defs/positive"
        },
        "replacement_residual_years": {
          "$ref": "#/$defs/nonnegative"
        },
        "original_years": {
          "$ref": "#/$defs/positive"
        },
        "quote_id": {
          "$ref": "#/$defs/text"
        },
        "requires": {
          "$ref": "#/$defs/text"
        },
        "replacement_issuer": {
          "$ref": "#/$defs/text"
        },
        "executable": {
          "$ref": "#/$defs/flag"
        },
        "baseline_executed": {
          "$ref": "#/$defs/flag"
        },
        "quoted_at": {
          "$ref": "#/$defs/date"
        },
        "replacement_issuer_kind": {
          "type": "string",
          "enum": [
            "sovereign",
            "other",
            "securitisation"
          ]
        },
        "replacement_issue_rating": {
          "type": "string",
          "enum": [
            "AAA",
            "AA",
            "A",
            "BBB",
            "BB",
            "B",
            "CCC"
          ]
        },
        "replacement_material_positive_correlation": {
          "$ref": "#/$defs/flag"
        },
        "replacement_issued": {
          "$ref": "#/$defs/flag"
        },
        "replacement_enforceable": {
          "$ref": "#/$defs/flag"
        },
        "replacement_market_liquid": {
          "$ref": "#/$defs/flag"
        },
        "replacement_same_currency": {
          "$ref": "#/$defs/flag"
        },
        "eligibility_source_evidence": {
          "$ref": "#/$defs/source"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "offset_quote": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "quoted_upfront",
        "scenario_margin_beta",
        "notional",
        "quantity",
        "remaining_years",
        "id",
        "contract_id",
        "reference_id",
        "provider_id",
        "conversion",
        "executable",
        "quoted_at",
        "source_evidence"
      ],
      "properties": {
        "quoted_upfront": {
          "$ref": "#/$defs/decimal"
        },
        "scenario_margin_beta": {
          "$ref": "#/$defs/decimal"
        },
        "notional": {
          "$ref": "#/$defs/positive"
        },
        "quantity": {
          "$ref": "#/$defs/positive"
        },
        "remaining_years": {
          "$ref": "#/$defs/positive"
        },
        "id": {
          "$ref": "#/$defs/text"
        },
        "contract_id": {
          "$ref": "#/$defs/text"
        },
        "reference_id": {
          "$ref": "#/$defs/text"
        },
        "provider_id": {
          "$ref": "#/$defs/text"
        },
        "conversion": {
          "const": "upfront_implied_spread_remaining_annuity"
        },
        "executable": {
          "$ref": "#/$defs/flag"
        },
        "quoted_at": {
          "$ref": "#/$defs/date"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "offset_trade": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "notional",
        "quantity",
        "remaining_years",
        "contract_id",
        "provider_id",
        "netting_set_id",
        "reference_id",
        "credit_delta",
        "role",
        "quote"
      ],
      "properties": {
        "notional": {
          "$ref": "#/$defs/positive"
        },
        "quantity": {
          "$ref": "#/$defs/positive"
        },
        "remaining_years": {
          "$ref": "#/$defs/positive"
        },
        "contract_id": {
          "$ref": "#/$defs/text"
        },
        "provider_id": {
          "$ref": "#/$defs/text"
        },
        "netting_set_id": {
          "$ref": "#/$defs/text"
        },
        "reference_id": {
          "$ref": "#/$defs/text"
        },
        "credit_delta": {
          "type": "string",
          "enum": [
            "-1",
            "1"
          ]
        },
        "role": {
          "type": "string",
          "enum": [
            "total_return_receiver",
            "total_return_payer"
          ]
        },
        "quote": {
          "$ref": "#/$defs/offset_quote"
        }
      }
    },
    "netting_action": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "fee",
        "effective_business_days",
        "legal_status",
        "quote_id",
        "master_id",
        "executable",
        "baseline_executed",
        "same_provider_required",
        "opinion_delivered_at_execution",
        "quoted_at",
        "opinion_jurisdictions",
        "covered_trade_ids",
        "other_trade",
        "source_evidence"
      ],
      "properties": {
        "fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "effective_business_days": {
          "$ref": "#/$defs/nonnegative"
        },
        "legal_status": {
          "$ref": "#/$defs/text"
        },
        "quote_id": {
          "$ref": "#/$defs/text"
        },
        "master_id": {
          "$ref": "#/$defs/text"
        },
        "executable": {
          "$ref": "#/$defs/flag"
        },
        "baseline_executed": {
          "$ref": "#/$defs/flag"
        },
        "same_provider_required": {
          "$ref": "#/$defs/flag"
        },
        "opinion_delivered_at_execution": {
          "$ref": "#/$defs/flag"
        },
        "quoted_at": {
          "$ref": "#/$defs/date"
        },
        "opinion_jurisdictions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/text"
          },
          "minItems": 1,
          "uniqueItems": true
        },
        "covered_trade_ids": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/id"
          },
          "minItems": 2,
          "uniqueItems": true
        },
        "other_trade": {
          "$ref": "#/$defs/offset_trade"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "cds_quote": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "locked_premium",
        "base_market_premium",
        "stressed_market_premium",
        "notional",
        "remaining_years",
        "id",
        "reference_provider_id",
        "protection_provider_id",
        "conversion",
        "executable",
        "quoted_at",
        "source_evidence"
      ],
      "properties": {
        "locked_premium": {
          "$ref": "#/$defs/nonnegative"
        },
        "base_market_premium": {
          "$ref": "#/$defs/nonnegative"
        },
        "stressed_market_premium": {
          "$ref": "#/$defs/nonnegative"
        },
        "notional": {
          "$ref": "#/$defs/positive"
        },
        "remaining_years": {
          "$ref": "#/$defs/positive"
        },
        "id": {
          "$ref": "#/$defs/text"
        },
        "reference_provider_id": {
          "$ref": "#/$defs/text"
        },
        "protection_provider_id": {
          "$ref": "#/$defs/text"
        },
        "conversion": {
          "const": "cds_spread_difference_remaining_annuity"
        },
        "executable": {
          "$ref": "#/$defs/flag"
        },
        "quoted_at": {
          "$ref": "#/$defs/date"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "cds_action": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "hedge_CVA_gap_spread_move",
        "default_correlation",
        "premium",
        "fee",
        "hedge_provider_CDS",
        "effective_business_days",
        "annual_administration_fee",
        "undesignated_market_risk_capital",
        "notional",
        "years",
        "hedge_provider_mpor_days",
        "hedge_provider_recovery",
        "hedge_provider_CSA",
        "CCR_scope",
        "CVA_scope",
        "hedge_provider_CVA_method",
        "recognition_terms",
        "quote_id",
        "protection_provider_id",
        "reference_provider_id",
        "hedge_economic_term",
        "undesignated_market_risk_basis",
        "executable",
        "baseline_executed",
        "same_currency",
        "guarantee_equivalent",
        "CCR_qualified",
        "CVA_designation_eligible",
        "provider_independent",
        "direct_irrevocable_unconditional",
        "same_obligor_cross_default",
        "timely_cash_settlement",
        "hedge_provider_short_term_exception",
        "quoted_at",
        "covered_events",
        "replacement_quote",
        "source_evidence",
        "margin_terms",
        "tenor_starts",
        "year1_quote_clock"
      ],
      "properties": {
        "hedge_CVA_gap_spread_move": {
          "$ref": "#/$defs/decimal"
        },
        "default_correlation": {
          "$ref": "#/$defs/decimal"
        },
        "premium": {
          "$ref": "#/$defs/nonnegative"
        },
        "fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "hedge_provider_CDS": {
          "$ref": "#/$defs/nonnegative"
        },
        "effective_business_days": {
          "$ref": "#/$defs/nonnegative"
        },
        "annual_administration_fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "undesignated_market_risk_capital": {
          "$ref": "#/$defs/nonnegative"
        },
        "notional": {
          "$ref": "#/$defs/positive"
        },
        "years": {
          "$ref": "#/$defs/positive"
        },
        "hedge_provider_mpor_days": {
          "$ref": "#/$defs/positive"
        },
        "hedge_provider_recovery": {
          "$ref": "#/$defs/ratio"
        },
        "hedge_provider_CSA": {
          "$ref": "#/$defs/text"
        },
        "CCR_scope": {
          "$ref": "#/$defs/text"
        },
        "CVA_scope": {
          "$ref": "#/$defs/text"
        },
        "hedge_provider_CVA_method": {
          "const": "desk_annex_normal_saccr"
        },
        "recognition_terms": {
          "$ref": "#/$defs/recognition_terms"
        },
        "quote_id": {
          "$ref": "#/$defs/text"
        },
        "protection_provider_id": {
          "$ref": "#/$defs/text"
        },
        "reference_provider_id": {
          "$ref": "#/$defs/text"
        },
        "hedge_economic_term": {
          "$ref": "#/$defs/text"
        },
        "undesignated_market_risk_basis": {
          "$ref": "#/$defs/text"
        },
        "executable": {
          "$ref": "#/$defs/flag"
        },
        "baseline_executed": {
          "$ref": "#/$defs/flag"
        },
        "same_currency": {
          "$ref": "#/$defs/flag"
        },
        "guarantee_equivalent": {
          "$ref": "#/$defs/flag"
        },
        "CCR_qualified": {
          "$ref": "#/$defs/flag"
        },
        "CVA_designation_eligible": {
          "$ref": "#/$defs/flag"
        },
        "provider_independent": {
          "$ref": "#/$defs/flag"
        },
        "direct_irrevocable_unconditional": {
          "$ref": "#/$defs/flag"
        },
        "same_obligor_cross_default": {
          "$ref": "#/$defs/flag"
        },
        "timely_cash_settlement": {
          "$ref": "#/$defs/flag"
        },
        "hedge_provider_short_term_exception": {
          "$ref": "#/$defs/flag"
        },
        "quoted_at": {
          "$ref": "#/$defs/date"
        },
        "covered_events": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "failure_to_pay",
              "bankruptcy",
              "restructuring"
            ]
          },
          "minItems": 1,
          "uniqueItems": true
        },
        "replacement_quote": {
          "$ref": "#/$defs/cds_quote"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        },
        "margin_terms": {
          "$ref": "#/$defs/margin_terms"
        },
        "tenor_starts": {
          "const": "execution"
        },
        "year1_quote_clock": {
          "$ref": "#/$defs/text"
        }
      }
    },
    "hold_action": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "effective_business_days",
        "fee",
        "action_id",
        "description",
        "executable",
        "source_evidence"
      ],
      "properties": {
        "effective_business_days": {
          "$ref": "#/$defs/nonnegative"
        },
        "fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "action_id": {
          "$ref": "#/$defs/text"
        },
        "description": {
          "$ref": "#/$defs/text"
        },
        "executable": {
          "$ref": "#/$defs/flag"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "actions": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "CSA",
        "substitute",
        "netting",
        "CDS",
        "hold"
      ],
      "properties": {
        "CSA": {
          "$ref": "#/$defs/csa_action"
        },
        "substitute": {
          "$ref": "#/$defs/substitute_action"
        },
        "netting": {
          "$ref": "#/$defs/netting_action"
        },
        "CDS": {
          "$ref": "#/$defs/cds_action"
        },
        "hold": {
          "$ref": "#/$defs/hold_action"
        }
      }
    },
    "leverage_snapshot": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "retained_U",
        "deployment",
        "other_cash",
        "written_credit_notional",
        "available_Tier1",
        "AVA",
        "status",
        "use_30_35_PFE_exclusion",
        "preexisting_purchased_protection"
      ],
      "properties": {
        "retained_U": {
          "$ref": "#/$defs/nonnegative"
        },
        "deployment": {
          "$ref": "#/$defs/nonnegative"
        },
        "other_cash": {
          "$ref": "#/$defs/nonnegative"
        },
        "written_credit_notional": {
          "$ref": "#/$defs/nonnegative"
        },
        "available_Tier1": {
          "$ref": "#/$defs/nonnegative"
        },
        "AVA": {
          "$ref": "#/$defs/nonnegative"
        },
        "status": {
          "$ref": "#/$defs/text"
        },
        "use_30_35_PFE_exclusion": {
          "$ref": "#/$defs/flag"
        },
        "preexisting_purchased_protection": {
          "const": "none"
        }
      }
    },
    "collateral_gate": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "credit_move",
        "residual_years",
        "collateral_value",
        "coupon_spread",
        "quantity",
        "original_years",
        "collateral_owner",
        "obligor",
        "issuer",
        "ratings_permitted",
        "material_positive_correlation",
        "issued",
        "enforceable",
        "same_currency",
        "market_liquid",
        "book",
        "issue_rating",
        "haircut_method",
        "issuer_kind",
        "source_evidence"
      ],
      "properties": {
        "credit_move": {
          "$ref": "#/$defs/decimal"
        },
        "residual_years": {
          "$ref": "#/$defs/nonnegative"
        },
        "collateral_value": {
          "$ref": "#/$defs/nonnegative"
        },
        "coupon_spread": {
          "$ref": "#/$defs/nonnegative"
        },
        "quantity": {
          "$ref": "#/$defs/positive"
        },
        "original_years": {
          "$ref": "#/$defs/positive"
        },
        "collateral_owner": {
          "$ref": "#/$defs/text"
        },
        "obligor": {
          "$ref": "#/$defs/text"
        },
        "issuer": {
          "$ref": "#/$defs/text"
        },
        "ratings_permitted": {
          "$ref": "#/$defs/flag"
        },
        "material_positive_correlation": {
          "$ref": "#/$defs/flag"
        },
        "issued": {
          "$ref": "#/$defs/flag"
        },
        "enforceable": {
          "$ref": "#/$defs/flag"
        },
        "same_currency": {
          "$ref": "#/$defs/flag"
        },
        "market_liquid": {
          "$ref": "#/$defs/flag"
        },
        "book": {
          "type": "string",
          "enum": [
            "banking",
            "trading"
          ]
        },
        "issue_rating": {
          "type": "string",
          "enum": [
            "AAA",
            "AA",
            "A",
            "BBB",
            "BB",
            "B",
            "CCC",
            "unrated"
          ]
        },
        "haircut_method": {
          "const": "supervisory"
        },
        "issuer_kind": {
          "type": "string",
          "enum": [
            "sovereign",
            "other",
            "securitisation"
          ]
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "valuation_exposure": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "gross_value",
        "low_exit_cost",
        "high_exit_cost",
        "same_source_accounting_prudence",
        "cet1_sensitivity",
        "id",
        "recognised_fair_value"
      ],
      "properties": {
        "gross_value": {
          "$ref": "#/$defs/nonnegative"
        },
        "low_exit_cost": {
          "$ref": "#/$defs/nonnegative"
        },
        "high_exit_cost": {
          "$ref": "#/$defs/nonnegative"
        },
        "same_source_accounting_prudence": {
          "$ref": "#/$defs/nonnegative"
        },
        "cet1_sensitivity": {
          "$ref": "#/$defs/ratio"
        },
        "id": {
          "$ref": "#/$defs/text"
        },
        "recognised_fair_value": {
          "$ref": "#/$defs/flag"
        }
      }
    },
    "reserve_uncertainty": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "CET1_before_AVA",
        "fixed_RWA",
        "future_equity_years",
        "alpha",
        "confidence",
        "target_CET1_ratio",
        "other_categories",
        "scope",
        "method",
        "exposures"
      ],
      "properties": {
        "CET1_before_AVA": {
          "$ref": "#/$defs/nonnegative"
        },
        "fixed_RWA": {
          "$ref": "#/$defs/nonnegative"
        },
        "future_equity_years": {
          "$ref": "#/$defs/positive"
        },
        "alpha": {
          "$ref": "#/$defs/ratio"
        },
        "confidence": {
          "$ref": "#/$defs/ratio"
        },
        "target_CET1_ratio": {
          "$ref": "#/$defs/ratio"
        },
        "other_categories": {
          "$ref": "#/$defs/text"
        },
        "scope": {
          "$ref": "#/$defs/text"
        },
        "method": {
          "const": "incremental_core_model_risk_method_1"
        },
        "exposures": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/valuation_exposure"
          },
          "minItems": 1
        }
      }
    },
    "terminal": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "provider_dispute_receivable",
        "reserve_against_unresolved_claim",
        "contractual_maturity_reached",
        "dispute_settled",
        "all_obligations_settled"
      ],
      "properties": {
        "provider_dispute_receivable": {
          "$ref": "#/$defs/nonnegative"
        },
        "reserve_against_unresolved_claim": {
          "$ref": "#/$defs/nonnegative"
        },
        "contractual_maturity_reached": {
          "$ref": "#/$defs/flag"
        },
        "dispute_settled": {
          "$ref": "#/$defs/flag"
        },
        "all_obligations_settled": {
          "$ref": "#/$defs/flag"
        }
      }
    },
    "lot": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "value",
        "h10",
        "issuer",
        "issued",
        "available_for_pledge",
        "id",
        "asset_class",
        "eligible_lenders",
        "issuer_kind",
        "issue_rating",
        "residual_years",
        "same_currency",
        "material_positive_correlation",
        "enforceable",
        "right_to_return_collateral",
        "source_evidence"
      ],
      "properties": {
        "value": {
          "$ref": "#/$defs/positive"
        },
        "h10": {
          "$ref": "#/$defs/ratio"
        },
        "issuer": {
          "$ref": "#/$defs/text"
        },
        "issued": {
          "$ref": "#/$defs/flag"
        },
        "available_for_pledge": {
          "$ref": "#/$defs/flag"
        },
        "id": {
          "type": "string",
          "pattern": "^(L[12]|S(?:0[1-9]|[1-4][0-9]|50))$"
        },
        "asset_class": {
          "type": "string",
          "enum": [
            "IG_bond",
            "main_index_equity"
          ]
        },
        "eligible_lenders": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "Tol",
              "Div"
            ]
          },
          "minItems": 1,
          "uniqueItems": true
        },
        "issuer_kind": {
          "type": "string",
          "enum": [
            "sovereign",
            "other",
            "securitisation"
          ]
        },
        "issue_rating": {
          "type": "string",
          "enum": [
            "AAA",
            "AA",
            "A",
            "BBB",
            "BB",
            "B",
            "CCC",
            "unrated",
            "not_applicable_equity"
          ]
        },
        "residual_years": {
          "$ref": "#/$defs/nonnegative"
        },
        "same_currency": {
          "$ref": "#/$defs/flag"
        },
        "material_positive_correlation": {
          "$ref": "#/$defs/flag"
        },
        "enforceable": {
          "$ref": "#/$defs/flag"
        },
        "right_to_return_collateral": {
          "$ref": "#/$defs/flag"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "lender": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "CDS",
        "spread",
        "maximum_pool_value",
        "days",
        "rw",
        "haircut",
        "maximum_name_fraction",
        "legal_name",
        "quote_id",
        "executable",
        "quoted_at",
        "rating",
        "minimum_names",
        "currency",
        "source_evidence"
      ],
      "properties": {
        "CDS": {
          "$ref": "#/$defs/nonnegative"
        },
        "spread": {
          "$ref": "#/$defs/nonnegative"
        },
        "maximum_pool_value": {
          "$ref": "#/$defs/positive"
        },
        "days": {
          "$ref": "#/$defs/positive"
        },
        "rw": {
          "$ref": "#/$defs/ratio"
        },
        "haircut": {
          "$ref": "#/$defs/ratio"
        },
        "maximum_name_fraction": {
          "$ref": "#/$defs/ratio"
        },
        "legal_name": {
          "$ref": "#/$defs/text"
        },
        "quote_id": {
          "$ref": "#/$defs/text"
        },
        "executable": {
          "$ref": "#/$defs/flag"
        },
        "quoted_at": {
          "$ref": "#/$defs/date"
        },
        "rating": {
          "type": "string",
          "enum": [
            "AAA",
            "AA",
            "A",
            "BBB",
            "BB",
            "B",
            "CCC"
          ]
        },
        "minimum_names": {
          "type": "integer",
          "minimum": 1
        },
        "currency": {
          "$ref": "#/$defs/currency"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "normalised_comparison": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "safe_annual_volatility_low",
        "safe_annual_volatility_high",
        "equity_annual_volatility",
        "safe_market_haircut",
        "equity_market_haircut",
        "scope"
      ],
      "properties": {
        "safe_annual_volatility_low": {
          "$ref": "#/$defs/positive"
        },
        "safe_annual_volatility_high": {
          "$ref": "#/$defs/positive"
        },
        "equity_annual_volatility": {
          "$ref": "#/$defs/positive"
        },
        "safe_market_haircut": {
          "$ref": "#/$defs/ratio"
        },
        "equity_market_haircut": {
          "$ref": "#/$defs/ratio"
        },
        "scope": {
          "$ref": "#/$defs/text"
        }
      }
    },
    "allocation": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "capital_budget",
        "own_spread",
        "equity_hurdle",
        "days",
        "year_days",
        "requirement",
        "assignment_rule",
        "status",
        "risk_weight_basis",
        "proof_domain",
        "lots",
        "lenders",
        "short_term_optional_rw",
        "normalised_haircut_comparison"
      ],
      "properties": {
        "capital_budget": {
          "$ref": "#/$defs/nonnegative"
        },
        "own_spread": {
          "$ref": "#/$defs/nonnegative"
        },
        "equity_hurdle": {
          "$ref": "#/$defs/nonnegative"
        },
        "days": {
          "$ref": "#/$defs/positive"
        },
        "year_days": {
          "$ref": "#/$defs/positive"
        },
        "requirement": {
          "$ref": "#/$defs/positive"
        },
        "assignment_rule": {
          "$ref": "#/$defs/text"
        },
        "status": {
          "$ref": "#/$defs/text"
        },
        "risk_weight_basis": {
          "$ref": "#/$defs/text"
        },
        "proof_domain": {
          "$ref": "#/$defs/text"
        },
        "lots": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/lot"
          },
          "minItems": 52,
          "maxItems": 52
        },
        "lenders": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "Tol",
            "Div"
          ],
          "properties": {
            "Tol": {
              "$ref": "#/$defs/lender"
            },
            "Div": {
              "$ref": "#/$defs/lender"
            }
          }
        },
        "short_term_optional_rw": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "Tol",
            "Div"
          ],
          "properties": {
            "Tol": {
              "$ref": "#/$defs/ratio"
            },
            "Div": {
              "$ref": "#/$defs/ratio"
            }
          }
        },
        "normalised_haircut_comparison": {
          "$ref": "#/$defs/normalised_comparison"
        }
      }
    },
    "source_evidence_map": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "rules",
        "quotes",
        "contracts",
        "classification",
        "actions",
        "reference_input_contract",
        "cash_ledger"
      ],
      "properties": {
        "rules": {
          "$ref": "#/$defs/source"
        },
        "quotes": {
          "$ref": "#/$defs/source"
        },
        "contracts": {
          "$ref": "#/$defs/source"
        },
        "classification": {
          "$ref": "#/$defs/source"
        },
        "actions": {
          "$ref": "#/$defs/source"
        },
        "reference_input_contract": {
          "$ref": "#/$defs/source"
        },
        "cash_ledger": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "funding_contract": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "locked_financing_spread",
        "stub",
        "NICA",
        "threshold",
        "minimum_transfer_amount",
        "next_price_settlement_years",
        "mpor_floor",
        "notional",
        "quantity",
        "remaining_years",
        "last_reset_price",
        "contract_id",
        "provider_id",
        "netting_set_id",
        "reference_id",
        "reference_price_basis",
        "reset_basis",
        "full_reset_countercase_term",
        "regulatory_classification",
        "provider_sector",
        "provider_credit_quality",
        "full_value_reset",
        "full_reset_countercase_executed",
        "SA_CVA_approval",
        "ratings_permitted",
        "provider_bank_eligible",
        "provider_due_diligence_uplift",
        "ordinary_BA_maturity_floor_applies",
        "currency",
        "classification_evidence",
        "reference_evidence",
        "original_reference_rating",
        "reference_issuer_kind",
        "provider_ECRA_rating"
      ],
      "properties": {
        "locked_financing_spread": {
          "$ref": "#/$defs/decimal"
        },
        "stub": {
          "$ref": "#/$defs/decimal"
        },
        "NICA": {
          "$ref": "#/$defs/decimal"
        },
        "threshold": {
          "$ref": "#/$defs/nonnegative"
        },
        "minimum_transfer_amount": {
          "$ref": "#/$defs/nonnegative"
        },
        "next_price_settlement_years": {
          "$ref": "#/$defs/nonnegative"
        },
        "mpor_floor": {
          "$ref": "#/$defs/mpor_floor"
        },
        "notional": {
          "$ref": "#/$defs/positive"
        },
        "quantity": {
          "$ref": "#/$defs/positive"
        },
        "remaining_years": {
          "$ref": "#/$defs/positive"
        },
        "last_reset_price": {
          "$ref": "#/$defs/positive"
        },
        "contract_id": {
          "$ref": "#/$defs/text"
        },
        "provider_id": {
          "$ref": "#/$defs/text"
        },
        "netting_set_id": {
          "$ref": "#/$defs/text"
        },
        "reference_id": {
          "$ref": "#/$defs/text"
        },
        "reference_price_basis": {
          "$ref": "#/$defs/text"
        },
        "reset_basis": {
          "$ref": "#/$defs/text"
        },
        "full_reset_countercase_term": {
          "$ref": "#/$defs/text"
        },
        "regulatory_classification": {
          "$ref": "#/$defs/text"
        },
        "provider_sector": {
          "$ref": "#/$defs/text"
        },
        "provider_credit_quality": {
          "$ref": "#/$defs/text"
        },
        "full_value_reset": {
          "$ref": "#/$defs/flag"
        },
        "full_reset_countercase_executed": {
          "$ref": "#/$defs/flag"
        },
        "SA_CVA_approval": {
          "$ref": "#/$defs/flag"
        },
        "ratings_permitted": {
          "$ref": "#/$defs/flag"
        },
        "provider_bank_eligible": {
          "$ref": "#/$defs/flag"
        },
        "provider_due_diligence_uplift": {
          "$ref": "#/$defs/flag"
        },
        "ordinary_BA_maturity_floor_applies": {
          "$ref": "#/$defs/flag"
        },
        "currency": {
          "$ref": "#/$defs/currency"
        },
        "classification_evidence": {
          "$ref": "#/$defs/source"
        },
        "reference_evidence": {
          "$ref": "#/$defs/source"
        },
        "original_reference_rating": {
          "type": "string",
          "enum": [
            "AAA",
            "AA",
            "A",
            "BBB",
            "BB",
            "B",
            "CCC"
          ]
        },
        "reference_issuer_kind": {
          "type": "string",
          "enum": [
            "sovereign",
            "other",
            "securitisation"
          ]
        },
        "provider_ECRA_rating": {
          "type": "string",
          "enum": [
            "AAA",
            "AA",
            "A",
            "BBB",
            "BB",
            "B",
            "CCC"
          ]
        }
      }
    },
    "replacement_quote": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "locked_financing_spread",
        "old_reference_adjustment_upfront",
        "quoted_base_financing_spread",
        "scenario_margin_beta",
        "conversion_rate",
        "notional",
        "quantity",
        "remaining_years",
        "quarter",
        "id",
        "status",
        "contract_id",
        "reference_id",
        "reset_basis",
        "reset_price_convention",
        "conversion",
        "off_quarter_convention",
        "roll_convention",
        "closeout_basis",
        "executable",
        "includes_old_reference_adjustment",
        "quoted_at",
        "currency",
        "quote_basis",
        "source_evidence",
        "provider_id"
      ],
      "properties": {
        "locked_financing_spread": {
          "$ref": "#/$defs/decimal"
        },
        "old_reference_adjustment_upfront": {
          "$ref": "#/$defs/decimal"
        },
        "quoted_base_financing_spread": {
          "$ref": "#/$defs/decimal"
        },
        "scenario_margin_beta": {
          "$ref": "#/$defs/decimal"
        },
        "conversion_rate": {
          "$ref": "#/$defs/decimal"
        },
        "notional": {
          "$ref": "#/$defs/positive"
        },
        "quantity": {
          "$ref": "#/$defs/positive"
        },
        "remaining_years": {
          "$ref": "#/$defs/positive"
        },
        "quarter": {
          "$ref": "#/$defs/positive"
        },
        "id": {
          "$ref": "#/$defs/text"
        },
        "status": {
          "$ref": "#/$defs/text"
        },
        "contract_id": {
          "$ref": "#/$defs/text"
        },
        "reference_id": {
          "$ref": "#/$defs/text"
        },
        "reset_basis": {
          "$ref": "#/$defs/text"
        },
        "reset_price_convention": {
          "$ref": "#/$defs/text"
        },
        "conversion": {
          "const": "remaining_quarterly_annuity"
        },
        "off_quarter_convention": {
          "const": "fractional_remaining_annuity_clean_quote"
        },
        "roll_convention": {
          "$ref": "#/$defs/text"
        },
        "closeout_basis": {
          "$ref": "#/$defs/text"
        },
        "executable": {
          "$ref": "#/$defs/flag"
        },
        "includes_old_reference_adjustment": {
          "$ref": "#/$defs/flag"
        },
        "quoted_at": {
          "$ref": "#/$defs/date"
        },
        "currency": {
          "$ref": "#/$defs/currency"
        },
        "quote_basis": {
          "type": "string",
          "enum": [
            "reset_to_today",
            "original_reference"
          ]
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        },
        "provider_id": {
          "$ref": "#/$defs/id"
        }
      }
    },
    "scenario": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "funding_move",
        "reference_credit_move",
        "deployment_credit_move",
        "provider_CDS",
        "own_bond_spread",
        "id"
      ],
      "properties": {
        "funding_move": {
          "$ref": "#/$defs/decimal"
        },
        "reference_credit_move": {
          "$ref": "#/$defs/decimal"
        },
        "deployment_credit_move": {
          "$ref": "#/$defs/decimal"
        },
        "provider_CDS": {
          "$ref": "#/$defs/nonnegative"
        },
        "own_bond_spread": {
          "$ref": "#/$defs/nonnegative"
        },
        "id": {
          "$ref": "#/$defs/text"
        }
      }
    },
    "cash_ledger": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "reference_stress_move",
        "funding_stress_move",
        "opening_equity",
        "deficit_facility_limit",
        "deficit_facility_fee",
        "free_cash_remuneration",
        "price_return_accounting",
        "surplus_policy",
        "capital_covenant",
        "deficit_facility_executed",
        "base_hedge_executed"
      ],
      "properties": {
        "reference_stress_move": {
          "$ref": "#/$defs/decimal"
        },
        "funding_stress_move": {
          "$ref": "#/$defs/decimal"
        },
        "opening_equity": {
          "$ref": "#/$defs/nonnegative"
        },
        "deficit_facility_limit": {
          "$ref": "#/$defs/nonnegative"
        },
        "deficit_facility_fee": {
          "$ref": "#/$defs/nonnegative"
        },
        "free_cash_remuneration": {
          "const": "OIS"
        },
        "price_return_accounting": {
          "const": "retained_asset_settled_price_adjusts_financing"
        },
        "surplus_policy": {
          "const": "repay_deficit_then_retain_cash"
        },
        "capital_covenant": {
          "const": "no_automatic_acceleration"
        },
        "deficit_facility_executed": {
          "$ref": "#/$defs/flag"
        },
        "base_hedge_executed": {
          "$ref": "#/$defs/flag"
        }
      }
    },
    "independent_accounting_unit": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "clean_value",
        "statutory_xva",
        "transaction_price",
        "observable_case_evidenced",
        "unobservable_case_evidenced",
        "unit"
      ],
      "properties": {
        "clean_value": {
          "$ref": "#/$defs/decimal"
        },
        "statutory_xva": {
          "$ref": "#/$defs/decimal"
        },
        "transaction_price": {
          "$ref": "#/$defs/decimal"
        },
        "observable_case_evidenced": {
          "$ref": "#/$defs/flag"
        },
        "unobservable_case_evidenced": {
          "$ref": "#/$defs/flag"
        },
        "unit": {
          "const": "standalone_derivative"
        }
      }
    },
    "day_one_accounting": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "service_fee_treatment",
        "base_internal_addon_observable",
        "independent_unit_example"
      ],
      "properties": {
        "service_fee_treatment": {
          "const": "inception_consumed_service_expense"
        },
        "base_internal_addon_observable": {
          "$ref": "#/$defs/flag"
        },
        "independent_unit_example": {
          "$ref": "#/$defs/independent_accounting_unit"
        }
      }
    },
    "whole_book": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "AVA",
        "written_credit_notional",
        "written_credit_contract",
        "other_RWA",
        "other_leverage_exposure",
        "retained_U_rw",
        "deployment_rw",
        "cash_rw",
        "scope",
        "capital_gate"
      ],
      "properties": {
        "AVA": {
          "$ref": "#/$defs/nonnegative"
        },
        "written_credit_notional": {
          "$ref": "#/$defs/nonnegative"
        },
        "written_credit_contract": {
          "$ref": "#/$defs/written_credit_contract"
        },
        "other_RWA": {
          "$ref": "#/$defs/nonnegative"
        },
        "other_leverage_exposure": {
          "$ref": "#/$defs/nonnegative"
        },
        "retained_U_rw": {
          "$ref": "#/$defs/ratio"
        },
        "deployment_rw": {
          "$ref": "#/$defs/ratio"
        },
        "cash_rw": {
          "$ref": "#/$defs/ratio"
        },
        "scope": {
          "$ref": "#/$defs/text"
        },
        "capital_gate": {
          "const": "minimum_capital_blocks_new_execution"
        }
      }
    },
    "collateral_state": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "credit_move",
        "id",
        "issue_rating"
      ],
      "properties": {
        "credit_move": {
          "$ref": "#/$defs/decimal"
        },
        "id": {
          "$ref": "#/$defs/text"
        },
        "issue_rating": {
          "type": "string",
          "enum": [
            "AAA",
            "AA",
            "A",
            "BBB",
            "BB",
            "B",
            "CCC"
          ]
        }
      }
    },
    "collateral_comparison": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "coupon_spread",
        "market_spread",
        "quantity",
        "original_years",
        "residual_years",
        "market_haircut",
        "issuer",
        "market_quote_scope",
        "rating_event_rule",
        "issuer_kind",
        "material_positive_correlation",
        "issued",
        "enforceable",
        "market_liquid",
        "same_currency",
        "eligibility_source_evidence",
        "states",
        "source_evidence"
      ],
      "properties": {
        "coupon_spread": {
          "$ref": "#/$defs/nonnegative"
        },
        "market_spread": {
          "$ref": "#/$defs/nonnegative"
        },
        "quantity": {
          "$ref": "#/$defs/positive"
        },
        "original_years": {
          "$ref": "#/$defs/positive"
        },
        "residual_years": {
          "$ref": "#/$defs/nonnegative"
        },
        "market_haircut": {
          "$ref": "#/$defs/ratio"
        },
        "issuer": {
          "$ref": "#/$defs/text"
        },
        "market_quote_scope": {
          "$ref": "#/$defs/text"
        },
        "rating_event_rule": {
          "$ref": "#/$defs/text"
        },
        "issuer_kind": {
          "type": "string",
          "enum": [
            "sovereign",
            "other",
            "securitisation"
          ]
        },
        "material_positive_correlation": {
          "$ref": "#/$defs/flag"
        },
        "issued": {
          "$ref": "#/$defs/flag"
        },
        "enforceable": {
          "$ref": "#/$defs/flag"
        },
        "market_liquid": {
          "$ref": "#/$defs/flag"
        },
        "same_currency": {
          "$ref": "#/$defs/flag"
        },
        "eligibility_source_evidence": {
          "$ref": "#/$defs/source"
        },
        "states": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/collateral_state"
          },
          "minItems": 1
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "margin_terms": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "threshold",
        "mpor_floor",
        "minimum_transfer_amount",
        "NICA"
      ],
      "properties": {
        "threshold": {
          "$ref": "#/$defs/nonnegative"
        },
        "mpor_floor": {
          "$ref": "#/$defs/mpor_floor"
        },
        "minimum_transfer_amount": {
          "$ref": "#/$defs/nonnegative"
        },
        "NICA": {
          "$ref": "#/$defs/decimal"
        }
      }
    },
    "mpor_floor": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "non_centrally_cleared",
        "remargin_interval_days",
        "illiquid_or_hard_to_replace",
        "over_5000_transactions",
        "repeated_disputes",
        "source_evidence"
      ],
      "properties": {
        "non_centrally_cleared": {
          "const": true
        },
        "remargin_interval_days": {
          "$ref": "#/$defs/positive"
        },
        "illiquid_or_hard_to_replace": {
          "$ref": "#/$defs/flag"
        },
        "over_5000_transactions": {
          "$ref": "#/$defs/flag"
        },
        "repeated_disputes": {
          "$ref": "#/$defs/flag"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "leverage_vm": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "cash_settled",
        "daily_exchange",
        "non_segregated",
        "same_currency",
        "full_mark_exchange",
        "single_enforceable_master",
        "source_evidence"
      ],
      "properties": {
        "cash_settled": {
          "$ref": "#/$defs/flag"
        },
        "daily_exchange": {
          "$ref": "#/$defs/flag"
        },
        "non_segregated": {
          "$ref": "#/$defs/flag"
        },
        "same_currency": {
          "$ref": "#/$defs/flag"
        },
        "full_mark_exchange": {
          "$ref": "#/$defs/flag"
        },
        "single_enforceable_master": {
          "$ref": "#/$defs/flag"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "recognition_terms": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "underlying_contract_id",
        "reference_obligation_not_senior",
        "grace_period_covered",
        "cash_settlement_valuation_robust",
        "credit_event_determination_independent",
        "legally_enforceable",
        "protection_provider_eligible",
        "source_evidence"
      ],
      "properties": {
        "underlying_contract_id": {
          "$ref": "#/$defs/id"
        },
        "reference_obligation_not_senior": {
          "$ref": "#/$defs/flag"
        },
        "grace_period_covered": {
          "$ref": "#/$defs/flag"
        },
        "cash_settlement_valuation_robust": {
          "$ref": "#/$defs/flag"
        },
        "credit_event_determination_independent": {
          "$ref": "#/$defs/flag"
        },
        "legally_enforceable": {
          "$ref": "#/$defs/flag"
        },
        "protection_provider_eligible": {
          "$ref": "#/$defs/flag"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "written_credit_contract": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "contract_id",
        "reference_id",
        "unoffset",
        "source_evidence"
      ],
      "properties": {
        "contract_id": {
          "$ref": "#/$defs/id"
        },
        "reference_id": {
          "$ref": "#/$defs/id"
        },
        "unoffset": {
          "const": true
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        }
      }
    },
    "classification_countercase": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "id",
        "enabled",
        "credit_allocated",
        "interest_rate_allocated",
        "currency",
        "interest_rate_delta",
        "reference_start",
        "source_evidence",
        "scope"
      ],
      "properties": {
        "id": {
          "const": "DUAL_CREDIT_IR"
        },
        "enabled": {
          "$ref": "#/$defs/flag"
        },
        "credit_allocated": {
          "$ref": "#/$defs/flag"
        },
        "interest_rate_allocated": {
          "$ref": "#/$defs/flag"
        },
        "currency": {
          "$ref": "#/$defs/currency"
        },
        "interest_rate_delta": {
          "$ref": "#/$defs/decimal"
        },
        "reference_start": {
          "$ref": "#/$defs/nonnegative"
        },
        "source_evidence": {
          "$ref": "#/$defs/source"
        },
        "scope": {
          "$ref": "#/$defs/text"
        }
      }
    }
  }
}
