{
  "valid_cases": [
    {
      "name": "canonical_in_the_money_dilutive",
      "input": {
        "entity_id": "EXAMPLE-PLC",
        "instrument_id": "2024-WARRANTS",
        "instrument_type": "WARRANT",
        "period_start": "2025-01-01",
        "period_end": "2025-12-31",
        "as_of": "2026-02-20T16:30:00Z",
        "accounting_framework": "IFRS",
        "period_application": "IFRS_DIRECT_PERIOD",
        "currency": "USD",
        "basic_control_numerator": "120",
        "basic_weighted_average_shares": "50",
        "earnings_scale": "1000000",
        "share_scale": "1000000",
        "ordinary_shares_under_instrument": "10",
        "cash_exercise_price_per_share": "15",
        "service_proceeds_per_share": "0",
        "service_proceeds_basis": "NONE",
        "tax_proceeds_per_share": "0",
        "other_assumed_proceeds_per_share": "0",
        "average_market_price_per_share": "25",
        "average_market_price_period_start": "2025-01-01",
        "average_market_price_period_end": "2025-12-31",
        "issue_date": "2024-01-01",
        "actual_exercise_date": null,
        "lapse_or_cancellation_date": null,
        "numerator_policy": "Continuing-operations Basic numerator; the scoped option/warrant assumed-exercise calculation has no numerator effect.",
        "denominator_policy": "Gross assumed exercise less shares repurchased with assumed proceeds.",
        "average_market_price_policy": "Consistent simple average of representative closing prices for the exposure period.",
        "average_market_price_source": "Synthetic canonical price series; no redistribution restriction.",
        "assumed_proceeds_policy": "Cash exercise price plus complete per-share proceeds adjustments.",
        "instrument_terms_source": "Synthetic fixed-share warrant agreement.",
        "day_count_policy": "ACTUAL_DAYS_IN_PERIOD",
        "basic_components_complete": true,
        "share_basis_restatement_complete": true,
        "average_market_price_complete": true,
        "assumed_proceeds_complete": true,
        "instrument_terms_complete": true,
        "terms_restatement_complete": true,
        "fixed_share_count": true,
        "fixed_cash_exercise_price": true,
        "holder_advantageous_terms_selected": true,
        "numerator_effect_is_zero": true,
        "terms_unchanged_during_exposure": true,
        "shares_are_not_contingently_issuable": true,
        "instrument_series_count": 1,
        "terms_event_policy": "No modification, replacement, repricing, or unresolved contingency during the exposure period.",
        "instrument_is_final": true,
        "is_final": true,
        "eps_decimal_places": 2,
        "share_decimal_places": 0,
        "rounding_mode": "half_even"
      },
      "expected": {
        "time_weight_exact": "1/1",
        "effective_exercise_price_per_share": "15",
        "gross_weighted_potential_shares_exact": "10000000/1",
        "assumed_repurchase_shares_exact": "6000000/1",
        "incremental_shares_exact": "4000000/1",
        "incremental_fraction_exact": "2/5",
        "in_the_money": true,
        "basic_eps_exact": "12/5",
        "candidate_eps_exact": "20/9",
        "candidate_eps": "2.22",
        "classification": "dilutive",
        "include_in_standalone_candidate": true,
        "reason_code": "candidate_below_control",
        "status": "final"
      }
    },
    {
      "name": "out_of_money_excluded",
      "input_from": "canonical_in_the_money_dilutive",
      "patch": {
        "cash_exercise_price_per_share": "30"
      },
      "expected": {
        "assumed_repurchase_shares_exact": "0/1",
        "incremental_shares_exact": "0/1",
        "incremental_fraction_exact": "0/1",
        "in_the_money": false,
        "candidate_eps_exact": "12/5",
        "classification": "antidilutive",
        "include_in_standalone_candidate": false,
        "reason_code": "not_in_the_money"
      }
    },
    {
      "name": "at_money_excluded",
      "input_from": "canonical_in_the_money_dilutive",
      "patch": {
        "cash_exercise_price_per_share": "25"
      },
      "expected": {
        "assumed_repurchase_shares_exact": "0/1",
        "incremental_shares_exact": "0/1",
        "in_the_money": false,
        "classification": "antidilutive",
        "reason_code": "not_in_the_money"
      }
    },
    {
      "name": "loss_period_control_excludes",
      "input_from": "canonical_in_the_money_dilutive",
      "patch": {
        "basic_control_numerator": "-50"
      },
      "expected": {
        "in_the_money": true,
        "basic_eps_exact": "-1/1",
        "candidate_eps_exact": "-25/27",
        "candidate_eps": "-0.93",
        "classification": "antidilutive",
        "include_in_standalone_candidate": false,
        "reason_code": "candidate_not_below_control"
      }
    },
    {
      "name": "midyear_issue",
      "input_from": "canonical_in_the_money_dilutive",
      "patch": {
        "issue_date": "2025-07-01",
        "average_market_price_period_start": "2025-07-01",
        "instrument_is_final": false
      },
      "expected": {
        "exposure_start": "2025-07-01",
        "exposure_end_exclusive": "2026-01-01",
        "exposure_days": 184,
        "period_days": 365,
        "time_weight_exact": "184/365",
        "gross_weighted_potential_shares_exact": "368000000/73",
        "assumed_repurchase_shares_exact": "220800000/73",
        "incremental_shares_exact": "147200000/73",
        "status": "provisional"
      }
    },
    {
      "name": "actual_exercise_stops_potential_exposure",
      "input_from": "canonical_in_the_money_dilutive",
      "patch": {
        "actual_exercise_date": "2025-07-01",
        "average_market_price_period_end": "2025-06-30"
      },
      "expected": {
        "exposure_start": "2025-01-01",
        "exposure_end_exclusive": "2025-07-01",
        "exposure_days": 181,
        "period_days": 365,
        "time_weight_exact": "181/365",
        "gross_weighted_potential_shares_exact": "362000000/73",
        "assumed_repurchase_shares_exact": "217200000/73",
        "incremental_shares_exact": "144800000/73"
      }
    },
    {
      "name": "ifrs_future_service_value_reduces_dilution",
      "input_from": "canonical_in_the_money_dilutive",
      "patch": {
        "service_proceeds_per_share": "5",
        "service_proceeds_basis": "IFRS2_FUTURE_GOODS_SERVICES_FAIR_VALUE"
      },
      "expected": {
        "effective_exercise_price_per_share": "20",
        "assumed_repurchase_shares_exact": "8000000/1",
        "incremental_shares_exact": "2000000/1",
        "incremental_fraction_exact": "1/5",
        "candidate_eps_exact": "30/13",
        "candidate_eps": "2.31",
        "classification": "dilutive"
      }
    },
    {
      "name": "us_gaap_unrecognized_compensation_reduces_dilution",
      "input_from": "canonical_in_the_money_dilutive",
      "patch": {
        "accounting_framework": "US_GAAP",
        "period_start": "2025-10-01",
        "period_end": "2025-12-31",
        "period_application": "US_GAAP_SINGLE_QUARTER",
        "service_proceeds_per_share": "5",
        "service_proceeds_basis": "US_GAAP_AVERAGE_UNRECOGNIZED_COMPENSATION",
        "average_market_price_period_start": "2025-10-01",
        "average_market_price_period_end": "2025-12-31"
      },
      "expected": {
        "effective_exercise_price_per_share": "20",
        "assumed_repurchase_shares_exact": "8000000/1",
        "incremental_shares_exact": "2000000/1",
        "candidate_eps_exact": "30/13",
        "classification": "dilutive"
      }
    }
  ]
}
