LoL BPDRAFT ANALYTICS
← Back to home

OP.GG KR Master+ ranked reference: matchup game win rates and counts; separate from professional fitting. ↗

This is the retained frozen baseline. View temporal weighting and the complete comparison ↗

M2: full-archive relationships and issue #15 acceptance

This reproducible module describes historical relationships, without promising causal counters, live updates or M4 draft decisions. Lane and cross-role models use the full archive, retaining unknown formats as missing context. Co-selection opportunities use only series with supported rules and complete drafts. Existing M1/M3 predictions remain unchanged.

Archive coverage and missing data

Of 16,437 input games, 15,669 are admitted. Every game has an audit status; none are silently dropped. Upstream processing already excluded 25 explicitly identified blind-pick games.

StatusGames
incomplete_or_unverified_series_join671
admitted15669
reserved_evaluation_partition84
duplicate_alias13
Format contextGames
unknown12523
classic209
full_fearless2937

All 39 DCGI games share one test event block. Individual series IDs were not guessed. This conservative grouping prevents a real series from crossing partitions; it does not claim that every series is verified or that the event has finished.

Unknown does not mean Classic. The standard Tournament Draft interpretation is scoped to LEC 2024, with unresolved year/revision details in the mirrored rulebook. The official professional champion restriction list has not been recovered publicly. Closing the issue does not remove this disclosed uncertainty.

PartitionGamesGroups (series or conservative event blocks)
train121146128
selection618243
calibration401142
test2536979

Fit before July 2025, select in July–August, calibrate in September–December, and use 2026 for retrospective diagnostics. Series stay intact, and Elo is updated only after labels are complete. Declared raw-value conflicts are masked per target, never filled with zero. See coverage.json and input_manifest.json for sources, aliases, rules and missing data.

Complete lane ablations (test)

Scroll horizontally to view all columns.

Unit / minuteModelSelectedTargetValid NMAERMSENominal 90% interval coverageLow-support N
top/10contextNocs_difference238810.4713.2689.8%873
top/10contextNogold_difference2388395.34504.3383.3%873
top/10contextNoxp_difference2388323.96431.8193.0%873
top/10championsYescs_difference23889.8012.4290.5%873
top/10championsYesgold_difference2388364.87473.9984.9%873
top/10championsYesxp_difference2388316.05425.1092.0%873
top/10hierarchicalNocs_difference23889.8112.4390.4%873
top/10hierarchicalNogold_difference2388365.99474.6985.6%873
top/10hierarchicalNoxp_difference2388317.52425.9991.9%873
top/15contextNocs_difference237115.0618.7888.3%866
top/15contextNogold_difference2099698.89891.3983.1%768
top/15contextNoxp_difference2276664.23856.2184.2%829
top/15championsYescs_difference237114.4518.1687.1%866
top/15championsYesgold_difference2099662.69851.2584.0%768
top/15championsYesxp_difference2276657.27849.6083.1%829
top/15hierarchicalNocs_difference237114.4618.1987.1%866
top/15hierarchicalNogold_difference2099665.11853.2482.6%768
top/15hierarchicalNoxp_difference2276658.67851.2583.2%829
mid/10contextNocs_difference23889.0011.3685.2%818
mid/10contextNogold_difference2388373.62483.3985.4%818
mid/10contextNoxp_difference2388330.19417.4484.7%818
mid/10championsNocs_difference23888.3810.6182.1%818
mid/10championsNogold_difference2388365.79471.6286.1%818
mid/10championsNoxp_difference2388327.88413.5083.5%818
mid/10hierarchicalYescs_difference23888.4610.7283.3%818
mid/10hierarchicalYesgold_difference2388367.21475.7585.3%818
mid/10hierarchicalYesxp_difference2388327.11412.7585.0%818
mid/15contextNocs_difference236912.7716.1287.9%813
mid/15contextNogold_difference2100626.22804.1188.5%728
mid/15contextNoxp_difference2265559.33712.6189.6%779
mid/15championsNocs_difference236911.9815.1588.1%813
mid/15championsNogold_difference2100615.65789.2688.4%728
mid/15championsNoxp_difference2265553.40705.6789.7%779
mid/15hierarchicalYescs_difference236912.1315.3486.6%813
mid/15hierarchicalYesgold_difference2100619.37794.7588.3%728
mid/15hierarchicalYesxp_difference2265554.60706.2887.5%779
bot_duo/10contextNobot_cs_difference238810.0212.8786.6%2334
bot_duo/10contextNoduo_gold_difference2388585.13763.9783.1%2334
bot_duo/10contextNoduo_xp_difference2388415.44534.4988.3%2334
bot_duo/10championsYesbot_cs_difference23889.8912.6889.5%2334
bot_duo/10championsYesduo_gold_difference2388576.04754.0483.1%2334
bot_duo/10championsYesduo_xp_difference2388410.83528.7688.6%2334
bot_duo/10duoNobot_cs_difference23889.8812.6788.9%2334
bot_duo/10duoNoduo_gold_difference2388575.23753.1483.3%2334
bot_duo/10duoNoduo_xp_difference2388410.83528.7888.6%2334
bot_duo/10hierarchicalNobot_cs_difference23889.9012.6988.6%2334
bot_duo/10hierarchicalNoduo_gold_difference2388575.13753.1183.3%2334
bot_duo/10hierarchicalNoduo_xp_difference2388410.99528.8688.6%2334
bot_duo/15contextYesbot_cs_difference238314.3618.4584.8%2329
bot_duo/15contextYesduo_gold_difference20071049.121359.6484.5%1960
bot_duo/15contextYesduo_xp_difference2272709.00899.0888.7%2220
bot_duo/15championsNobot_cs_difference238314.3518.3686.3%2329
bot_duo/15championsNoduo_gold_difference20071042.421349.2083.7%1960
bot_duo/15championsNoduo_xp_difference2272705.66895.5287.9%2220
bot_duo/15duoNobot_cs_difference238314.3518.3786.1%2329
bot_duo/15duoNoduo_gold_difference20071041.311348.3783.4%1960
bot_duo/15duoNoduo_xp_difference2272705.47895.4087.7%2220
bot_duo/15hierarchicalNobot_cs_difference238314.3718.4185.9%2329
bot_duo/15hierarchicalNoduo_gold_difference20071041.121348.2883.4%1960
bot_duo/15hierarchicalNoduo_xp_difference2272705.35895.4087.7%2220

Series-level error-difference intervals

Compare the fixed selected model with context: positive values indicate lower RMSE. Intervals use 2,000 paired bootstrap draws of whole series or conservative event blocks, not counter-coefficient confidence intervals. Missing labels are handled per target; test results do not reselect models.

Scroll horizontally to view all columns.

Unit / minuteTargetValid NSeriesRMSE reduction95% series interval
top/10cs_difference23889400.84[0.62, 1.03]
top/10gold_difference238894030.34[23.86, 36.81]
top/10xp_difference23889406.71[2.91, 10.31]
top/15cs_difference23719370.62[0.34, 0.88]
top/15gold_difference209990840.14[28.74, 52.18]
top/15xp_difference22769316.61[0.93, 11.97]
mid/10cs_difference23889400.64[0.52, 0.75]
mid/10gold_difference23889407.64[4.29, 11.08]
mid/10xp_difference23889404.69[1.95, 7.38]
mid/15cs_difference23699380.78[0.65, 0.92]
mid/15gold_difference21009079.36[5.19, 13.73]
mid/15xp_difference22659266.33[2.73, 10.14]
bot_duo/10bot_cs_difference23889400.20[0.03, 0.37]
bot_duo/10duo_gold_difference23889409.94[6.02, 14.06]
bot_duo/10duo_xp_difference23889405.73[3.61, 7.98]
bot_duo/15bot_cs_difference23839400.00[0.00, 0.00]
bot_duo/15duo_gold_difference20078970.00[0.00, 0.00]
bot_duo/15duo_xp_difference22729290.00[0.00, 0.00]

Global relationship ablations

Scroll horizontally to view all columns.

ModelSelectedTest NLog lossBrier
contextNo25360.64970.2285
championsYes25360.64370.2260
sameNo25360.64430.2265
enemyNo25360.64410.2263
fullNo25360.64830.2282
Interaction candidateLog-loss reduction vs. single-champion baseline95% series / event-block interval
same-0.000678[-0.004063, 0.002837]
enemy-0.000470[-0.004469, 0.003661]
full-0.004617[-0.010421, 0.001451]

The selected model is champions. Same-team and opposing-team interactions that fail selection are disabled or unknown in default queries. Raw win rates or co-occurrence are not presented as counters. Experimental queries can inspect supported regularized candidates.

Opportunity models: separate formats

Scroll horizontally to view all columns.

FormatWeightSelection opportunitiesTest opportunitiesTest top-5Test log loss
classic000No observationsNo observations
full_fearless0.55850654017.1%4.6760

Classic masks only the current game; Full Fearless also masks champions picked by either team in earlier games. Missing complete history or unknown formats suppress opportunity scores. The client roster prevents future champions entering earlier patches; callers may supply a precise pool with provenance and timestamps. Unseen champions retain explicitly marked smoothed priors and zero support, without claiming measured synergy. Relative pool weights are not calibrated probabilities of a legal next pick.

Sparse matchup candidates

The table shows the 60 most-supported entries; relationships.json contains all candidates. Four-champion order is explicit, with the first canonical group minus the second. Values are hierarchical residual components, not complete lane predictions. Candidates from unselected models are not enabled automatically.

Scroll horizontally to view all columns.

Unit / minuteCanonical matchup IDs (duo = bot, support)GamesSeriesShrinkage weightSupport by formatAdjusted residual component
top/1058 vs. 8972612260.723{'unknown': 231, 'classic': 6, 'full_fearless': 24}cs_difference=1.5, gold_difference=31.1, xp_difference=26.0
top/1558 vs. 8972612260.723{'unknown': 231, 'classic': 6, 'full_fearless': 24}cs_difference=1.7, gold_difference=55.9, xp_difference=26.6
top/1058 vs. 1502482300.713{'unknown': 237, 'classic': 2, 'full_fearless': 9}cs_difference=-0.1, gold_difference=-12.9, xp_difference=-1.3
top/1558 vs. 1502482300.713{'unknown': 237, 'classic': 2, 'full_fearless': 9}cs_difference=-0.5, gold_difference=-9.1, xp_difference=-6.9
mid/10163 vs. 2682332180.959{'unknown': 131, 'classic': 15, 'full_fearless': 87}cs_difference=-1.2, gold_difference=-16.0, xp_difference=-6.2
mid/15163 vs. 2682332180.823{'unknown': 131, 'classic': 15, 'full_fearless': 87}cs_difference=-0.6, gold_difference=4.5, xp_difference=2.7
top/1024 vs. 8971961840.662{'unknown': 188, 'full_fearless': 8}cs_difference=-1.2, gold_difference=-58.3, xp_difference=-24.6
top/1524 vs. 8971961840.662{'unknown': 188, 'full_fearless': 8}cs_difference=-1.7, gold_difference=-94.4, xp_difference=-58.2
top/10150 vs. 8971671580.625{'unknown': 147, 'classic': 6, 'full_fearless': 14}cs_difference=-0.2, gold_difference=0.7, xp_difference=-20.1
top/15150 vs. 8971671580.625{'unknown': 147, 'classic': 6, 'full_fearless': 14}cs_difference=0.1, gold_difference=-12.1, xp_difference=-12.4
top/1058 vs. 5161631560.620{'unknown': 143, 'classic': 12, 'full_fearless': 8}cs_difference=1.0, gold_difference=21.6, xp_difference=-9.3
top/1558 vs. 5161631560.620{'unknown': 143, 'classic': 12, 'full_fearless': 8}cs_difference=0.8, gold_difference=15.8, xp_difference=-21.8
mid/10103 vs. 1631571470.940{'unknown': 90, 'classic': 7, 'full_fearless': 60}cs_difference=0.9, gold_difference=111.1, xp_difference=47.9
mid/15103 vs. 1631571470.758{'unknown': 90, 'classic': 7, 'full_fearless': 60}cs_difference=1.0, gold_difference=82.2, xp_difference=4.5
mid/1061 vs. 2681561430.940{'unknown': 147, 'classic': 2, 'full_fearless': 7}cs_difference=-0.1, gold_difference=-10.7, xp_difference=-19.8
mid/1561 vs. 2681561430.757{'unknown': 147, 'classic': 2, 'full_fearless': 7}cs_difference=-0.2, gold_difference=-60.5, xp_difference=-58.2
top/1041 vs. 1501511430.602{'unknown': 149, 'full_fearless': 2}cs_difference=-0.3, gold_difference=-13.9, xp_difference=-29.8
top/1541 vs. 1501511430.602{'unknown': 149, 'full_fearless': 2}cs_difference=-0.9, gold_difference=-34.2, xp_difference=-58.1
top/1024 vs. 581471390.595{'unknown': 138, 'classic': 1, 'full_fearless': 8}cs_difference=1.5, gold_difference=45.5, xp_difference=30.3
top/1524 vs. 581471390.595{'unknown': 138, 'classic': 1, 'full_fearless': 8}cs_difference=2.2, gold_difference=105.7, xp_difference=43.0
mid/10103 vs. 2681451390.935{'unknown': 103, 'classic': 4, 'full_fearless': 38}cs_difference=-0.8, gold_difference=0.4, xp_difference=-26.2
mid/15103 vs. 2681451390.744{'unknown': 103, 'classic': 4, 'full_fearless': 38}cs_difference=-1.4, gold_difference=9.1, xp_difference=-38.6
top/1058 vs. 791361330.576{'unknown': 121, 'classic': 6, 'full_fearless': 9}cs_difference=1.3, gold_difference=34.1, xp_difference=9.4
top/1558 vs. 791361330.576{'unknown': 121, 'classic': 6, 'full_fearless': 9}cs_difference=2.2, gold_difference=91.4, xp_difference=18.4
mid/1018 vs. 421361050.932{'unknown': 119, 'classic': 13, 'full_fearless': 4}cs_difference=-2.3, gold_difference=-21.2, xp_difference=-30.6
mid/1518 vs. 421361050.731{'unknown': 119, 'classic': 13, 'full_fearless': 4}cs_difference=-2.5, gold_difference=8.2, xp_difference=-41.8
top/10150 vs. 8871321240.569{'unknown': 120, 'full_fearless': 12}cs_difference=1.4, gold_difference=38.8, xp_difference=38.0
top/15150 vs. 8871321240.569{'unknown': 120, 'full_fearless': 12}cs_difference=1.8, gold_difference=77.6, xp_difference=59.0
mid/10268 vs. 5171291230.928{'unknown': 110, 'classic': 3, 'full_fearless': 16}cs_difference=2.4, gold_difference=12.4, xp_difference=55.6
mid/15268 vs. 5171291230.721{'unknown': 110, 'classic': 3, 'full_fearless': 16}cs_difference=2.7, gold_difference=14.3, xp_difference=47.7
mid/1042 vs. 2681281210.928{'unknown': 111, 'classic': 8, 'full_fearless': 9}cs_difference=0.6, gold_difference=-1.1, xp_difference=-32.7
mid/1542 vs. 2681281210.719{'unknown': 111, 'classic': 8, 'full_fearless': 9}cs_difference=1.5, gold_difference=50.5, xp_difference=0.3
mid/10268 vs. 7771261210.926{'unknown': 81, 'classic': 3, 'full_fearless': 42}cs_difference=-1.9, gold_difference=-69.5, xp_difference=-72.2
mid/15268 vs. 7771261210.716{'unknown': 81, 'classic': 3, 'full_fearless': 42}cs_difference=-1.9, gold_difference=-77.3, xp_difference=-96.4
bot_duo/10221,117 vs. 236,2671231040.552{'unknown': 121, 'full_fearless': 2}bot_cs_difference=0.2, duo_gold_difference=-17.4, duo_xp_difference=-11.5
bot_duo/15221,117 vs. 236,2671231040.552{'unknown': 121, 'full_fearless': 2}bot_cs_difference=0.7, duo_gold_difference=19.0, duo_xp_difference=30.6
top/1058 vs. 2661211110.548{'unknown': 101, 'classic': 6, 'full_fearless': 14}cs_difference=1.5, gold_difference=60.0, xp_difference=-5.7
top/1558 vs. 2661211110.548{'unknown': 101, 'classic': 6, 'full_fearless': 14}cs_difference=2.1, gold_difference=76.4, xp_difference=24.4
top/1068 vs. 8971171070.539{'unknown': 88, 'classic': 5, 'full_fearless': 24}cs_difference=1.7, gold_difference=66.4, xp_difference=28.6
top/1568 vs. 8971171070.539{'unknown': 88, 'classic': 5, 'full_fearless': 24}cs_difference=2.1, gold_difference=89.1, xp_difference=45.3
mid/10112 vs. 2681171070.921{'unknown': 100, 'full_fearless': 17}cs_difference=-1.3, gold_difference=-57.9, xp_difference=-79.0
mid/15112 vs. 2681171070.701{'unknown': 100, 'full_fearless': 17}cs_difference=-1.1, gold_difference=-107.9, xp_difference=-46.9
top/10887 vs. 8971151140.535{'unknown': 112, 'classic': 2, 'full_fearless': 1}cs_difference=0.6, gold_difference=-3.9, xp_difference=13.3
top/15887 vs. 8971151140.535{'unknown': 112, 'classic': 2, 'full_fearless': 1}cs_difference=0.1, gold_difference=-3.6, xp_difference=5.2
top/10150 vs. 1641141090.533{'unknown': 109, 'classic': 2, 'full_fearless': 3}cs_difference=0.9, gold_difference=-10.9, xp_difference=-4.9
top/15150 vs. 1641141090.533{'unknown': 109, 'classic': 2, 'full_fearless': 3}cs_difference=1.4, gold_difference=33.2, xp_difference=41.1
mid/1084 vs. 2681141090.919{'unknown': 106, 'classic': 2, 'full_fearless': 6}cs_difference=-0.8, gold_difference=8.0, xp_difference=4.8
mid/1584 vs. 2681141090.695{'unknown': 106, 'classic': 2, 'full_fearless': 6}cs_difference=-0.3, gold_difference=16.0, xp_difference=14.5
top/1024 vs. 1501101010.524{'unknown': 99, 'full_fearless': 11}cs_difference=0.7, gold_difference=14.4, xp_difference=24.5
top/1524 vs. 1501101010.524{'unknown': 99, 'full_fearless': 11}cs_difference=1.4, gold_difference=31.7, xp_difference=61.5
mid/1061 vs. 1121091050.916{'unknown': 87, 'full_fearless': 22}cs_difference=-0.7, gold_difference=34.1, xp_difference=-12.4
mid/1561 vs. 1121091050.686{'unknown': 87, 'full_fearless': 22}cs_difference=-1.3, gold_difference=37.2, xp_difference=-57.3
top/10266 vs. 897107960.517{'unknown': 100, 'classic': 1, 'full_fearless': 6}cs_difference=1.9, gold_difference=32.2, xp_difference=19.9
top/15266 vs. 897107960.517{'unknown': 100, 'classic': 1, 'full_fearless': 6}cs_difference=2.8, gold_difference=52.5, xp_difference=28.9
top/10126 vs. 150106970.515{'unknown': 105, 'full_fearless': 1}cs_difference=0.8, gold_difference=-2.8, xp_difference=15.7
top/15126 vs. 150106970.515{'unknown': 105, 'full_fearless': 1}cs_difference=1.4, gold_difference=23.9, xp_difference=58.7
mid/1018 vs. 268103920.912{'unknown': 96, 'classic': 5, 'full_fearless': 2}cs_difference=1.0, gold_difference=33.6, xp_difference=-44.3
mid/1518 vs. 268103920.673{'unknown': 96, 'classic': 5, 'full_fearless': 2}cs_difference=0.3, gold_difference=72.8, xp_difference=-23.0
mid/1013 vs. 6197890.907{'unknown': 77, 'full_fearless': 20}cs_difference=-0.3, gold_difference=43.7, xp_difference=-4.4
mid/1513 vs. 6197890.660{'unknown': 77, 'full_fearless': 20}cs_difference=-1.5, gold_difference=-10.5, xp_difference=-94.8

Issue #15 acceptance checklist

RequirementImplementationRemaining data limitations
Existing top-team archive, international games and completed DCGI games, with coverage accountingGame-by-game archive audit; at least one team is an annual member. Lane/cross-role models retain unknown formats.Games without verified complete series joins are quarantined. Admitted DCGI games form one conservative test block; 84 games are reserved for evaluation, and 13 are duplicate aliases. Inputs use the specified historical snapshot, not live collection.
Exclude blind picks; separate Classic and Full Fearless opportunitiesExplicit blind picks are excluded upstream. Known formats are fitted separately; unknown, mixed or incomplete-draft series do not train opportunities.Historical rules and revisions have gaps. Unknown is not guessed as Classic; LEC 2024 evidence retains its revision caveat.
Recorded roles; CS/gold/XP at 10/15 minutes; complete bottom-lane duo matchupsOriginal targets, separate finite-label denominators, four-champion keys, ADC CS, duo gold/XP and complete ablationsPhysical lane positions, lane swaps, roaming and interventions remain unknown.
Sparse sharing, shrinkage and uncertaintyRegularized champion/duo terms, canonical matchup residual shrinkage, low-support groups, single-game residual intervals and series-level error-difference intervalsNo fabricated counter-coefficient confidence intervals; cross-year interval coverage is not guaranteed.
Separate co-selection, same-team and opposing-team relations; control patch, teams, strength and single-champion baselinesIndependent co-selection; five global models; patch categories and major/minor versions, region, format and pre-game Elo; negative results retain fallbacksUnknown formats may leave residual confounding. All relationships are adjusted associations, not causal counters.
Professional data first, with limited comparable ranked auxiliary data; no player-champion win-rate/KDA bonusesIndependent transfer validation covers 2,493 ranked games. Gold benefits are not stable, so the current contribution is zero. M2 features exclude personal champion win rates and KDA.Per-game ranked queue and rank are unknown; the data is not claimed to be entirely Master or higher.
Queries by patch, champion, candidate role and lineup; support/provenance and team-tendency interfaceUnified JSON API; marginalization over feasible joint roles; current draft prefix and pool provenance; historical team contextThe default client roster is not an official restriction list. Caller pools are not independently verified by the project; legal probabilities or T1 lane preferences are not fabricated.
Temporal/whole-series validation, deduplication, scripts, parameters, structured results, visualizations and coverage reports; preserve M1Grouped partitions, completed labels, fixed replay, hashes, complete ablations and this report; M1/M3 files remain unchanged2026 data has already been viewed and is retrospective only. M4 integration and future unseen windows remain subsequent work.

The delivery covers the module, validation, interface and reporting requirements of issue #15. Missing data remains explicit in the contract; not all historical official rules or restriction lists have been recovered. Production ranked weight is zero, unselected relationships fall back, and personal champion win-rate/KDA bonuses are excluded. Next steps are M4 integration and validation on a new time window.

Query examples

Frozen API requests and responses. This website presents historical research; live step-by-step draft prediction belongs to future M4 integration.

Example 1 · descriptive_pool_association
{
  "request": {
    "module": "co_selection",
    "patch": "26.02",
    "draft_format": "full_fearless",
    "picking_side": "Blue",
    "series_game_number": 1,
    "selected": [
      {
        "side": "Red",
        "champion_id": 268
      },
      {
        "side": "Blue",
        "champion_id": 61
      }
    ],
    "bans": [
      {
        "champion_id": 54,
        "phase": 1,
        "side": "Red"
      },
      {
        "champion_id": 115,
        "phase": 1,
        "side": "Blue"
      },
      {
        "champion_id": 84,
        "phase": 1,
        "side": "Red"
      },
      {
        "champion_id": 126,
        "phase": 1,
        "side": "Blue"
      },
      {
        "champion_id": 68,
        "phase": 1,
        "side": "Red"
      },
      {
        "champion_id": 110,
        "phase": 1,
        "side": "Blue"
      },
      {
        "champion_id": 804,
        "phase": 2,
        "side": "Blue"
      },
      {
        "champion_id": 56,
        "phase": 2,
        "side": "Red"
      },
      {
        "champion_id": 12,
        "phase": 2,
        "side": "Blue"
      },
      {
        "champion_id": 111,
        "phase": 2,
        "side": "Red"
      }
    ]
  },
  "response": {
    "schema_version": "m2.relationships.final.v1",
    "model_version": "m2_final_v1",
    "status": "descriptive_pool_association",
    "patch": "26.02",
    "format": "full_fearless",
    "source_release": "m1-final-2026-10-11",
    "available_from_utc": "2026-01-01",
    "max_training_label_time": "2025-08-31T23:28:13+00:00",
    "ranked_weight": 0,
    "source": "whole existing professional archive; unknown rules retained as unknown performance context",
    "relationship_support_scope": "Pooled admitted professional training archive, including unknown formats; not same-patch/same-format evidence",
    "format_training_games": {
      "unknown": 10468,
      "classic": 209,
      "full_fearless": 2055
    },
    "interpretation": "Adjusted association; never causal counter strength",
    "missing_context": [
      "physical_lane",
      "lane_swaps",
      "jungle_interventions",
      "support_roaming"
    ],
    "evaluation_status": "Retrospective 2026 diagnosis; no new blind test claimed",
    "module": "co_selection",
    "score": null,
    "availability": {
      "type": "client_roster_only",
      "source": "https://ddragon.leagueoflegends.com/cdn/16.2.1/data/en_US/champion.json",
      "independently_verified": false
    },
    "official_legality_verified": false,
    "candidate_pool_complete_by_caller_declaration": false,
    "normalization_scope": "exact supplied or default client candidate pool, not inferred complete official legal space",
    "mask": {
      "current_pick_number": 3,
      "phase": 1,
      "excluded_ids": [
        54,
        61,
        68,
        84,
        110,
        115,
        126,
        268
      ],
      "prior_game_exclusion_applied": true
    },
    "selected_weight": 0.5,
    "unsupported_training_heroes": [
      11,
      17,
      28,
      33,
      35,
      37,
      55,
      105,
      122,
      141,
      161,
      166,
      200,
      233,
      360,
      420,
      904
    ],
    "scores": [
      {
        "champion_id": 12,
        "relative_pool_probability": 0.04323554781882104,
        "training_pick_opportunities": 543,
        "support_by_prefix_hero": {
          "61": 28
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 526,
        "relative_pool_probability": 0.039906962209449476,
        "training_pick_opportunities": 557,
        "support_by_prefix_hero": {
          "61": 23
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 497,
        "relative_pool_probability": 0.03468659708492761,
        "training_pick_opportunities": 463,
        "support_by_prefix_hero": {
          "61": 21
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 799,
        "relative_pool_probability": 0.033266105242735884,
        "training_pick_opportunities": 491,
        "support_by_prefix_hero": {
          "61": 18
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 145,
        "relative_pool_probability": 0.03296270188423809,
        "training_pick_opportunities": 420,
        "support_by_prefix_hero": {
          "61": 21
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 42,
        "relative_pool_probability": 0.030759935128783483,
        "training_pick_opportunities": 470,
        "support_by_prefix_hero": {
          "61": 16
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 202,
        "relative_pool_probability": 0.028192668677093857,
        "training_pick_opportunities": 341,
        "support_by_prefix_hero": {
          "61": 19
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 78,
        "relative_pool_probability": 0.025001114577614704,
        "training_pick_opportunities": 317,
        "support_by_prefix_hero": {
          "61": 16
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 201,
        "relative_pool_probability": 0.024790793663337644,
        "training_pick_opportunities": 352,
        "support_by_prefix_hero": {
          "61": 14
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 5,
        "relative_pool_probability": 0.024589548717798764,
        "training_pick_opportunities": 608,
        "support_by_prefix_hero": {
          "61": 7
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 111,
        "relative_pool_probability": 0.02435186049958367,
        "training_pick_opportunities": 420,
        "support_by_prefix_hero": {
          "61": 11
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 518,
        "relative_pool_probability": 0.023474492186564777,
        "training_pick_opportunities": 298,
        "support_by_prefix_hero": {
          "61": 15
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 498,
        "relative_pool_probability": 0.022993698755121087,
        "training_pick_opportunities": 255,
        "support_by_prefix_hero": {
          "61": 17
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 62,
        "relative_pool_probability": 0.02279834978941852,
        "training_pick_opportunities": 403,
        "support_by_prefix_hero": {
          "61": 10
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 893,
        "relative_pool_probability": 0.02030392462924975,
        "training_pick_opportunities": 392,
        "support_by_prefix_hero": {
          "61": 8
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 897,
        "relative_pool_probability": 0.019967047428916657,
        "training_pick_opportunities": 315,
        "support_by_prefix_hero": {
          "61": 10
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 14,
        "relative_pool_probability": 0.019316611119552716,
        "training_pick_opportunities": 358,
        "support_by_prefix_hero": {
          "61": 8
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 89,
        "relative_pool_probability": 0.018779482170145148,
        "training_pick_opportunities": 379,
        "support_by_prefix_hero": {
          "61": 7
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 56,
        "relative_pool_probability": 0.018451608714730623,
        "training_pick_opportunities": 149,
        "support_by_prefix_hero": {
          "61": 19
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 236,
        "relative_pool_probability": 0.018019478580274192,
        "training_pick_opportunities": 220,
        "support_by_prefix_hero": {
          "61": 12
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 15,
        "relative_pool_probability": 0.01797470798566681,
        "training_pick_opportunities": 167,
        "support_by_prefix_hero": {
          "61": 16
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 81,
        "relative_pool_probability": 0.016993137722538795,
        "training_pick_opportunities": 477,
        "support_by_prefix_hero": {
          "61": 4
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 58,
        "relative_pool_probability": 0.015912653178137344,
        "training_pick_opportunities": 250,
        "support_by_prefix_hero": {
          "61": 8
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 80,
        "relative_pool_probability": 0.01583764360927459,
        "training_pick_opportunities": 363,
        "support_by_prefix_hero": {
          "61": 5
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 150,
        "relative_pool_probability": 0.01507943867122139,
        "training_pick_opportunities": 169,
        "support_by_prefix_hero": {
          "61": 11
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 888,
        "relative_pool_probability": 0.01465284557528172,
        "training_pick_opportunities": 214,
        "support_by_prefix_hero": {
          "61": 8
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 432,
        "relative_pool_probability": 0.01428756657408202,
        "training_pick_opportunities": 113,
        "support_by_prefix_hero": {
          "61": 15
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 254,
        "relative_pool_probability": 0.01380476781815102,
        "training_pick_opportunities": 407,
        "support_by_prefix_hero": {
          "61": 3
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 21,
        "relative_pool_probability": 0.013765420503942654,
        "training_pick_opportunities": 335,
        "support_by_prefix_hero": {
          "61": 4
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 516,
        "relative_pool_probability": 0.013379525156608493,
        "training_pick_opportunities": 180,
        "support_by_prefix_hero": {
          "61": 8
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 48,
        "relative_pool_probability": 0.01263489877826951,
        "training_pick_opportunities": 182,
        "support_by_prefix_hero": {
          "61": 7
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 22,
        "relative_pool_probability": 0.01185796348769136,
        "training_pick_opportunities": 185,
        "support_by_prefix_hero": {
          "61": 6
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 266,
        "relative_pool_probability": 0.011653534120844357,
        "training_pick_opportunities": 156,
        "support_by_prefix_hero": {
          "61": 7
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 887,
        "relative_pool_probability": 0.011625441596118795,
        "training_pick_opportunities": 307,
        "support_by_prefix_hero": {
          "61": 3
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 57,
        "relative_pool_probability": 0.011306745909877097,
        "training_pick_opportunities": 198,
        "support_by_prefix_hero": {
          "61": 5
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 113,
        "relative_pool_probability": 0.011201395311834235,
        "training_pick_opportunities": 369,
        "support_by_prefix_hero": {
          "61": 2
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 235,
        "relative_pool_probability": 0.010937592470903885,
        "training_pick_opportunities": 122,
        "support_by_prefix_hero": {
          "61": 8
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 24,
        "relative_pool_probability": 0.010809728514479169,
        "training_pick_opportunities": 219,
        "support_by_prefix_hero": {
          "61": 4
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 59,
        "relative_pool_probability": 0.010237075191443878,
        "training_pick_opportunities": 140,
        "support_by_prefix_hero": {
          "61": 6
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 221,
        "relative_pool_probability": 0.01017766825661003,
        "training_pick_opportunities": 106,
        "support_by_prefix_hero": {
          "61": 8
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 429,
        "relative_pool_probability": 0.010080373383263843,
        "training_pick_opportunities": 193,
        "support_by_prefix_hero": {
          "61": 4
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 83,
        "relative_pool_probability": 0.009994023270702753,
        "training_pick_opportunities": 190,
        "support_by_prefix_hero": {
          "61": 4
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 72,
        "relative_pool_probability": 0.009766758443278872,
        "training_pick_opportunities": 298,
        "support_by_prefix_hero": {
          "61": 2
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 3,
        "relative_pool_probability": 0.009600981734539422,
        "training_pick_opportunities": 290,
        "support_by_prefix_hero": {
          "61": 2
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 43,
        "relative_pool_probability": 0.008739226741842668,
        "training_pick_opportunities": 122,
        "support_by_prefix_hero": {
          "61": 5
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 163,
        "relative_pool_probability": 0.008644632268090573,
        "training_pick_opportunities": 513,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 222,
        "relative_pool_probability": 0.008509127493684744,
        "training_pick_opportunities": 98,
        "support_by_prefix_hero": {
          "61": 6
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 79,
        "relative_pool_probability": 0.008374347103172457,
        "training_pick_opportunities": 95,
        "support_by_prefix_hero": {
          "61": 6
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 64,
        "relative_pool_probability": 0.006670302922090962,
        "training_pick_opportunities": 89,
        "support_by_prefix_hero": {
          "61": 4
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 950,
        "relative_pool_probability": 0.006148360267730959,
        "training_pick_opportunities": 212,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 103,
        "relative_pool_probability": 0.005650965840619517,
        "training_pick_opportunities": 335,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 51,
        "relative_pool_probability": 0.005544350873789314,
        "training_pick_opportunities": 81,
        "support_by_prefix_hero": {
          "61": 3
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 13,
        "relative_pool_probability": 0.005482782333458222,
        "training_pick_opportunities": 325,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 112,
        "relative_pool_probability": 0.005230507072716277,
        "training_pick_opportunities": 310,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 804,
        "relative_pool_probability": 0.004904526361564539,
        "training_pick_opportunities": 64,
        "support_by_prefix_hero": {
          "61": 3
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 777,
        "relative_pool_probability": 0.004894140058393686,
        "training_pick_opportunities": 290,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 76,
        "relative_pool_probability": 0.004538135810319866,
        "training_pick_opportunities": 132,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 267,
        "relative_pool_probability": 0.004536652140453018,
        "training_pick_opportunities": 55,
        "support_by_prefix_hero": {
          "61": 3
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 117,
        "relative_pool_probability": 0.004283345688015168,
        "training_pick_opportunities": 71,
        "support_by_prefix_hero": {
          "61": 2
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 164,
        "relative_pool_probability": 0.004283345688015168,
        "training_pick_opportunities": 71,
        "support_by_prefix_hero": {
          "61": 2
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 18,
        "relative_pool_probability": 0.00376892897903698,
        "training_pick_opportunities": 97,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 517,
        "relative_pool_probability": 0.003531853650387197,
        "training_pick_opportunities": 209,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 1,
        "relative_pool_probability": 0.0034141251953742906,
        "training_pick_opportunities": 202,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 53,
        "relative_pool_probability": 0.0032564618162981584,
        "training_pick_opportunities": 42,
        "support_by_prefix_hero": {
          "61": 2
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 31,
        "relative_pool_probability": 0.003135402502735688,
        "training_pick_opportunities": 39,
        "support_by_prefix_hero": {
          "61": 2
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 77,
        "relative_pool_probability": 0.0029244495697907306,
        "training_pick_opportunities": 34,
        "support_by_prefix_hero": {
          "61": 2
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 147,
        "relative_pool_probability": 0.002806046938111557,
        "training_pick_opportunities": 21,
        "support_by_prefix_hero": {
          "61": 3
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 901,
        "relative_pool_probability": 0.0027840096215232,
        "training_pick_opportunities": 57,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 98,
        "relative_pool_probability": 0.0025911964777549277,
        "training_pick_opportunities": 50,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 36,
        "relative_pool_probability": 0.0025729680143918915,
        "training_pick_opportunities": 13,
        "support_by_prefix_hero": {
          "61": 4
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 555,
        "relative_pool_probability": 0.0025073944316819576,
        "training_pick_opportunities": 25,
        "support_by_prefix_hero": {
          "61": 2
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 234,
        "relative_pool_probability": 0.002388205801690391,
        "training_pick_opportunities": 141,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 41,
        "relative_pool_probability": 0.002387324452236431,
        "training_pick_opportunities": 15,
        "support_by_prefix_hero": {
          "61": 3
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 523,
        "relative_pool_probability": 0.0022675228695052223,
        "training_pick_opportunities": 39,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 876,
        "relative_pool_probability": 0.0022032039438129656,
        "training_pick_opportunities": 130,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 238,
        "relative_pool_probability": 0.0019420061525529928,
        "training_pick_opportunities": 29,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 85,
        "relative_pool_probability": 0.0017628006501095716,
        "training_pick_opportunities": 24,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 203,
        "relative_pool_probability": 0.0017628006501095716,
        "training_pick_opportunities": 24,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 2,
        "relative_pool_probability": 0.001647999283801425,
        "training_pick_opportunities": 21,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 350,
        "relative_pool_probability": 0.0016165471156621802,
        "training_pick_opportunities": 10,
        "support_by_prefix_hero": {
          "61": 2
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 157,
        "relative_pool_probability": 0.0015677012513678438,
        "training_pick_opportunities": 19,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 910,
        "relative_pool_probability": 0.0015472882658839155,
        "training_pick_opportunities": 91,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 143,
        "relative_pool_probability": 0.0015304699151677853,
        "training_pick_opportunities": 90,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 875,
        "relative_pool_probability": 0.0015262465630978132,
        "training_pick_opportunities": 18,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 223,
        "relative_pool_probability": 0.0014403501062408104,
        "training_pick_opportunities": 16,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 86,
        "relative_pool_probability": 0.0013761316794205036,
        "training_pick_opportunities": 7,
        "support_by_prefix_hero": {
          "61": 2
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 60,
        "relative_pool_probability": 0.001362286408006491,
        "training_pick_opportunities": 80,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 82,
        "relative_pool_probability": 0.0010382467967361495,
        "training_pick_opportunities": 8,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 44,
        "relative_pool_probability": 0.0009134826462201296,
        "training_pick_opportunities": 6,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 154,
        "relative_pool_probability": 0.0009134826462201296,
        "training_pick_opportunities": 6,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 40,
        "relative_pool_probability": 0.0005951700421473663,
        "training_pick_opportunities": 2,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 69,
        "relative_pool_probability": 0.0005886422750645324,
        "training_pick_opportunities": 34,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 119,
        "relative_pool_probability": 0.0005718239243484038,
        "training_pick_opportunities": 33,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 427,
        "relative_pool_probability": 0.0005718239243484038,
        "training_pick_opportunities": 33,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 74,
        "relative_pool_probability": 0.0004853718906208359,
        "training_pick_opportunities": 1,
        "support_by_prefix_hero": {
          "61": 1
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 412,
        "relative_pool_probability": 0.00038682206647097867,
        "training_pick_opportunities": 22,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 8,
        "relative_pool_probability": 0.00035318536503871947,
        "training_pick_opportunities": 20,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 4,
        "relative_pool_probability": 0.00033636701432258995,
        "training_pick_opportunities": 19,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 800,
        "relative_pool_probability": 0.00033636701432258995,
        "training_pick_opportunities": 19,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 7,
        "relative_pool_probability": 0.00031954866360646054,
        "training_pick_opportunities": 18,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 902,
        "relative_pool_probability": 0.00031954866360646054,
        "training_pick_opportunities": 18,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 134,
        "relative_pool_probability": 0.00030273031289033134,
        "training_pick_opportunities": 17,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 136,
        "relative_pool_probability": 0.00025227526074194273,
        "training_pick_opportunities": 14,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 106,
        "relative_pool_probability": 0.00023545691002581313,
        "training_pick_opportunities": 13,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 63,
        "relative_pool_probability": 0.00021863855930968348,
        "training_pick_opportunities": 12,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 50,
        "relative_pool_probability": 0.00020182020859355399,
        "training_pick_opportunities": 11,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 131,
        "relative_pool_probability": 0.0001850018578774246,
        "training_pick_opportunities": 10,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 6,
        "relative_pool_probability": 0.00016818350716129525,
        "training_pick_opportunities": 9,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 34,
        "relative_pool_probability": 0.00016818350716129525,
        "training_pick_opportunities": 9,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 96,
        "relative_pool_probability": 0.00015136515644516564,
        "training_pick_opportunities": 8,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 38,
        "relative_pool_probability": 0.00013454680572903585,
        "training_pick_opportunities": 7,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 30,
        "relative_pool_probability": 0.00011772845501290657,
        "training_pick_opportunities": 6,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 142,
        "relative_pool_probability": 0.00011772845501290657,
        "training_pick_opportunities": 6,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 19,
        "relative_pool_probability": 0.00010091010429677698,
        "training_pick_opportunities": 5,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 23,
        "relative_pool_probability": 0.00010091010429677698,
        "training_pick_opportunities": 5,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 26,
        "relative_pool_probability": 0.00010091010429677698,
        "training_pick_opportunities": 5,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 101,
        "relative_pool_probability": 0.00010091010429677698,
        "training_pick_opportunities": 5,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 114,
        "relative_pool_probability": 0.00010091010429677698,
        "training_pick_opportunities": 5,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 29,
        "relative_pool_probability": 8.409175358064746e-05,
        "training_pick_opportunities": 4,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 90,
        "relative_pool_probability": 8.409175358064746e-05,
        "training_pick_opportunities": 4,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 99,
        "relative_pool_probability": 8.409175358064746e-05,
        "training_pick_opportunities": 4,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 121,
        "relative_pool_probability": 8.409175358064746e-05,
        "training_pick_opportunities": 4,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 127,
        "relative_pool_probability": 8.409175358064746e-05,
        "training_pick_opportunities": 4,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 240,
        "relative_pool_probability": 8.409175358064746e-05,
        "training_pick_opportunities": 4,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 246,
        "relative_pool_probability": 8.409175358064746e-05,
        "training_pick_opportunities": 4,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 421,
        "relative_pool_probability": 8.409175358064746e-05,
        "training_pick_opportunities": 4,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 895,
        "relative_pool_probability": 8.409175358064746e-05,
        "training_pick_opportunities": 4,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 9,
        "relative_pool_probability": 6.727340286451804e-05,
        "training_pick_opportunities": 3,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 16,
        "relative_pool_probability": 6.727340286451804e-05,
        "training_pick_opportunities": 3,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 32,
        "relative_pool_probability": 6.727340286451804e-05,
        "training_pick_opportunities": 3,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 39,
        "relative_pool_probability": 6.727340286451804e-05,
        "training_pick_opportunities": 3,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 91,
        "relative_pool_probability": 6.727340286451804e-05,
        "training_pick_opportunities": 3,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 92,
        "relative_pool_probability": 6.727340286451804e-05,
        "training_pick_opportunities": 3,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 25,
        "relative_pool_probability": 5.045505214838849e-05,
        "training_pick_opportunities": 2,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 27,
        "relative_pool_probability": 5.045505214838849e-05,
        "training_pick_opportunities": 2,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 67,
        "relative_pool_probability": 5.045505214838849e-05,
        "training_pick_opportunities": 2,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 75,
        "relative_pool_probability": 5.045505214838849e-05,
        "training_pick_opportunities": 2,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 102,
        "relative_pool_probability": 5.045505214838849e-05,
        "training_pick_opportunities": 2,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 245,
        "relative_pool_probability": 5.045505214838849e-05,
        "training_pick_opportunities": 2,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 711,
        "relative_pool_probability": 5.045505214838849e-05,
        "training_pick_opportunities": 2,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 10,
        "relative_pool_probability": 3.363670143225901e-05,
        "training_pick_opportunities": 1,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 20,
        "relative_pool_probability": 3.363670143225901e-05,
        "training_pick_opportunities": 1,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 45,
        "relative_pool_probability": 3.363670143225901e-05,
        "training_pick_opportunities": 1,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 104,
        "relative_pool_probability": 3.363670143225901e-05,
        "training_pick_opportunities": 1,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 107,
        "relative_pool_probability": 3.363670143225901e-05,
        "training_pick_opportunities": 1,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 120,
        "relative_pool_probability": 3.363670143225901e-05,
        "training_pick_opportunities": 1,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 133,
        "relative_pool_probability": 3.363670143225901e-05,
        "training_pick_opportunities": 1,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "historical_context_and_prefix"
      },
      {
        "champion_id": 11,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 17,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 28,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 33,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 35,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 37,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 55,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 105,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 122,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 141,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 161,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 166,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 200,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 233,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 360,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 420,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      },
      {
        "champion_id": 904,
        "relative_pool_probability": 1.6818350716129506e-05,
        "training_pick_opportunities": 0,
        "support_by_prefix_hero": {
          "61": 0
        },
        "fallback": "smoothed_unseen_prior"
      }
    ],
    "uncertainty": "Descriptive weights normalized over this exact masked pool; unseen priors are explicit, not measured synergy or calibrated next-pick probabilities",
    "team_preference_interface": "Optional team selects a historical context prior; no claim of preference for winning lanes"
  }
}
Example 2 · incomplete_role_matchup
{
  "request": {
    "module": "lane",
    "patch": "26.02",
    "draft_format": "unknown",
    "unit": "bot_duo",
    "selected": [
      {
        "side": "Red",
        "champion_id": 268
      },
      {
        "side": "Blue",
        "champion_id": 61
      }
    ]
  },
  "response": {
    "schema_version": "m2.relationships.final.v1",
    "model_version": "m2_final_v1",
    "status": "incomplete_role_matchup",
    "patch": "26.02",
    "format": "unknown",
    "source_release": "m1-final-2026-10-11",
    "available_from_utc": "2026-01-01",
    "max_training_label_time": "2025-08-31T23:28:13+00:00",
    "ranked_weight": 0,
    "source": "whole existing professional archive; unknown rules retained as unknown performance context",
    "relationship_support_scope": "Pooled admitted professional training archive, including unknown formats; not same-patch/same-format evidence",
    "format_training_games": {
      "unknown": 10468,
      "classic": 209,
      "full_fearless": 2055
    },
    "interpretation": "Adjusted association; never causal counter strength",
    "missing_context": [
      "physical_lane",
      "lane_swaps",
      "jungle_interventions",
      "support_roaming"
    ],
    "evaluation_status": "Retrospective 2026 diagnosis; no new blind test claimed",
    "score": null,
    "supported_role_mass": 0,
    "role_scenarios": 6,
    "unknown_role_priors": [],
    "missing_scenarios": [
      {
        "weight": 1.5700271353023218e-06,
        "status": "incomplete_matchup"
      },
      {
        "weight": 0.001165745147961974,
        "status": "incomplete_matchup"
      },
      {
        "weight": 0.0013418498583050512,
        "status": "incomplete_matchup"
      },
      {
        "weight": 0.9963235197915005,
        "status": "incomplete_matchup"
      },
      {
        "weight": 1.5700271353023218e-06,
        "status": "incomplete_matchup"
      },
      {
        "weight": 0.001165745147961974,
        "status": "incomplete_matchup"
      }
    ],
    "reason": "Missing counterpart or unsupported role remains unknown; no final lineup/future pick lookup"
  }
}
Example 3 · historical_association
{
  "request": {
    "module": "global",
    "patch": "26.02",
    "draft_format": "unknown",
    "selected": [
      {
        "side": "Red",
        "champion_id": 268
      },
      {
        "side": "Blue",
        "champion_id": 61
      }
    ]
  },
  "response": {
    "schema_version": "m2.relationships.final.v1",
    "model_version": "m2_final_v1",
    "status": "historical_association",
    "patch": "26.02",
    "format": "unknown",
    "source_release": "m1-final-2026-10-11",
    "available_from_utc": "2026-01-01",
    "max_training_label_time": "2025-08-31T23:28:13+00:00",
    "ranked_weight": 0,
    "source": "whole existing professional archive; unknown rules retained as unknown performance context",
    "relationship_support_scope": "Pooled admitted professional training archive, including unknown formats; not same-patch/same-format evidence",
    "format_training_games": {
      "unknown": 10468,
      "classic": 209,
      "full_fearless": 2055
    },
    "interpretation": "Adjusted association; never causal counter strength",
    "missing_context": [
      "physical_lane",
      "lane_swaps",
      "jungle_interventions",
      "support_roaming"
    ],
    "evaluation_status": "Retrospective 2026 diagnosis; no new blind test claimed",
    "module": "global",
    "variant": "champions",
    "selected_variant": "champions",
    "experimental_override": false,
    "relationship_enabled": false,
    "score": null,
    "complete_relationship_coverage": false,
    "score_unit": "Blue-minus-Red interaction log odds; partial lineups are not win probabilities",
    "pairs": [
      {
        "champions": [
          268,
          61
        ],
        "type": "enemy",
        "adjusted_log_odds": null,
        "role_support_min": 0,
        "role_support_max": 0,
        "supported_role_mass": 0,
        "uncertainty": "No calibrated relationship confidence interval; sparse/unseen role pairs use neutral model fallback"
      }
    ],
    "role_scenarios": 6,
    "unknown_role_priors": [],
    "uncertainty": {
      "sampling_confidence_interval": null,
      "low_support": true,
      "role_marginalization": "Historical training priors conditioned on feasible same-side roles; no final lineup lookup",
      "unseen_patch": true,
      "feature_min_training_games": 20
    },
    "fallback": "context_and_single_champions"
  }
}
Example 4 · unknown_format
{
  "request": {
    "module": "co_selection",
    "patch": "26.02",
    "draft_format": "unknown",
    "picking_side": "Blue"
  },
  "response": {
    "schema_version": "m2.relationships.final.v1",
    "model_version": "m2_final_v1",
    "status": "unknown_format",
    "patch": "26.02",
    "format": "unknown",
    "source_release": "m1-final-2026-10-11",
    "available_from_utc": "2026-01-01",
    "max_training_label_time": "2025-08-31T23:28:13+00:00",
    "ranked_weight": 0,
    "source": "whole existing professional archive; unknown rules retained as unknown performance context",
    "relationship_support_scope": "Pooled admitted professional training archive, including unknown formats; not same-patch/same-format evidence",
    "format_training_games": {
      "unknown": 10468,
      "classic": 209,
      "full_fearless": 2055
    },
    "interpretation": "Adjusted association; never causal counter strength",
    "missing_context": [
      "physical_lane",
      "lane_swaps",
      "jungle_interventions",
      "support_roaming"
    ],
    "evaluation_status": "Retrospective 2026 diagnosis; no new blind test claimed",
    "score": null,
    "reason": "Unknown rules never use guessed Classic/Fearless exclusions"
  }
}

Downloads and reproduction

Complete model, query code and reproduction instructions ↗