{
  "match_info": {
    "home_team": "Sweden",
    "away_team": "Tunisia",
    "tournament": "FIFA World Cup",
    "date": "20260615",
    "home_formation": "3-4-2-1",
    "away_formation": "3-5-2"
  },
  "prediction": {
    "most_likely_score": "2-0",
    "home_goals": 2,
    "away_goals": 0,
    "most_likely_score_probability": 0.1577,
    "top_5_scorelines": [
      {
        "score": "2-0",
        "probability": 0.1577
      },
      {
        "score": "3-0",
        "probability": 0.1311
      },
      {
        "score": "1-0",
        "probability": 0.1263
      },
      {
        "score": "4-0",
        "probability": 0.0817
      },
      {
        "score": "2-1",
        "probability": 0.077
      }
    ],
    "scoreline_probabilities": {
      "0-0": 0.0509,
      "0-1": 0.0246,
      "0-2": 0.006,
      "0-3": 0.001,
      "1-0": 0.1263,
      "1-1": 0.0619,
      "1-2": 0.0151,
      "1-3": 0.0024,
      "2-0": 0.1577,
      "2-1": 0.077,
      "2-2": 0.0188,
      "2-3": 0.0031,
      "3-0": 0.1311,
      "3-1": 0.064,
      "3-2": 0.0156,
      "3-3": 0.0025,
      "4-0": 0.0817,
      "4-1": 0.0399,
      "4-2": 0.0097,
      "4-3": 0.0016,
      "5-0": 0.0408,
      "5-1": 0.0199,
      "5-2": 0.0049,
      "5-3": 0.0008,
      "6-0": 0.0169,
      "6-1": 0.0083,
      "6-2": 0.002,
      "7-0": 0.006,
      "7-1": 0.0029,
      "7-2": 0.0007,
      "8-0": 0.0019,
      "8-1": 0.0009,
      "9-0": 0.0005
    },
    "outcome": {
      "home_win": 0.8123,
      "draw": 0.1343,
      "away_win": 0.0534
    },
    "markets": {
      "over_2_5_goals": 0.5726,
      "under_2_5_goals": 0.4274,
      "btts_yes": 0.3544,
      "btts_no": 0.6456,
      "home_clean_sheet": 0.6139,
      "away_clean_sheet": 0.0826
    },
    "home_ratings": {
      "DR": 6.83,
      "MCR": 7.14,
      "ATR": 7.04,
      "GK": 6.65
    },
    "away_ratings": {
      "DR": 6.52,
      "MCR": 6.61,
      "ATR": 6.74,
      "GK": 6.67
    },
    "insights": {
      "summary": "Antagonist matchup analysis for Sweden vs Tunisia. Most likely scoreline: 2-0. Lambdas derived from 7 home and 6 away individual player duels.",
      "key_player": "Projected scorer(s): Daniel Svensson, Viktor Gyökeres",
      "tactical_analysis": "Tactical parity between 3-4-2-1 and 3-5-2. Match outcome driven primarily by individual player quality. Home midfield dominates with ~53% possession expected (Lucas Bergvall vs Sebastian Tounekti). Total antagonist xG — Home: 1.25, Away: 0.37. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle."
    },
    "confidence": 0.87,
    "home_lambda": 2.494,
    "away_lambda": 0.488
  },
  "teams": {
    "Sweden": {
      "formation": "3-4-2-1",
      "players": {
        "Melker Ellborg": {
          "player_id": 1099795,
          "position": "G",
          "position_depth": "G",
          "is_starter": true,
          "shirt_number": 31,
          "height": 191,
          "market_value": 2800000,
          "stats": {
            "saves": 3,
            "goals_prevented": 0.302,
            "rating": 6.6504,
            "minutes": 88,
            "total_pass": 32,
            "accurate_pass": 15,
            "total_long_balls": 21,
            "accurate_long_balls": 4,
            "touches": 43,
            "clearances": 2,
            "ball_recovery": 11,
            "high_claims": 0,
            "punches": 1.4718,
            "aerial_won": 0,
            "sweeper_actions": 1,
            "sweeper_accurate": 1,
            "saves_inside_box": 2,
            "possession_lost": 15.6997,
            "duels_won": 1,
            "duels_lost": 0,
            "total_contest": 1,
            "won_contest": 1,
            "fouls": 0,
            "fouls_drawn": 0,
            "total_own_half_passes": 14,
            "accurate_own_half_passes": 14,
            "expected_saves": 0.77,
            "high_pressure_saves": 0.29,
            "shots_faced": 1.7,
            "opponent_faced": "Elias Saad, Louey Ben Farhat",
            "matchup_zone": "Goalkeeper shot-stopping context",
            "antagonist_source": "formation_fallback",
            "goals": 0,
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        },
        "Gabriel Gudmundsson": {
          "player_id": 834308,
          "position": "D",
          "position_depth": "D",
          "is_starter": true,
          "shirt_number": 3,
          "height": 181,
          "market_value": 21000000,
          "stats": {
            "interceptions": 1,
            "tackles": 0,
            "tackles_won": 0,
            "clearances": 0,
            "aerial_won": 0,
            "rating": 6.853,
            "minutes": 57,
            "total_pass": 23,
            "accurate_pass": 18,
            "duels_won": 4,
            "total_long_balls": 4,
            "accurate_long_balls": 1,
            "total_own_half_passes": 11,
            "accurate_own_half_passes": 11,
            "total_opp_half_passes": 11,
            "accurate_opp_half_passes": 7,
            "crosses_total": 2,
            "crosses_accurate": 0,
            "touches": 38,
            "possession_lost": 8.859,
            "dispossessed": 0.0,
            "duels_lost": 2,
            "aerial_lost": 1,
            "total_contest": 2,
            "won_contest": 0,
            "ball_recovery": 4,
            "challenges_lost": 0,
            "fouls": 0,
            "fouls_drawn": 3,
            "blocks": 0,
            "goal_rate": 0.0,
            "goals": 0,
            "assists": 0,
            "expected_goals": 0.0417,
            "expected_assists": 0.0104,
            "total_shots": 1,
            "shots_on_target": 0,
            "shots_off_target": 1,
            "big_chances_created": 0,
            "xgot": 0.0,
            "ball_carries": 14,
            "total_progression": 53,
            "progressive_carries": 1,
            "key_pass": 0,
            "tackles_in_zone": 1.1,
            "tackles_won_in_zone": 1.2,
            "interceptions_in_zone": 1.0,
            "clearances_in_zone": 0.9,
            "aerial_duels_won": 0.8,
            "defensive_success_rate": 0.82,
            "opponent_faced": "Louey Ben Farhat",
            "pressing_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
            "matchup_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
            "antagonist_source": "defensive_duel",
            "projected_goals": 0,
            "goal_probability": 0.0139
          }
        },
        "Isak Hien": {
          "player_id": 1157713,
          "position": "D",
          "position_depth": "D",
          "is_starter": true,
          "shirt_number": 4,
          "height": 191,
          "market_value": 21000000,
          "stats": {
            "interceptions": 1,
            "tackles": 2,
            "tackles_won": 1,
            "clearances": 4,
            "aerial_won": 1,
            "rating": 6.9608,
            "minutes": 68,
            "total_pass": 34,
            "accurate_pass": 31,
            "duels_won": 4,
            "total_long_balls": 3,
            "accurate_long_balls": 2,
            "total_own_half_passes": 26,
            "accurate_own_half_passes": 24,
            "total_opp_half_passes": 10,
            "accurate_opp_half_passes": 9,
            "crosses_total": 0,
            "crosses_accurate": 0,
            "touches": 47,
            "possession_lost": 4.8881,
            "dispossessed": 1.5633,
            "duels_lost": 4,
            "aerial_lost": 2,
            "total_contest": 1,
            "won_contest": 1,
            "ball_recovery": 5,
            "challenges_lost": 2,
            "fouls": 2,
            "fouls_drawn": 1,
            "blocks": 2,
            "goal_rate": 0.0,
            "goals": 0,
            "assists": 0,
            "expected_goals": 0.2189,
            "expected_assists": 0.0104,
            "total_shots": 0,
            "shots_on_target": 1,
            "shots_off_target": 1,
            "big_chances_created": 0,
            "xgot": 0.8129,
            "ball_carries": 13,
            "total_progression": 32,
            "progressive_carries": 0,
            "key_pass": 1,
            "tackles_in_zone": 1.1,
            "tackles_won_in_zone": 1.2,
            "interceptions_in_zone": 1.0,
            "clearances_in_zone": 0.9,
            "aerial_duels_won": 0.8,
            "defensive_success_rate": 0.82,
            "opponent_faced": "Louey Ben Farhat",
            "pressing_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
            "matchup_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
            "antagonist_source": "defensive_duel",
            "projected_goals": 0,
            "goal_probability": 0.1259
          }
        },
        "Victor Lindelöf": {
          "player_id": 143334,
          "position": "D",
          "position_depth": "D",
          "is_starter": true,
          "shirt_number": 3,
          "height": 187,
          "market_value": 5800000,
          "stats": {
            "interceptions": 0,
            "tackles": 0,
            "tackles_won": 0,
            "clearances": 4,
            "aerial_won": 1,
            "rating": 6.6682,
            "minutes": 89,
            "total_pass": 59,
            "accurate_pass": 54,
            "duels_won": 2,
            "total_long_balls": 4,
            "accurate_long_balls": 1,
            "total_own_half_passes": 40,
            "accurate_own_half_passes": 39,
            "total_opp_half_passes": 19,
            "accurate_opp_half_passes": 16,
            "crosses_total": 0,
            "crosses_accurate": 0,
            "touches": 67,
            "possession_lost": 5.781,
            "dispossessed": 0.9916,
            "duels_lost": 3,
            "aerial_lost": 1,
            "total_contest": 0,
            "won_contest": 0,
            "ball_recovery": 3,
            "challenges_lost": 1,
            "fouls": 1,
            "fouls_drawn": 2,
            "blocks": 1,
            "goal_rate": 0.0081,
            "goals": 0,
            "assists": 0,
            "expected_goals": 0.1435,
            "expected_assists": 0.0099,
            "total_shots": 0,
            "shots_on_target": 0,
            "shots_off_target": 2,
            "big_chances_created": 0,
            "xgot": 0.0,
            "ball_carries": 26,
            "total_progression": 82,
            "progressive_carries": 1,
            "key_pass": 1,
            "opponent_faced": "Louey Ben Farhat",
            "matchup_zone": "Shape fallback",
            "antagonist_source": "formation_fallback",
            "projected_goals": 0,
            "goal_probability": 0.0507
          }
        },
        "Lucas Bergvall": {
          "player_id": 1391251,
          "position": "M",
          "position_depth": "M",
          "is_starter": true,
          "shirt_number": 15,
          "height": 186,
          "market_value": 41000000,
          "stats": {
            "key_pass": 0,
            "expected_assists": 0.0112,
            "assists": 0,
            "expected_goals": 0.0,
            "rating": 7.1212,
            "minutes": 32,
            "total_pass": 10,
            "accurate_pass": 8,
            "ball_recovery": 2,
            "duels_won": 2,
            "total_shots": 2,
            "total_long_balls": 2,
            "accurate_long_balls": 1,
            "total_own_half_passes": 4,
            "accurate_own_half_passes": 3,
            "total_opp_half_passes": 6,
            "accurate_opp_half_passes": 5,
            "crosses_total": 2,
            "crosses_accurate": 2,
            "touches": 17,
            "possession_lost": 4.6689,
            "dispossessed": 1.4441,
            "duels_lost": 3,
            "aerial_won": 1,
            "aerial_lost": 1,
            "interceptions": 1,
            "tackles_won": 1,
            "tackles": 1,
            "clearances": 2,
            "total_contest": 1,
            "won_contest": 1,
            "challenges_lost": 2,
            "fouls": 2,
            "fouls_drawn": 1,
            "goal_rate": 0.0,
            "goals": 0,
            "shots_on_target": 1,
            "shots_off_target": 1,
            "blocks": 1,
            "big_chances_created": 0,
            "big_chances_missed": 0,
            "xgot": 0.0,
            "ball_carries": 4,
            "total_progression": 26,
            "progressive_carries": 1,
            "dribbles_attempted": 3,
            "dribbles_successful": 1.6,
            "crosses_attempted": 0.0,
            "duel_win_rate": 0.593,
            "pressing_faced": "LOW",
            "matchup_zone": "Central Mid vs Defensive Mid — Pressing/Creation Duel",
            "numerical_situation": "1v1",
            "opponent_defenders": "Ellyes Skhiri",
            "opponent_faced": "Ellyes Skhiri",
            "antagonist_source": "attacking_duel, midfield_pairing",
            "projected_goals": 0,
            "goal_probability": 0.047
          }
        },
        "Hugo Larsson": {
          "player_id": 1142211,
          "position": "M",
          "position_depth": "M",
          "is_starter": true,
          "shirt_number": 16,
          "height": 187,
          "market_value": 34000000,
          "stats": {
            "key_pass": 0,
            "expected_assists": 0.066,
            "assists": 0,
            "expected_goals": 0.0,
            "rating": 7.3712,
            "minutes": 89,
            "total_pass": 49,
            "accurate_pass": 45,
            "ball_recovery": 4,
            "duels_won": 2,
            "total_shots": 2,
            "total_long_balls": 4,
            "accurate_long_balls": 3,
            "total_own_half_passes": 23,
            "accurate_own_half_passes": 22,
            "total_opp_half_passes": 26,
            "accurate_opp_half_passes": 22,
            "crosses_total": 1,
            "crosses_accurate": 1,
            "touches": 59,
            "possession_lost": 5.8622,
            "dispossessed": 1.0737,
            "duels_lost": 2,
            "aerial_won": 1,
            "aerial_lost": 2,
            "interceptions": 2,
            "tackles_won": 1,
            "tackles": 2,
            "clearances": 3,
            "total_contest": 1,
            "won_contest": 1,
            "challenges_lost": 1,
            "fouls": 1,
            "fouls_drawn": 1,
            "goal_rate": 1.0737,
            "goals": 0,
            "shots_on_target": 1,
            "shots_off_target": 1,
            "blocks": 1,
            "big_chances_created": 0,
            "big_chances_missed": 0,
            "xgot": 0.3436,
            "ball_carries": 19,
            "total_progression": 52,
            "progressive_carries": 1,
            "dribbles_attempted": 3,
            "dribbles_successful": 1.5,
            "crosses_attempted": 0.0,
            "duel_win_rate": 0.579,
            "pressing_faced": "LOW",
            "matchup_zone": "Central Mid vs Defensive Mid — Pressing/Creation Duel",
            "numerical_situation": "1v1",
            "opponent_defenders": "Ellyes Skhiri",
            "opponent_faced": "Ellyes Skhiri",
            "antagonist_source": "attacking_duel, defensive_duel, midfield_pairing",
            "projected_goals": 0,
            "goal_probability": 0.2733
          }
        },
        "Yasin Ayari": {
          "player_id": 1036269,
          "position": "M",
          "position_depth": "M",
          "is_starter": true,
          "shirt_number": 26,
          "height": 172,
          "market_value": 27000000,
          "stats": {
            "key_pass": 0,
            "expected_assists": 0.0149,
            "assists": 0,
            "expected_goals": 0.0462,
            "rating": 6.9505,
            "minutes": 64,
            "total_pass": 15,
            "accurate_pass": 12,
            "ball_recovery": 3,
            "duels_won": 4,
            "total_shots": 1,
            "total_long_balls": 2,
            "accurate_long_balls": 2,
            "total_own_half_passes": 9,
            "accurate_own_half_passes": 7,
            "total_opp_half_passes": 10,
            "accurate_opp_half_passes": 8,
            "crosses_total": 1,
            "crosses_accurate": 0,
            "touches": 23,
            "possession_lost": 5.7568,
            "dispossessed": 1.4075,
            "duels_lost": 5,
            "aerial_won": 1,
            "aerial_lost": 2,
            "interceptions": 1,
            "tackles_won": 1,
            "tackles": 2,
            "clearances": 2,
            "total_contest": 2,
            "won_contest": 2,
            "challenges_lost": 2,
            "fouls": 2,
            "fouls_drawn": 2,
            "goal_rate": 0.0533,
            "goals": 0,
            "shots_on_target": 1,
            "shots_off_target": 0,
            "blocks": 1,
            "big_chances_created": 0,
            "big_chances_missed": 0,
            "xgot": 0.0,
            "ball_carries": 8,
            "total_progression": 17,
            "progressive_carries": 1,
            "dribbles_attempted": 2,
            "dribbles_successful": 0.8,
            "crosses_attempted": 2.7,
            "duel_win_rate": 0.475,
            "pressing_faced": "LOW",
            "matchup_zone": "LWB vs RWB",
            "numerical_situation": "1v1",
            "opponent_defenders": "Anis Ben Slimane",
            "opponent_faced": "Anis Ben Slimane",
            "antagonist_source": "attacking_duel, defensive_duel, midfield_pairing",
            "projected_goals": 0,
            "goal_probability": 0.0618
          }
        },
        "Daniel Svensson": {
          "player_id": 1021272,
          "position": "M",
          "position_depth": "M",
          "is_starter": true,
          "shirt_number": 24,
          "height": 183,
          "market_value": 20000000,
          "stats": {
            "key_pass": 1,
            "expected_assists": 0.1238,
            "assists": 0,
            "expected_goals": 0.0,
            "rating": 7.1151,
            "minutes": 80,
            "total_pass": 27,
            "accurate_pass": 22,
            "ball_recovery": 3,
            "duels_won": 3,
            "total_shots": 1,
            "total_long_balls": 2,
            "accurate_long_balls": 1,
            "total_own_half_passes": 12,
            "accurate_own_half_passes": 11,
            "total_opp_half_passes": 15,
            "accurate_opp_half_passes": 12,
            "crosses_total": 4,
            "crosses_accurate": 1,
            "touches": 43,
            "possession_lost": 9.4266,
            "dispossessed": 1.2991,
            "duels_lost": 4,
            "aerial_won": 1,
            "aerial_lost": 2,
            "interceptions": 1,
            "tackles_won": 2,
            "tackles": 2,
            "clearances": 3,
            "total_contest": 1,
            "won_contest": 1,
            "challenges_lost": 2,
            "fouls": 1,
            "fouls_drawn": 1,
            "goal_rate": 1.0393,
            "goals": 1,
            "shots_on_target": 1,
            "shots_off_target": 1,
            "blocks": 1,
            "big_chances_created": 2,
            "big_chances_missed": 1,
            "xgot": 0.7899,
            "ball_carries": 8,
            "total_progression": 21,
            "progressive_carries": 1,
            "dribbles_attempted": 2,
            "dribbles_successful": 0.9,
            "crosses_attempted": 2.6,
            "duel_win_rate": 0.537,
            "pressing_faced": "LOW",
            "matchup_zone": "RWB vs LWB",
            "numerical_situation": "1v1",
            "opponent_defenders": "Ismael Gharbi",
            "opponent_faced": "Ismael Gharbi",
            "antagonist_source": "attacking_duel, defensive_duel, midfield_pairing",
            "projected_goals": 1,
            "goal_probability": 0.3196
          }
        },
        "Viktor Gyökeres": {
          "player_id": 804508,
          "position": "F",
          "position_depth": "F",
          "is_starter": true,
          "shirt_number": 14,
          "height": 187,
          "market_value": 61000000,
          "stats": {
            "expected_goals": 0.3423,
            "goal_rate": 0.2675,
            "goals": 1,
            "shots_on_target": 0,
            "expected_assists": 0.0267,
            "key_pass": 0,
            "rating": 7.325,
            "minutes": 80,
            "total_shots": 3,
            "duels_won": 3,
            "aerial_won": 2,
            "total_pass": 12,
            "accurate_pass": 8,
            "total_long_balls": 3,
            "accurate_long_balls": 1,
            "total_opp_half_passes": 10,
            "accurate_opp_half_passes": 6,
            "crosses_total": 1,
            "crosses_accurate": 1,
            "touches": 23,
            "possession_lost": 8.9732,
            "dispossessed": 2.2129,
            "duels_lost": 6,
            "aerial_lost": 2,
            "total_contest": 2,
            "won_contest": 1,
            "ball_recovery": 2,
            "challenges_lost": 1,
            "fouls": 2,
            "fouls_drawn": 2,
            "assists": 0,
            "shots_off_target": 2,
            "interceptions": 1,
            "tackles_won": 0,
            "tackles": 1,
            "clearances": 1,
            "blocks": 1,
            "big_chances_created": 1,
            "big_chances_missed": 2,
            "xgot": 0.6971,
            "offsides": 1,
            "ball_carries": 6,
            "total_progression": 19,
            "progressive_carries": 1,
            "dribbles_attempted": 2,
            "dribbles_successful": 0.7,
            "crosses_attempted": 0.0,
            "duel_win_rate": 0.397,
            "pressing_faced": "LOW",
            "matchup_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
            "numerical_situation": "1v2",
            "opponent_defenders": "Ali Abdi, Alaa Ghram",
            "opponent_faced": "Ali Abdi, Alaa Ghram",
            "antagonist_source": "attacking_duel",
            "projected_goals": 1,
            "goal_probability": 0.4529
          }
        },
        "Anthony Elanga": {
          "player_id": 979232,
          "position": "F",
          "position_depth": "F",
          "is_starter": true,
          "shirt_number": 20,
          "height": 178,
          "market_value": 38000000,
          "stats": {
            "expected_goals": 0.1088,
            "goal_rate": 0.0966,
            "goals": 0,
            "shots_on_target": 0,
            "expected_assists": 0.0307,
            "key_pass": 0,
            "rating": 6.9961,
            "minutes": 68,
            "total_shots": 3,
            "duels_won": 3,
            "aerial_won": 1,
            "total_pass": 13,
            "accurate_pass": 11,
            "total_long_balls": 1,
            "accurate_long_balls": 1,
            "total_opp_half_passes": 10,
            "accurate_opp_half_passes": 8,
            "crosses_total": 2,
            "crosses_accurate": 1,
            "touches": 23,
            "possession_lost": 8.1829,
            "dispossessed": 2.1619,
            "duels_lost": 4,
            "aerial_lost": 1,
            "total_contest": 3,
            "won_contest": 2,
            "ball_recovery": 2,
            "challenges_lost": 1,
            "fouls": 1,
            "fouls_drawn": 2,
            "assists": 0,
            "shots_off_target": 1,
            "interceptions": 1,
            "tackles_won": 1,
            "tackles": 1,
            "clearances": 1,
            "blocks": 1,
            "big_chances_created": 2,
            "big_chances_missed": 0,
            "xgot": 0.5621,
            "offsides": 1,
            "ball_carries": 8,
            "total_progression": 24,
            "progressive_carries": 2,
            "dribbles_attempted": 3,
            "dribbles_successful": 1.5,
            "crosses_attempted": 0.0,
            "duel_win_rate": 0.584,
            "pressing_faced": "LOW",
            "matchup_zone": "Shadow Striker vs Centre Back — Half-Space Threat",
            "numerical_situation": "1v1",
            "opponent_defenders": "Ali Abdi",
            "opponent_faced": "Ali Abdi",
            "antagonist_source": "attacking_duel",
            "projected_goals": 0,
            "goal_probability": 0.2687
          }
        },
        "Roony Bardghji": {
          "player_id": 1162107,
          "position": "F",
          "position_depth": "F",
          "is_starter": true,
          "shirt_number": 19,
          "height": 173,
          "market_value": 15500000,
          "stats": {
            "expected_goals": 0.2689,
            "goal_rate": 0.0004,
            "goals": 0,
            "shots_on_target": 0,
            "expected_assists": 0.0882,
            "key_pass": 0,
            "rating": 6.8073,
            "minutes": 38,
            "total_shots": 3,
            "duels_won": 2,
            "aerial_won": 1,
            "total_pass": 17,
            "accurate_pass": 15,
            "total_long_balls": 1,
            "accurate_long_balls": 1,
            "total_opp_half_passes": 12,
            "accurate_opp_half_passes": 11,
            "crosses_total": 2,
            "crosses_accurate": 1,
            "touches": 26,
            "possession_lost": 6.7367,
            "dispossessed": 2.5635,
            "duels_lost": 4,
            "aerial_lost": 1,
            "total_contest": 2,
            "won_contest": 1,
            "ball_recovery": 2,
            "challenges_lost": 1,
            "fouls": 2,
            "fouls_drawn": 1,
            "assists": 0,
            "shots_off_target": 0,
            "interceptions": 2,
            "tackles_won": 1,
            "tackles": 1,
            "clearances": 0,
            "blocks": 0,
            "big_chances_created": 1,
            "big_chances_missed": 0,
            "xgot": 0.1128,
            "offsides": 0,
            "ball_carries": 9,
            "total_progression": 20,
            "progressive_carries": 2,
            "dribbles_attempted": 3,
            "dribbles_successful": 1.3,
            "crosses_attempted": 0.0,
            "duel_win_rate": 0.48,
            "pressing_faced": "LOW",
            "matchup_zone": "Shadow Striker vs Centre Back — Half-Space Threat",
            "numerical_situation": "1v1",
            "opponent_defenders": "Ali Abdi",
            "opponent_faced": "Ali Abdi",
            "antagonist_source": "attacking_duel",
            "projected_goals": 0,
            "goal_probability": 0.2243
          }
        }
      },
      "bench_players": {
        "Viktor Johansson": {
          "player_id": 561430,
          "position": "G",
          "position_depth": "G_BENCH",
          "is_starter": false,
          "shirt_number": 1,
          "height": 186,
          "market_value": 11600000,
          "stats": {
            "saves": 0,
            "goals_prevented": 0.0162,
            "rating": 6.8838,
            "minutes": 5,
            "bench_appearance_probability": 0.127,
            "bench_expected_minutes": 4.8
          }
        },
        "Emil Holm": {
          "player_id": 965264,
          "position": "D",
          "position_depth": "D_BENCH",
          "is_starter": false,
          "shirt_number": 2,
          "height": 191,
          "market_value": 11700000,
          "stats": {
            "interceptions": 0,
            "tackles": 0,
            "tackles_won": 0,
            "clearances": 0,
            "aerial_won": 0,
            "rating": 6.8442,
            "minutes": 14,
            "total_pass": 1,
            "accurate_pass": 1,
            "duels_won": 0,
            "total_long_balls": 0,
            "accurate_long_balls": 0,
            "total_own_half_passes": 0,
            "accurate_own_half_passes": 0,
            "total_opp_half_passes": 1,
            "accurate_opp_half_passes": 0,
            "crosses_total": 0,
            "crosses_accurate": 0,
            "touches": 2,
            "possession_lost": 0.7082,
            "dispossessed": 0.0,
            "duels_lost": 0,
            "aerial_lost": 1,
            "total_contest": 0,
            "won_contest": 0,
            "ball_recovery": 0,
            "challenges_lost": 1,
            "fouls": 0,
            "fouls_drawn": 0,
            "blocks": 0,
            "goal_rate": 0.0,
            "goals": 0,
            "assists": 0,
            "expected_goals": 0.0173,
            "expected_assists": 0.0032,
            "total_shots": 0,
            "shots_on_target": 0,
            "shots_off_target": 0,
            "big_chances_created": 0,
            "xgot": 0.0,
            "ball_carries": 0,
            "total_progression": 1,
            "progressive_carries": 0,
            "key_pass": 0,
            "bench_appearance_probability": 0.318,
            "bench_expected_minutes": 13.99
          }
        },
        "Samuel Dahl": {
          "player_id": 993101,
          "position": "D",
          "position_depth": "D_BENCH",
          "is_starter": false,
          "shirt_number": 26,
          "height": 171,
          "market_value": 9400000,
          "stats": {
            "interceptions": 0,
            "tackles": 0,
            "tackles_won": 0,
            "clearances": 0,
            "aerial_won": 0,
            "rating": 6.5843,
            "minutes": 14,
            "total_pass": 7,
            "accurate_pass": 6,
            "duels_won": 1,
            "total_long_balls": 1,
            "accurate_long_balls": 0,
            "total_own_half_passes": 3,
            "accurate_own_half_passes": 3,
            "total_opp_half_passes": 4,
            "accurate_opp_half_passes": 3,
            "crosses_total": 0,
            "crosses_accurate": 0,
            "touches": 10,
            "possession_lost": 1.6362,
            "dispossessed": 1.3361,
            "duels_lost": 0,
            "aerial_lost": 2,
            "total_contest": 0,
            "won_contest": 0,
            "ball_recovery": 1,
            "challenges_lost": 1,
            "fouls": 0,
            "fouls_drawn": 0,
            "blocks": 0,
            "goal_rate": 0.1549,
            "goals": 0,
            "assists": 0,
            "expected_goals": 0.0062,
            "expected_assists": 0.0093,
            "total_shots": 0,
            "shots_on_target": 0,
            "shots_off_target": 0,
            "big_chances_created": 0,
            "xgot": 0.0992,
            "ball_carries": 2,
            "total_progression": 10,
            "progressive_carries": 0,
            "key_pass": 0,
            "bench_appearance_probability": 0.313,
            "bench_expected_minutes": 13.88
          }
        },
        "Sebastian Nanasi": {
          "player_id": 962068,
          "position": "M",
          "position_depth": "M_BENCH",
          "is_starter": false,
          "shirt_number": 11,
          "height": 178,
          "market_value": 15500000,
          "stats": {
            "key_pass": 0,
            "expected_assists": 0.0451,
            "assists": 0,
            "expected_goals": 0.04,
            "rating": 6.6686,
            "minutes": 23,
            "total_pass": 7,
            "accurate_pass": 6,
            "ball_recovery": 1,
            "duels_won": 1,
            "total_shots": 0,
            "total_long_balls": 0,
            "accurate_long_balls": 0,
            "total_own_half_passes": 3,
            "accurate_own_half_passes": 2,
            "total_opp_half_passes": 4,
            "accurate_opp_half_passes": 3,
            "crosses_total": 1,
            "crosses_accurate": 0,
            "touches": 10,
            "possession_lost": 2.2382,
            "dispossessed": 1.0254,
            "duels_lost": 1,
            "aerial_won": 0,
            "aerial_lost": 1,
            "interceptions": 1,
            "tackles_won": 0,
            "tackles": 1,
            "clearances": 1,
            "total_contest": 1,
            "won_contest": 1,
            "challenges_lost": 2,
            "fouls": 0,
            "fouls_drawn": 0,
            "goal_rate": 0.3855,
            "goals": 0,
            "shots_on_target": 0,
            "shots_off_target": 0,
            "blocks": 0,
            "big_chances_created": 0,
            "big_chances_missed": 0,
            "xgot": 0.1234,
            "ball_carries": 3,
            "total_progression": 10,
            "progressive_carries": 0,
            "bench_appearance_probability": 0.525,
            "bench_expected_minutes": 22.56
          }
        },
        "Williot Swedberg": {
          "player_id": 1126779,
          "position": "M",
          "position_depth": "M_BENCH",
          "is_starter": false,
          "shirt_number": 19,
          "height": 185,
          "market_value": 14000000,
          "stats": {
            "key_pass": 0,
            "expected_assists": 0.017,
            "assists": 0,
            "expected_goals": 0.0,
            "rating": 6.8957,
            "minutes": 22,
            "total_pass": 2,
            "accurate_pass": 2,
            "ball_recovery": 0,
            "duels_won": 1,
            "total_shots": 0,
            "total_long_balls": 0,
            "accurate_long_balls": 0,
            "total_own_half_passes": 1,
            "accurate_own_half_passes": 1,
            "total_opp_half_passes": 1,
            "accurate_opp_half_passes": 2,
            "crosses_total": 1,
            "crosses_accurate": 0,
            "touches": 4,
            "possession_lost": 1.2113,
            "dispossessed": 1.0205,
            "duels_lost": 1,
            "aerial_won": 0,
            "aerial_lost": 1,
            "interceptions": 0,
            "tackles_won": 0,
            "tackles": 0,
            "clearances": 0,
            "total_contest": 1,
            "won_contest": 0,
            "challenges_lost": 0,
            "fouls": 0,
            "fouls_drawn": 0,
            "goal_rate": 0.255,
            "goals": 0,
            "shots_on_target": 0,
            "shots_off_target": 0,
            "blocks": 0,
            "big_chances_created": 0,
            "big_chances_missed": 0,
            "xgot": 0.102,
            "ball_carries": 1,
            "total_progression": 4,
            "progressive_carries": 0,
            "bench_appearance_probability": 0.522,
            "bench_expected_minutes": 22.49
          }
        },
        "Alexander Isak": {
          "player_id": 823941,
          "position": "F",
          "position_depth": "F_BENCH",
          "is_starter": false,
          "shirt_number": 9,
          "height": 193,
          "market_value": 103000000,
          "stats": {
            "expected_goals": 0.001,
            "goal_rate": 0.0001,
            "goals": 0,
            "shots_on_target": 0,
            "expected_assists": 0.0015,
            "key_pass": 0,
            "rating": 7.1112,
            "minutes": 27,
            "total_shots": 0,
            "duels_won": 1,
            "aerial_won": 0,
            "total_pass": 2,
            "accurate_pass": 1,
            "total_long_balls": 1,
            "accurate_long_balls": 1,
            "total_opp_half_passes": 2,
            "accurate_opp_half_passes": 1,
            "crosses_total": 0,
            "crosses_accurate": 0,
            "touches": 4,
            "possession_lost": 1.347,
            "dispossessed": 1.3084,
            "duels_lost": 1,
            "aerial_lost": 3,
            "total_contest": 0,
            "won_contest": 0,
            "ball_recovery": 0,
            "challenges_lost": 1,
            "fouls": 0,
            "fouls_drawn": 0,
            "assists": 0,
            "shots_off_target": 0,
            "interceptions": 0,
            "tackles_won": 0,
            "tackles": 0,
            "clearances": 0,
            "blocks": 0,
            "big_chances_created": 0,
            "big_chances_missed": 0,
            "xgot": 0.1347,
            "offsides": 2,
            "ball_carries": 1,
            "total_progression": 3,
            "progressive_carries": 0,
            "bench_appearance_probability": 0.641,
            "bench_expected_minutes": 27.1
          }
        },
        "Benjamin Nygren": {
          "player_id": 918517,
          "position": "F",
          "position_depth": "F_BENCH",
          "is_starter": false,
          "shirt_number": 8,
          "height": 184,
          "market_value": 9700000,
          "stats": {
            "expected_goals": 0.0004,
            "goal_rate": 0.0834,
            "goals": 0,
            "shots_on_target": 0,
            "expected_assists": 0.0042,
            "key_pass": 0,
            "rating": 6.8997,
            "minutes": 26,
            "total_shots": 0,
            "duels_won": 0,
            "aerial_won": 0,
            "total_pass": 5,
            "accurate_pass": 4,
            "total_long_balls": 0,
            "accurate_long_balls": 0,
            "total_opp_half_passes": 3,
            "accurate_opp_half_passes": 3,
            "crosses_total": 0,
            "crosses_accurate": 0,
            "touches": 8,
            "possession_lost": 1.932,
            "dispossessed": 1.3376,
            "duels_lost": 1,
            "aerial_lost": 1,
            "total_contest": 0,
            "won_contest": 0,
            "ball_recovery": 1,
            "challenges_lost": 1,
            "fouls": 0,
            "fouls_drawn": 0,
            "assists": 0,
            "shots_off_target": 0,
            "interceptions": 0,
            "tackles_won": 0,
            "tackles": 0,
            "clearances": 1,
            "blocks": 0,
            "big_chances_created": 0,
            "big_chances_missed": 0,
            "xgot": 0.2805,
            "offsides": 0,
            "ball_carries": 1,
            "total_progression": 2,
            "progressive_carries": 0,
            "bench_appearance_probability": 0.573,
            "bench_expected_minutes": 25.61
          }
        }
      },
      "team_totals": {
        "projected_goals": 2,
        "expected_goals": 2.49,
        "expected_assists": 0.47,
        "total_shots": 16,
        "shots_on_target": 5,
        "total_passes": 315,
        "interceptions": 12,
        "tackles": 13,
        "avg_rating": 6.98,
        "possession_estimated_pct": 53.4,
        "pressing_actions_per_90": 8.1
      }
    },
    "Tunisia": {
      "formation": "3-5-2",
      "players": {
        "Aymen Dahmen": {
          "player_id": 1198374,
          "position": "G",
          "position_depth": "G",
          "is_starter": true,
          "shirt_number": 30,
          "height": 188,
          "market_value": 720000,
          "stats": {
            "saves": 3,
            "goals_prevented": 0.2944,
            "rating": 6.6724,
            "minutes": 90,
            "expected_saves": 2.62,
            "high_pressure_saves": 1.0,
            "shots_faced": 5.6,
            "opponent_faced": "Viktor Gyökeres, Roony Bardghji",
            "matchup_zone": "Goalkeeper shot-stopping context",
            "antagonist_source": "formation_fallback",
            "goals": 0,
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        },
        "Ali Abdi": {
          "player_id": 919027,
          "position": "D",
          "position_depth": "D",
          "is_starter": true,
          "shirt_number": 2,
          "height": 183,
          "market_value": 2300000,
          "stats": {
            "interceptions": 0,
            "tackles": 0,
            "tackles_won": 0,
            "clearances": 0,
            "aerial_won": 0,
            "rating": 6.3876,
            "minutes": 52,
            "total_pass": 9,
            "accurate_pass": 7,
            "duels_won": 2,
            "total_long_balls": 1,
            "accurate_long_balls": 0,
            "total_own_half_passes": 4,
            "accurate_own_half_passes": 4,
            "total_opp_half_passes": 6,
            "accurate_opp_half_passes": 5,
            "crosses_total": 3,
            "crosses_accurate": 1,
            "touches": 16,
            "possession_lost": 4.9061,
            "dispossessed": 0.0,
            "duels_lost": 3,
            "aerial_lost": 1,
            "total_contest": 2,
            "won_contest": 1,
            "ball_recovery": 2,
            "challenges_lost": 1,
            "fouls": 1,
            "fouls_drawn": 1,
            "blocks": 1,
            "goal_rate": 0.5712,
            "goals": 0,
            "assists": 0,
            "expected_goals": 0.109,
            "expected_assists": 0.0196,
            "total_shots": 1,
            "shots_on_target": 1,
            "shots_off_target": 0,
            "big_chances_created": 1,
            "xgot": 0.3238,
            "ball_carries": 3,
            "total_progression": 13,
            "progressive_carries": 0,
            "key_pass": 1,
            "tackles_in_zone": 1.9,
            "tackles_won_in_zone": 1.4,
            "interceptions_in_zone": 0.7,
            "clearances_in_zone": 0.5,
            "aerial_duels_won": 1.0,
            "defensive_success_rate": 0.416,
            "opponent_faced": "Anthony Elanga",
            "pressing_zone": "Shadow Striker vs Centre Back — Half-Space Threat",
            "matchup_zone": "Shadow Striker vs Centre Back — Half-Space Threat",
            "antagonist_source": "defensive_duel",
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        },
        "Alaa Ghram": {
          "player_id": 1011994,
          "position": "D",
          "position_depth": "D",
          "is_starter": true,
          "shirt_number": 18,
          "height": 190,
          "market_value": 1300000,
          "stats": {
            "interceptions": 0,
            "tackles": 0,
            "tackles_won": 0,
            "clearances": 1,
            "aerial_won": 0,
            "rating": 6.5902,
            "minutes": 70,
            "total_pass": 44,
            "accurate_pass": 39,
            "duels_won": 4,
            "total_long_balls": 3,
            "accurate_long_balls": 1,
            "total_own_half_passes": 22,
            "accurate_own_half_passes": 21,
            "total_opp_half_passes": 22,
            "accurate_opp_half_passes": 19,
            "crosses_total": 1,
            "crosses_accurate": 0,
            "touches": 57,
            "possession_lost": 5.6421,
            "dispossessed": 0.0,
            "duels_lost": 5,
            "aerial_lost": 0,
            "total_contest": 1,
            "won_contest": 1,
            "ball_recovery": 5,
            "challenges_lost": 1,
            "fouls": 1,
            "fouls_drawn": 0,
            "blocks": 0,
            "goal_rate": 0.2453,
            "goals": 0,
            "assists": 0,
            "expected_goals": 0.0392,
            "expected_assists": 0.0,
            "total_shots": 0,
            "shots_on_target": 0,
            "shots_off_target": 1,
            "big_chances_created": 0,
            "xgot": 0.0,
            "ball_carries": 0,
            "total_progression": 0,
            "progressive_carries": 0,
            "key_pass": 0,
            "tackles_in_zone": 1.0,
            "tackles_won_in_zone": 0.9,
            "interceptions_in_zone": 0.7,
            "clearances_in_zone": 0.6,
            "aerial_duels_won": 0.6,
            "defensive_success_rate": 0.603,
            "opponent_faced": "Viktor Gyökeres",
            "pressing_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
            "matchup_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
            "antagonist_source": "defensive_duel",
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        },
        "Yan Valery": {
          "player_id": 826202,
          "position": "D",
          "position_depth": "D",
          "is_starter": true,
          "shirt_number": 22,
          "height": 186,
          "market_value": 1300000,
          "stats": {
            "interceptions": 0,
            "tackles": 1,
            "tackles_won": 0,
            "clearances": 2,
            "aerial_won": 0,
            "rating": 6.5713,
            "minutes": 69,
            "total_pass": 33,
            "accurate_pass": 26,
            "duels_won": 3,
            "total_long_balls": 4,
            "accurate_long_balls": 2,
            "total_own_half_passes": 14,
            "accurate_own_half_passes": 12,
            "total_opp_half_passes": 19,
            "accurate_opp_half_passes": 15,
            "crosses_total": 4,
            "crosses_accurate": 2,
            "touches": 53,
            "possession_lost": 13.1779,
            "dispossessed": 1.1775,
            "duels_lost": 4,
            "aerial_lost": 1,
            "total_contest": 2,
            "won_contest": 2,
            "ball_recovery": 5,
            "challenges_lost": 1,
            "fouls": 3,
            "fouls_drawn": 1,
            "blocks": 1,
            "goal_rate": 0.0,
            "goals": 0,
            "assists": 0,
            "expected_goals": 0.1177,
            "expected_assists": 0.157,
            "total_shots": 0,
            "shots_on_target": 1,
            "shots_off_target": 0,
            "big_chances_created": 2,
            "xgot": 0.0785,
            "ball_carries": 16,
            "total_progression": 80,
            "progressive_carries": 2,
            "key_pass": 2,
            "opponent_faced": "Viktor Gyökeres",
            "matchup_zone": "Shape fallback",
            "antagonist_source": "formation_fallback",
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        },
        "Sebastian Tounekti": {
          "player_id": 957143,
          "position": "M",
          "position_depth": "M",
          "is_starter": true,
          "shirt_number": 23,
          "height": 170,
          "market_value": 6500000,
          "stats": {
            "key_pass": 1,
            "expected_assists": 0.1139,
            "assists": 0,
            "expected_goals": 0.0293,
            "rating": 6.5031,
            "minutes": 77,
            "total_pass": 30,
            "accurate_pass": 25,
            "ball_recovery": 2,
            "duels_won": 4,
            "total_shots": 1,
            "total_long_balls": 3,
            "accurate_long_balls": 2,
            "total_own_half_passes": 7,
            "accurate_own_half_passes": 5,
            "total_opp_half_passes": 23,
            "accurate_opp_half_passes": 20,
            "crosses_total": 3,
            "crosses_accurate": 1,
            "touches": 44,
            "possession_lost": 10.9358,
            "dispossessed": 1.193,
            "duels_lost": 4,
            "aerial_won": 1,
            "aerial_lost": 2,
            "interceptions": 1,
            "tackles_won": 1,
            "tackles": 2,
            "clearances": 2,
            "total_contest": 2,
            "won_contest": 1,
            "challenges_lost": 1,
            "fouls": 1,
            "fouls_drawn": 1,
            "goal_rate": 0.0338,
            "goals": 0,
            "shots_on_target": 1,
            "shots_off_target": 1,
            "blocks": 0,
            "big_chances_created": 1,
            "big_chances_missed": 0,
            "xgot": 0.0099,
            "ball_carries": 17,
            "total_progression": 138,
            "progressive_carries": 6,
            "dribbles_attempted": 2,
            "dribbles_successful": 0.4,
            "crosses_attempted": 0.0,
            "duel_win_rate": 0.241,
            "pressing_faced": "HIGH",
            "matchup_zone": "Central Mid vs Central Mid — Box-to-Box Midfield Contest",
            "numerical_situation": "1v1",
            "opponent_defenders": "Hugo Larsson",
            "opponent_faced": "Hugo Larsson",
            "antagonist_source": "attacking_duel, midfield_pairing",
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        },
        "Ellyes Skhiri": {
          "player_id": 591706,
          "position": "M",
          "position_depth": "M",
          "is_starter": true,
          "shirt_number": 15,
          "height": 185,
          "market_value": 6200000,
          "stats": {
            "key_pass": 0,
            "expected_assists": 0.0649,
            "assists": 0,
            "expected_goals": 0.0144,
            "rating": 6.6928,
            "minutes": 63,
            "total_pass": 25,
            "accurate_pass": 22,
            "ball_recovery": 2,
            "duels_won": 3,
            "total_shots": 0,
            "total_long_balls": 3,
            "accurate_long_balls": 1,
            "total_own_half_passes": 12,
            "accurate_own_half_passes": 11,
            "total_opp_half_passes": 11,
            "accurate_opp_half_passes": 9,
            "crosses_total": 2,
            "crosses_accurate": 1,
            "touches": 32,
            "possession_lost": 5.0547,
            "dispossessed": 0.9931,
            "duels_lost": 3,
            "aerial_won": 3,
            "aerial_lost": 2,
            "interceptions": 2,
            "tackles_won": 2,
            "tackles": 2,
            "clearances": 2,
            "total_contest": 1,
            "won_contest": 1,
            "challenges_lost": 1,
            "fouls": 1,
            "fouls_drawn": 1,
            "goal_rate": 0.0167,
            "goals": 0,
            "shots_on_target": 1,
            "shots_off_target": 1,
            "blocks": 1,
            "big_chances_created": 1,
            "big_chances_missed": 0,
            "xgot": 0.0099,
            "ball_carries": 8,
            "total_progression": 15,
            "progressive_carries": 0,
            "opponent_faced": "Hugo Larsson, Lucas Bergvall",
            "matchup_zone": "Central Mid vs Defensive Mid — Pressing/Creation Duel",
            "antagonist_source": "defensive_duel, midfield_pairing",
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        },
        "Ismael Gharbi": {
          "player_id": 1113488,
          "position": "M",
          "position_depth": "M",
          "is_starter": true,
          "shirt_number": 11,
          "height": 173,
          "market_value": 4800000,
          "stats": {
            "key_pass": 1,
            "expected_assists": 0.0988,
            "assists": 0,
            "expected_goals": 0.0662,
            "rating": 6.7178,
            "minutes": 90,
            "total_pass": 45,
            "accurate_pass": 36,
            "ball_recovery": 3,
            "duels_won": 4,
            "total_shots": 1,
            "goal_rate": 0.1,
            "goals": 0,
            "dribbles_attempted": 2,
            "dribbles_successful": 0.5,
            "aerial_won": 1,
            "fouls_drawn": 1,
            "crosses_attempted": 2.2,
            "duel_win_rate": 0.303,
            "pressing_faced": "MEDIUM",
            "matchup_zone": "LWB vs RWB",
            "numerical_situation": "1v1",
            "opponent_defenders": "Daniel Svensson",
            "opponent_faced": "Daniel Svensson",
            "antagonist_source": "defensive_duel, attacking_duel, midfield_pairing",
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        },
        "Anis Ben Slimane": {
          "player_id": 1006147,
          "position": "M",
          "position_depth": "M",
          "is_starter": true,
          "shirt_number": 20,
          "height": 188,
          "market_value": 3100000,
          "stats": {
            "key_pass": 1,
            "expected_assists": 0.0982,
            "assists": 0,
            "expected_goals": 0.057,
            "rating": 6.6749,
            "minutes": 90,
            "total_pass": 45,
            "accurate_pass": 36,
            "ball_recovery": 3,
            "duels_won": 4,
            "total_shots": 1,
            "goal_rate": 0.0769,
            "goals": 0,
            "dribbles_attempted": 2,
            "dribbles_successful": 0.6,
            "aerial_won": 1,
            "fouls_drawn": 1,
            "crosses_attempted": 2.2,
            "duel_win_rate": 0.365,
            "pressing_faced": "MEDIUM",
            "matchup_zone": "RWB vs LWB",
            "numerical_situation": "1v1",
            "opponent_defenders": "Yasin Ayari",
            "opponent_faced": "Yasin Ayari",
            "antagonist_source": "defensive_duel, attacking_duel, midfield_pairing",
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        },
        "Mohamed Belhadj Mahmoud": {
          "player_id": 1008597,
          "position": "M",
          "position_depth": "M",
          "is_starter": true,
          "shirt_number": 29,
          "height": 179,
          "market_value": 2600000,
          "stats": {
            "key_pass": 0,
            "expected_assists": 0.0321,
            "assists": 0,
            "expected_goals": 0.0461,
            "rating": 6.4755,
            "minutes": 53,
            "total_pass": 17,
            "accurate_pass": 15,
            "ball_recovery": 3,
            "duels_won": 4,
            "total_shots": 1,
            "total_long_balls": 2,
            "accurate_long_balls": 1,
            "total_own_half_passes": 7,
            "accurate_own_half_passes": 8,
            "total_opp_half_passes": 10,
            "accurate_opp_half_passes": 8,
            "crosses_total": 1,
            "crosses_accurate": 1,
            "touches": 24,
            "possession_lost": 5.23,
            "dispossessed": 1.305,
            "duels_lost": 3,
            "aerial_won": 1,
            "aerial_lost": 1,
            "interceptions": 1,
            "tackles_won": 1,
            "tackles": 2,
            "clearances": 1,
            "total_contest": 2,
            "won_contest": 1,
            "challenges_lost": 1,
            "fouls": 2,
            "fouls_drawn": 2,
            "goal_rate": 0.9812,
            "goals": 0,
            "shots_on_target": 2,
            "shots_off_target": 1,
            "blocks": 1,
            "big_chances_created": 0,
            "big_chances_missed": 1,
            "xgot": 0.8144,
            "ball_carries": 8,
            "total_progression": 41,
            "progressive_carries": 2,
            "dribbles_attempted": 2,
            "dribbles_successful": 0.4,
            "crosses_attempted": 0.0,
            "duel_win_rate": 0.247,
            "pressing_faced": "HIGH",
            "matchup_zone": "Central Mid vs Central Mid — Box-to-Box Midfield Contest",
            "numerical_situation": "1v1",
            "opponent_defenders": "Hugo Larsson",
            "opponent_faced": "Hugo Larsson",
            "antagonist_source": "attacking_duel, midfield_pairing",
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        },
        "Louey Ben Farhat": {
          "player_id": 1606561,
          "position": "F",
          "position_depth": "F",
          "is_starter": true,
          "shirt_number": 19,
          "height": 175,
          "market_value": 8100000,
          "stats": {
            "expected_goals": 0.0967,
            "goal_rate": 0.0,
            "goals": 0,
            "shots_on_target": 1,
            "total_shots": 2,
            "rating": 6.7998,
            "minutes": 90,
            "expected_assists": 0.05,
            "duels_won": 3,
            "aerial_won": 1,
            "key_pass": 0,
            "dribbles_attempted": 2,
            "dribbles_successful": 0.3,
            "fouls_drawn": 2,
            "crosses_attempted": 0.0,
            "duel_win_rate": 0.18,
            "pressing_faced": "MEDIUM",
            "matchup_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
            "numerical_situation": "1v2",
            "opponent_defenders": "Gabriel Gudmundsson, Isak Hien",
            "opponent_faced": "Gabriel Gudmundsson, Isak Hien",
            "antagonist_source": "attacking_duel",
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        },
        "Elias Saad": {
          "player_id": 1130946,
          "position": "F",
          "position_depth": "F",
          "is_starter": true,
          "shirt_number": 24,
          "height": 185,
          "market_value": 2700000,
          "stats": {
            "expected_goals": 0.1081,
            "goal_rate": 0.0964,
            "goals": 0,
            "shots_on_target": 1,
            "total_shots": 2,
            "rating": 6.6724,
            "minutes": 90,
            "expected_assists": 0.0491,
            "duels_won": 3,
            "aerial_won": 2,
            "key_pass": 0,
            "dribbles_attempted": 2,
            "dribbles_successful": 0.3,
            "fouls_drawn": 1,
            "crosses_attempted": 0.0,
            "duel_win_rate": 0.18,
            "pressing_faced": "MEDIUM",
            "matchup_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
            "numerical_situation": "1v2",
            "opponent_defenders": "Gabriel Gudmundsson, Isak Hien",
            "opponent_faced": "Gabriel Gudmundsson, Isak Hien",
            "antagonist_source": "attacking_duel",
            "projected_goals": 0,
            "goal_probability": 0.0
          }
        }
      },
      "bench_players": {
        "Noureddine Farhati": {
          "player_id": 1013956,
          "position": "G",
          "position_depth": "G_BENCH",
          "is_starter": false,
          "shirt_number": 22,
          "height": 188,
          "market_value": 630000,
          "stats": {
            "saves": 0,
            "goals_prevented": 0.0144,
            "rating": 6.6724,
            "minutes": 4,
            "bench_appearance_probability": 0.109,
            "bench_expected_minutes": 4.39
          }
        },
        "Adem Arous": {
          "player_id": 2018238,
          "position": "D",
          "position_depth": "D_BENCH",
          "is_starter": false,
          "shirt_number": 4,
          "height": 188,
          "market_value": 970000,
          "stats": {
            "interceptions": 0,
            "tackles": 0,
            "tackles_won": 0,
            "clearances": 1,
            "aerial_won": 0,
            "rating": 6.555,
            "minutes": 14,
            "total_pass": 5,
            "accurate_pass": 4,
            "duels_won": 1,
            "total_long_balls": 1,
            "accurate_long_balls": 0,
            "total_own_half_passes": 4,
            "accurate_own_half_passes": 3,
            "total_opp_half_passes": 2,
            "accurate_opp_half_passes": 1,
            "crosses_total": 0,
            "crosses_accurate": 0,
            "touches": 7,
            "possession_lost": 1.2163,
            "dispossessed": 0.9812,
            "duels_lost": 0,
            "aerial_lost": 2,
            "total_contest": 0,
            "won_contest": 0,
            "ball_recovery": 0,
            "challenges_lost": 1,
            "fouls": 0,
            "fouls_drawn": 0,
            "blocks": 0,
            "goal_rate": 0.0,
            "goals": 0,
            "assists": 0,
            "expected_goals": 0.003,
            "expected_assists": 0.0,
            "total_shots": 0,
            "shots_on_target": 0,
            "shots_off_target": 0,
            "big_chances_created": 0,
            "xgot": 0.0,
            "ball_carries": 2,
            "total_progression": 5,
            "progressive_carries": 0,
            "key_pass": 0,
            "bench_appearance_probability": 0.299,
            "bench_expected_minutes": 13.57
          }
        },
        "Moutaz Neffati": {
          "player_id": 1391526,
          "position": "D",
          "position_depth": "D_BENCH",
          "is_starter": false,
          "shirt_number": 37,
          "height": 182,
          "market_value": 850000,
          "stats": {
            "interceptions": 0,
            "tackles": 0,
            "tackles_won": 0,
            "clearances": 0,
            "aerial_won": 0,
            "duels_won": 1,
            "rating": 6.5742,
            "minutes": 14,
            "total_pass": 6,
            "accurate_pass": 5,
            "bench_appearance_probability": 0.299,
            "bench_expected_minutes": 13.57
          }
        },
        "Rani Khedira": {
          "player_id": 149479,
          "position": "M",
          "position_depth": "M_BENCH",
          "is_starter": false,
          "shirt_number": 8,
          "height": 188,
          "market_value": 2100000,
          "stats": {
            "key_pass": 0,
            "expected_assists": 0.0085,
            "assists": 0,
            "expected_goals": 0.0,
            "rating": 6.364,
            "minutes": 22,
            "total_pass": 5,
            "accurate_pass": 4,
            "ball_recovery": 1,
            "duels_won": 1,
            "total_shots": 0,
            "total_long_balls": 1,
            "accurate_long_balls": 1,
            "total_own_half_passes": 3,
            "accurate_own_half_passes": 2,
            "total_opp_half_passes": 3,
            "accurate_opp_half_passes": 2,
            "crosses_total": 0,
            "crosses_accurate": 0,
            "touches": 7,
            "possession_lost": 2.0075,
            "dispossessed": 0.9812,
            "duels_lost": 1,
            "aerial_won": 0,
            "aerial_lost": 2,
            "interceptions": 0,
            "tackles_won": 0,
            "tackles": 0,
            "clearances": 1,
            "total_contest": 0,
            "won_contest": 0,
            "challenges_lost": 1,
            "fouls": 1,
            "fouls_drawn": 0,
            "goal_rate": 0.0,
            "goals": 0,
            "shots_on_target": 0,
            "shots_off_target": 0,
            "blocks": 0,
            "big_chances_created": 0,
            "big_chances_missed": 0,
            "xgot": 0.0048,
            "ball_carries": 1,
            "total_progression": 1,
            "progressive_carries": 0,
            "bench_appearance_probability": 0.499,
            "bench_expected_minutes": 21.97
          }
        },
        "Mortadha Ben Ouanes": {
          "player_id": 919225,
          "position": "M",
          "position_depth": "M_BENCH",
          "is_starter": false,
          "shirt_number": 12,
          "height": 182,
          "market_value": 1400000,
          "stats": {
            "key_pass": 0,
            "expected_assists": 0.0215,
            "assists": 0,
            "expected_goals": 0.0,
            "rating": 6.5681,
            "minutes": 22,
            "total_pass": 5,
            "accurate_pass": 4,
            "ball_recovery": 1,
            "duels_won": 1,
            "total_shots": 0,
            "total_long_balls": 0,
            "accurate_long_balls": 0,
            "total_own_half_passes": 2,
            "accurate_own_half_passes": 2,
            "total_opp_half_passes": 3,
            "accurate_opp_half_passes": 2,
            "crosses_total": 0,
            "crosses_accurate": 0,
            "touches": 9,
            "possession_lost": 2.6087,
            "dispossessed": 1.4718,
            "duels_lost": 1,
            "aerial_won": 0,
            "aerial_lost": 2,
            "interceptions": 1,
            "tackles_won": 0,
            "tackles": 0,
            "clearances": 1,
            "total_contest": 0,
            "won_contest": 0,
            "challenges_lost": 2,
            "fouls": 1,
            "fouls_drawn": 1,
            "goal_rate": 0.2395,
            "goals": 0,
            "shots_on_target": 0,
            "shots_off_target": 0,
            "blocks": 0,
            "big_chances_created": 0,
            "big_chances_missed": 0,
            "xgot": 0.0527,
            "ball_carries": 2,
            "total_progression": 7,
            "progressive_carries": 0,
            "bench_appearance_probability": 0.499,
            "bench_expected_minutes": 21.97
          }
        },
        "Sayfallah Ltaief": {
          "player_id": 1032926,
          "position": "F",
          "position_depth": "F_BENCH",
          "is_starter": false,
          "shirt_number": 47,
          "height": 180,
          "market_value": 1300000,
          "stats": {
            "expected_goals": 0.0414,
            "goal_rate": 0.0,
            "goals": 0,
            "shots_on_target": 0,
            "total_shots": 1,
            "rating": 6.6724,
            "minutes": 25,
            "expected_assists": 0.0138,
            "duels_won": 1,
            "aerial_won": 0,
            "key_pass": 0,
            "bench_appearance_probability": 0.559,
            "bench_expected_minutes": 25.29
          }
        },
        "Khalil Ayari": {
          "player_id": 1606568,
          "position": "F",
          "position_depth": "F_BENCH",
          "is_starter": false,
          "shirt_number": 7,
          "height": 174,
          "market_value": 775000,
          "stats": {
            "expected_goals": 0.0414,
            "goal_rate": 0.0,
            "goals": 0,
            "shots_on_target": 0,
            "total_shots": 1,
            "rating": 6.6724,
            "minutes": 25,
            "expected_assists": 0.0138,
            "duels_won": 1,
            "aerial_won": 0,
            "key_pass": 0,
            "bench_appearance_probability": 0.559,
            "bench_expected_minutes": 25.29
          }
        }
      },
      "team_totals": {
        "projected_goals": 0,
        "expected_goals": 0.49,
        "expected_assists": 0.74,
        "total_shots": 11,
        "shots_on_target": 8,
        "total_passes": 269,
        "interceptions": 5,
        "tackles": 7,
        "avg_rating": 6.61,
        "possession_estimated_pct": 46.6,
        "pressing_actions_per_90": 6.2
      }
    }
  },
  "antagonist_report": {
    "home_attacking_duels": [
      {
        "attacker": "Yasin Ayari",
        "attacker_role": "LWB",
        "attacker_market_value": 27000000,
        "attacker_height": 172,
        "attacker_skill_quality": 0.694,
        "defenders": [
          "Anis Ben Slimane"
        ],
        "defender_roles": [
          "RWB"
        ],
        "def_skill_quality_avg": 0.439,
        "duel_zone": "LWB vs RWB",
        "numerical_situation": "1v1",
        "duel_win_rate": 0.475,
        "xg_contribution": 0.0498,
        "shots_in_zone": 1.1,
        "dribbles_attempted": 2,
        "dribbles_successful": 0.8,
        "aerial_duels": 2,
        "aerial_won": 0.8,
        "crosses_in_zone": 2.7,
        "fouls_drawn": 1.3,
        "pressing_intensity_on_attacker": "LOW",
        "defender_stats": [
          {
            "player": "Anis Ben Slimane",
            "role": "RWB",
            "market_value": 3100000,
            "tackles_attempted": 1.9,
            "tackles_won": 1.6,
            "fouls_committed": 0.6,
            "interceptions_in_zone": 0.7,
            "clearances_in_zone": 0.5,
            "aerial_duels_won": 1.1,
            "defensive_success_rate": 0.525
          }
        ],
        "duel_analysis": "Yasin Ayari (LWB) is evenly matched against Anis Ben Slimane in a direct 1v1 contest. Duel win probability: 47%. The quality gap is significant (€27M vs €3M avg). Projected xG contribution: 0.050 — with neither side clearly dominant."
      },
      {
        "attacker": "Hugo Larsson",
        "attacker_role": "CM",
        "attacker_market_value": 34000000,
        "attacker_height": 187,
        "attacker_skill_quality": 0.746,
        "defenders": [
          "Ellyes Skhiri"
        ],
        "defender_roles": [
          "CDM"
        ],
        "def_skill_quality_avg": 0.477,
        "duel_zone": "Central Mid vs Defensive Mid — Pressing/Creation Duel",
        "numerical_situation": "1v1",
        "duel_win_rate": 0.579,
        "xg_contribution": 0.1802,
        "shots_in_zone": 1.9,
        "dribbles_attempted": 3,
        "dribbles_successful": 1.5,
        "aerial_duels": 2,
        "aerial_won": 1.2,
        "crosses_in_zone": 0.0,
        "fouls_drawn": 1.1,
        "pressing_intensity_on_attacker": "LOW",
        "defender_stats": [
          {
            "player": "Ellyes Skhiri",
            "role": "CDM",
            "market_value": 6200000,
            "tackles_attempted": 2.0,
            "tackles_won": 1.4,
            "fouls_committed": 0.6,
            "interceptions_in_zone": 0.8,
            "clearances_in_zone": 0.5,
            "aerial_duels_won": 0.8,
            "defensive_success_rate": 0.421
          }
        ],
        "duel_analysis": "Hugo Larsson (CM) is slightly favored against Ellyes Skhiri in a direct 1v1 contest. Duel win probability: 58%. The quality gap is significant (€34M vs €6M avg). Projected xG contribution: 0.180 — creating consistent moderate threat."
      },
      {
        "attacker": "Lucas Bergvall",
        "attacker_role": "CM",
        "attacker_market_value": 41000000,
        "attacker_height": 186,
        "attacker_skill_quality": 0.786,
        "defenders": [
          "Ellyes Skhiri"
        ],
        "defender_roles": [
          "CDM"
        ],
        "def_skill_quality_avg": 0.477,
        "duel_zone": "Central Mid vs Defensive Mid — Pressing/Creation Duel",
        "numerical_situation": "1v1",
        "duel_win_rate": 0.593,
        "xg_contribution": 0.1903,
        "shots_in_zone": 2.0,
        "dribbles_attempted": 3,
        "dribbles_successful": 1.6,
        "aerial_duels": 2,
        "aerial_won": 1.2,
        "crosses_in_zone": 0.0,
        "fouls_drawn": 1.1,
        "pressing_intensity_on_attacker": "LOW",
        "defender_stats": [
          {
            "player": "Ellyes Skhiri",
            "role": "CDM",
            "market_value": 6200000,
            "tackles_attempted": 2.0,
            "tackles_won": 1.4,
            "fouls_committed": 0.6,
            "interceptions_in_zone": 0.8,
            "clearances_in_zone": 0.5,
            "aerial_duels_won": 0.8,
            "defensive_success_rate": 0.407
          }
        ],
        "duel_analysis": "Lucas Bergvall (CM) is slightly favored against Ellyes Skhiri in a direct 1v1 contest. Duel win probability: 59%. The quality gap is significant (€41M vs €6M avg). Projected xG contribution: 0.190 — creating consistent moderate threat."
      },
      {
        "attacker": "Daniel Svensson",
        "attacker_role": "RWB",
        "attacker_market_value": 20000000,
        "attacker_height": 183,
        "attacker_skill_quality": 0.631,
        "defenders": [
          "Ismael Gharbi"
        ],
        "defender_roles": [
          "LWB"
        ],
        "def_skill_quality_avg": 0.46,
        "duel_zone": "RWB vs LWB",
        "numerical_situation": "1v1",
        "duel_win_rate": 0.537,
        "xg_contribution": 0.1089,
        "shots_in_zone": 1.1,
        "dribbles_attempted": 2,
        "dribbles_successful": 0.9,
        "aerial_duels": 2,
        "aerial_won": 1.1,
        "crosses_in_zone": 2.6,
        "fouls_drawn": 1.1,
        "pressing_intensity_on_attacker": "LOW",
        "defender_stats": [
          {
            "player": "Ismael Gharbi",
            "role": "LWB",
            "market_value": 4800000,
            "tackles_attempted": 1.9,
            "tackles_won": 1.5,
            "fouls_committed": 0.6,
            "interceptions_in_zone": 0.7,
            "clearances_in_zone": 0.5,
            "aerial_duels_won": 0.9,
            "defensive_success_rate": 0.463
          }
        ],
        "duel_analysis": "Daniel Svensson (RWB) is slightly favored against Ismael Gharbi in a direct 1v1 contest. Duel win probability: 54%. The quality gap is significant (€20M vs €5M avg). Projected xG contribution: 0.109 — creating consistent moderate threat."
      },
      {
        "attacker": "Anthony Elanga",
        "attacker_role": "SS",
        "attacker_market_value": 38000000,
        "attacker_height": 178,
        "attacker_skill_quality": 0.77,
        "defenders": [
          "Ali Abdi"
        ],
        "defender_roles": [
          "CB"
        ],
        "def_skill_quality_avg": 0.429,
        "duel_zone": "Shadow Striker vs Centre Back — Half-Space Threat",
        "numerical_situation": "1v1",
        "duel_win_rate": 0.584,
        "xg_contribution": 0.1088,
        "shots_in_zone": 2.9,
        "dribbles_attempted": 3,
        "dribbles_successful": 1.5,
        "aerial_duels": 2,
        "aerial_won": 1.0,
        "crosses_in_zone": 0.0,
        "fouls_drawn": 1.1,
        "pressing_intensity_on_attacker": "LOW",
        "defender_stats": [
          {
            "player": "Ali Abdi",
            "role": "CB",
            "market_value": 2300000,
            "tackles_attempted": 1.9,
            "tackles_won": 1.4,
            "fouls_committed": 0.6,
            "interceptions_in_zone": 0.7,
            "clearances_in_zone": 0.5,
            "aerial_duels_won": 1.0,
            "defensive_success_rate": 0.416
          }
        ],
        "duel_analysis": "Anthony Elanga (SS) is slightly favored against Ali Abdi in a direct 1v1 contest. Duel win probability: 58%. The quality gap is significant (€38M vs €2M avg). Projected xG contribution: 0.109 — creating consistent moderate threat."
      },
      {
        "attacker": "Roony Bardghji",
        "attacker_role": "SS",
        "attacker_market_value": 15500000,
        "attacker_height": 173,
        "attacker_skill_quality": 0.585,
        "defenders": [
          "Ali Abdi"
        ],
        "defender_roles": [
          "CB"
        ],
        "def_skill_quality_avg": 0.429,
        "duel_zone": "Shadow Striker vs Centre Back — Half-Space Threat",
        "numerical_situation": "1v1",
        "duel_win_rate": 0.48,
        "xg_contribution": 0.2689,
        "shots_in_zone": 2.6,
        "dribbles_attempted": 3,
        "dribbles_successful": 1.3,
        "aerial_duels": 2,
        "aerial_won": 0.9,
        "crosses_in_zone": 0.0,
        "fouls_drawn": 1.2,
        "pressing_intensity_on_attacker": "LOW",
        "defender_stats": [
          {
            "player": "Ali Abdi",
            "role": "CB",
            "market_value": 2300000,
            "tackles_attempted": 1.9,
            "tackles_won": 1.6,
            "fouls_committed": 0.6,
            "interceptions_in_zone": 0.7,
            "clearances_in_zone": 0.5,
            "aerial_duels_won": 1.1,
            "defensive_success_rate": 0.52
          }
        ],
        "duel_analysis": "Roony Bardghji (SS) is evenly matched against Ali Abdi in a direct 1v1 contest. Duel win probability: 48%.  Projected xG contribution: 0.269 — with neither side clearly dominant."
      },
      {
        "attacker": "Viktor Gyökeres",
        "attacker_role": "ST",
        "attacker_market_value": 61000000,
        "attacker_height": 187,
        "attacker_skill_quality": 0.855,
        "defenders": [
          "Ali Abdi",
          "Alaa Ghram"
        ],
        "defender_roles": [
          "CB",
          "CB"
        ],
        "def_skill_quality_avg": 0.422,
        "duel_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
        "numerical_situation": "1v2",
        "duel_win_rate": 0.397,
        "xg_contribution": 0.3423,
        "shots_in_zone": 2.9,
        "dribbles_attempted": 2,
        "dribbles_successful": 0.7,
        "aerial_duels": 3,
        "aerial_won": 1.8,
        "crosses_in_zone": 0.0,
        "fouls_drawn": 1.5,
        "pressing_intensity_on_attacker": "LOW",
        "defender_stats": [
          {
            "player": "Ali Abdi",
            "role": "CB",
            "market_value": 2300000,
            "tackles_attempted": 1.0,
            "tackles_won": 0.9,
            "fouls_committed": 0.6,
            "interceptions_in_zone": 0.7,
            "clearances_in_zone": 0.6,
            "aerial_duels_won": 0.6,
            "defensive_success_rate": 0.603
          },
          {
            "player": "Alaa Ghram",
            "role": "CB",
            "market_value": 1300000,
            "tackles_attempted": 1.0,
            "tackles_won": 0.9,
            "fouls_committed": 0.6,
            "interceptions_in_zone": 0.7,
            "clearances_in_zone": 0.6,
            "aerial_duels_won": 0.6,
            "defensive_success_rate": 0.603
          }
        ],
        "duel_analysis": "Viktor Gyökeres (ST) faces tough defensive resistance against Ali Abdi and Alaa Ghram in a 2-defender block. Duel win probability: 40%. The quality gap is significant (€61M vs €2M avg). Projected xG contribution: 0.342 — and is restricted in space and time on the ball."
      }
    ],
    "away_attacking_duels": [
      {
        "attacker": "Ismael Gharbi",
        "attacker_role": "LWB",
        "attacker_market_value": 4800000,
        "attacker_height": 173,
        "attacker_skill_quality": 0.46,
        "defenders": [
          "Daniel Svensson"
        ],
        "defender_roles": [
          "RWB"
        ],
        "def_skill_quality_avg": 0.631,
        "duel_zone": "LWB vs RWB",
        "numerical_situation": "1v1",
        "duel_win_rate": 0.303,
        "xg_contribution": 0.0546,
        "shots_in_zone": 0.8,
        "dribbles_attempted": 2,
        "dribbles_successful": 0.5,
        "aerial_duels": 2,
        "aerial_won": 0.9,
        "crosses_in_zone": 2.2,
        "fouls_drawn": 1.3,
        "pressing_intensity_on_attacker": "MEDIUM",
        "defender_stats": [
          {
            "player": "Daniel Svensson",
            "role": "RWB",
            "market_value": 20000000,
            "tackles_attempted": 2.1,
            "tackles_won": 2.1,
            "fouls_committed": 0.5,
            "interceptions_in_zone": 1.0,
            "clearances_in_zone": 0.5,
            "aerial_duels_won": 1.1,
            "defensive_success_rate": 0.697
          }
        ],
        "duel_analysis": "Ismael Gharbi (LWB) is heavily outmatched defensively against Daniel Svensson in a direct 1v1 contest. Duel win probability: 30%. The quality gap is significant (€5M vs €20M avg). Projected xG contribution: 0.055 — with very limited chance creation expected."
      },
      {
        "attacker": "Mohamed Belhadj Mahmoud",
        "attacker_role": "CM",
        "attacker_market_value": 2600000,
        "attacker_height": 179,
        "attacker_skill_quality": 0.432,
        "defenders": [
          "Hugo Larsson"
        ],
        "defender_roles": [
          "CM"
        ],
        "def_skill_quality_avg": 0.746,
        "duel_zone": "Central Mid vs Central Mid — Box-to-Box Midfield Contest",
        "numerical_situation": "1v1",
        "duel_win_rate": 0.247,
        "xg_contribution": 0.0343,
        "shots_in_zone": 1.2,
        "dribbles_attempted": 2,
        "dribbles_successful": 0.4,
        "aerial_duels": 2,
        "aerial_won": 1.0,
        "crosses_in_zone": 0.0,
        "fouls_drawn": 1.4,
        "pressing_intensity_on_attacker": "HIGH",
        "defender_stats": [
          {
            "player": "Hugo Larsson",
            "role": "CM",
            "market_value": 34000000,
            "tackles_attempted": 2.2,
            "tackles_won": 2.3,
            "fouls_committed": 0.4,
            "interceptions_in_zone": 1.2,
            "clearances_in_zone": 0.5,
            "aerial_duels_won": 1.0,
            "defensive_success_rate": 0.753
          }
        ],
        "duel_analysis": "Mohamed Belhadj Mahmoud (CM) is heavily outmatched defensively against Hugo Larsson in a direct 1v1 contest. Duel win probability: 25%. The quality gap is significant (€3M vs €34M avg). Projected xG contribution: 0.034 — with very limited chance creation expected."
      },
      {
        "attacker": "Sebastian Tounekti",
        "attacker_role": "CM",
        "attacker_market_value": 6500000,
        "attacker_height": 170,
        "attacker_skill_quality": 0.481,
        "defenders": [
          "Hugo Larsson"
        ],
        "defender_roles": [
          "CM"
        ],
        "def_skill_quality_avg": 0.746,
        "duel_zone": "Central Mid vs Central Mid — Box-to-Box Midfield Contest",
        "numerical_situation": "1v1",
        "duel_win_rate": 0.241,
        "xg_contribution": 0.0215,
        "shots_in_zone": 1.2,
        "dribbles_attempted": 2,
        "dribbles_successful": 0.4,
        "aerial_duels": 2,
        "aerial_won": 0.8,
        "crosses_in_zone": 0.0,
        "fouls_drawn": 1.4,
        "pressing_intensity_on_attacker": "HIGH",
        "defender_stats": [
          {
            "player": "Hugo Larsson",
            "role": "CM",
            "market_value": 34000000,
            "tackles_attempted": 2.2,
            "tackles_won": 2.3,
            "fouls_committed": 0.4,
            "interceptions_in_zone": 1.2,
            "clearances_in_zone": 0.5,
            "aerial_duels_won": 1.2,
            "defensive_success_rate": 0.759
          }
        ],
        "duel_analysis": "Sebastian Tounekti (CM) is heavily outmatched defensively against Hugo Larsson in a direct 1v1 contest. Duel win probability: 24%. The quality gap is significant (€6M vs €34M avg). Projected xG contribution: 0.022 — with very limited chance creation expected."
      },
      {
        "attacker": "Anis Ben Slimane",
        "attacker_role": "RWB",
        "attacker_market_value": 3100000,
        "attacker_height": 188,
        "attacker_skill_quality": 0.439,
        "defenders": [
          "Yasin Ayari"
        ],
        "defender_roles": [
          "LWB"
        ],
        "def_skill_quality_avg": 0.694,
        "duel_zone": "RWB vs LWB",
        "numerical_situation": "1v1",
        "duel_win_rate": 0.365,
        "xg_contribution": 0.0522,
        "shots_in_zone": 0.9,
        "dribbles_attempted": 2,
        "dribbles_successful": 0.6,
        "aerial_duels": 2,
        "aerial_won": 1.2,
        "crosses_in_zone": 2.2,
        "fouls_drawn": 1.2,
        "pressing_intensity_on_attacker": "MEDIUM",
        "defender_stats": [
          {
            "player": "Yasin Ayari",
            "role": "LWB",
            "market_value": 27000000,
            "tackles_attempted": 2.2,
            "tackles_won": 2.0,
            "fouls_committed": 0.5,
            "interceptions_in_zone": 1.1,
            "clearances_in_zone": 0.5,
            "aerial_duels_won": 0.8,
            "defensive_success_rate": 0.635
          }
        ],
        "duel_analysis": "Anis Ben Slimane (RWB) faces tough defensive resistance against Yasin Ayari in a direct 1v1 contest. Duel win probability: 37%. The quality gap is significant (€3M vs €27M avg). Projected xG contribution: 0.052 — and is restricted in space and time on the ball."
      },
      {
        "attacker": "Louey Ben Farhat",
        "attacker_role": "ST",
        "attacker_market_value": 8100000,
        "attacker_height": 175,
        "attacker_skill_quality": 0.5,
        "defenders": [
          "Gabriel Gudmundsson",
          "Isak Hien"
        ],
        "defender_roles": [
          "CB",
          "CB"
        ],
        "def_skill_quality_avg": 0.641,
        "duel_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
        "numerical_situation": "1v2",
        "duel_win_rate": 0.18,
        "xg_contribution": 0.0967,
        "shots_in_zone": 2.0,
        "dribbles_attempted": 2,
        "dribbles_successful": 0.3,
        "aerial_duels": 3,
        "aerial_won": 1.4,
        "crosses_in_zone": 0.0,
        "fouls_drawn": 1.5,
        "pressing_intensity_on_attacker": "MEDIUM",
        "defender_stats": [
          {
            "player": "Gabriel Gudmundsson",
            "role": "CB",
            "market_value": 21000000,
            "tackles_attempted": 1.1,
            "tackles_won": 1.2,
            "fouls_committed": 0.5,
            "interceptions_in_zone": 1.0,
            "clearances_in_zone": 0.9,
            "aerial_duels_won": 0.8,
            "defensive_success_rate": 0.82
          },
          {
            "player": "Isak Hien",
            "role": "CB",
            "market_value": 21000000,
            "tackles_attempted": 1.1,
            "tackles_won": 1.2,
            "fouls_committed": 0.5,
            "interceptions_in_zone": 1.0,
            "clearances_in_zone": 0.9,
            "aerial_duels_won": 0.8,
            "defensive_success_rate": 0.82
          }
        ],
        "duel_analysis": "Louey Ben Farhat (ST) is heavily outmatched defensively against Gabriel Gudmundsson and Isak Hien in a 2-defender block. Duel win probability: 18%.  Projected xG contribution: 0.097 — with very limited chance creation expected."
      },
      {
        "attacker": "Elias Saad",
        "attacker_role": "ST",
        "attacker_market_value": 2700000,
        "attacker_height": 185,
        "attacker_skill_quality": 0.434,
        "defenders": [
          "Gabriel Gudmundsson",
          "Isak Hien"
        ],
        "defender_roles": [
          "CB",
          "CB"
        ],
        "def_skill_quality_avg": 0.641,
        "duel_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
        "numerical_situation": "1v2",
        "duel_win_rate": 0.18,
        "xg_contribution": 0.1081,
        "shots_in_zone": 2.0,
        "dribbles_attempted": 2,
        "dribbles_successful": 0.3,
        "aerial_duels": 3,
        "aerial_won": 1.8,
        "crosses_in_zone": 0.0,
        "fouls_drawn": 1.4,
        "pressing_intensity_on_attacker": "MEDIUM",
        "defender_stats": [
          {
            "player": "Gabriel Gudmundsson",
            "role": "CB",
            "market_value": 21000000,
            "tackles_attempted": 1.1,
            "tackles_won": 1.2,
            "fouls_committed": 0.5,
            "interceptions_in_zone": 1.0,
            "clearances_in_zone": 0.9,
            "aerial_duels_won": 0.6,
            "defensive_success_rate": 0.82
          },
          {
            "player": "Isak Hien",
            "role": "CB",
            "market_value": 21000000,
            "tackles_attempted": 1.1,
            "tackles_won": 1.2,
            "fouls_committed": 0.5,
            "interceptions_in_zone": 1.0,
            "clearances_in_zone": 0.9,
            "aerial_duels_won": 0.6,
            "defensive_success_rate": 0.82
          }
        ],
        "duel_analysis": "Elias Saad (ST) is heavily outmatched defensively against Gabriel Gudmundsson and Isak Hien in a 2-defender block. Duel win probability: 18%. The quality gap is significant (€3M vs €21M avg). Projected xG contribution: 0.108 — with very limited chance creation expected."
      }
    ],
    "midfield_battle": {
      "home_midfield_power": 0.739,
      "away_midfield_power": 0.508,
      "home_creative_power": 0.661,
      "away_creative_power": 0.389,
      "home_defensive_power": 0.705,
      "away_defensive_power": 0.389,
      "home_dominance_ratio": 0.593,
      "home_midfield_count": 4,
      "away_midfield_count": 5,
      "home_midfield_players": [
        "Lucas Bergvall",
        "Hugo Larsson",
        "Yasin Ayari",
        "Daniel Svensson"
      ],
      "away_midfield_players": [
        "Sebastian Tounekti",
        "Ellyes Skhiri",
        "Ismael Gharbi",
        "Anis Ben Slimane",
        "Mohamed Belhadj Mahmoud"
      ],
      "possession_advantage": "home",
      "estimated_possession_home_pct": 53.4,
      "estimated_possession_away_pct": 46.6,
      "home_pressing_actions_per_90": 8.1,
      "away_pressing_actions_per_90": 6.2,
      "home_key_passes_projected": 5.5,
      "away_key_passes_projected": 3.8,
      "home_throughball_threat": 2.6,
      "away_throughball_threat": 1.8,
      "key_personal_duel": "Lucas Bergvall vs Sebastian Tounekti",
      "midfield_lambda_factor_home": 1.039,
      "midfield_lambda_factor_away": 0.959
    },
    "formation_analysis": {
      "home_formation": "3-4-2-1",
      "away_formation": "3-5-2",
      "home_tactical_bonus": 0.02,
      "away_tactical_bonus": -0.02,
      "formation_verdict": "Tactical parity between 3-4-2-1 and 3-5-2. Match outcome driven primarily by individual player quality."
    },
    "home_lambda": 2.494,
    "away_lambda": 0.488,
    "home_top_threat_zones": [
      "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
      "Shadow Striker vs Centre Back — Half-Space Threat"
    ],
    "away_top_threat_zones": [
      "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
      "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle"
    ],
    "home_player_antagonists": {
      "Yasin Ayari": {
        "opponents": [
          "Anis Ben Slimane",
          "Sebastian Tounekti"
        ],
        "primary_zone": "LWB vs RWB",
        "source": "attacking_duel, defensive_duel, midfield_pairing"
      },
      "Hugo Larsson": {
        "opponents": [
          "Ellyes Skhiri",
          "Mohamed Belhadj Mahmoud",
          "Sebastian Tounekti",
          "Anis Ben Slimane"
        ],
        "primary_zone": "Central Mid vs Defensive Mid — Pressing/Creation Duel",
        "source": "attacking_duel, defensive_duel, midfield_pairing"
      },
      "Lucas Bergvall": {
        "opponents": [
          "Ellyes Skhiri",
          "Mohamed Belhadj Mahmoud"
        ],
        "primary_zone": "Central Mid vs Defensive Mid — Pressing/Creation Duel",
        "source": "attacking_duel, midfield_pairing"
      },
      "Daniel Svensson": {
        "opponents": [
          "Ismael Gharbi"
        ],
        "primary_zone": "RWB vs LWB",
        "source": "attacking_duel, defensive_duel, midfield_pairing"
      },
      "Anthony Elanga": {
        "opponents": [
          "Ali Abdi"
        ],
        "primary_zone": "Shadow Striker vs Centre Back — Half-Space Threat",
        "source": "attacking_duel"
      },
      "Roony Bardghji": {
        "opponents": [
          "Ali Abdi"
        ],
        "primary_zone": "Shadow Striker vs Centre Back — Half-Space Threat",
        "source": "attacking_duel"
      },
      "Viktor Gyökeres": {
        "opponents": [
          "Ali Abdi",
          "Alaa Ghram"
        ],
        "primary_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
        "source": "attacking_duel"
      },
      "Gabriel Gudmundsson": {
        "opponents": [
          "Louey Ben Farhat",
          "Elias Saad"
        ],
        "primary_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
        "source": "defensive_duel"
      },
      "Isak Hien": {
        "opponents": [
          "Louey Ben Farhat",
          "Elias Saad"
        ],
        "primary_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
        "source": "defensive_duel"
      },
      "Melker Ellborg": {
        "opponents": [
          "Louey Ben Farhat",
          "Elias Saad"
        ],
        "primary_zone": "Shape fallback",
        "source": "formation_fallback"
      },
      "Victor Lindelöf": {
        "opponents": [
          "Louey Ben Farhat"
        ],
        "primary_zone": "Shape fallback",
        "source": "formation_fallback"
      }
    },
    "away_player_antagonists": {
      "Anis Ben Slimane": {
        "opponents": [
          "Yasin Ayari",
          "Hugo Larsson"
        ],
        "primary_zone": "LWB vs RWB",
        "source": "defensive_duel, attacking_duel, midfield_pairing"
      },
      "Ellyes Skhiri": {
        "opponents": [
          "Hugo Larsson",
          "Lucas Bergvall"
        ],
        "primary_zone": "Central Mid vs Defensive Mid — Pressing/Creation Duel",
        "source": "defensive_duel, midfield_pairing"
      },
      "Ismael Gharbi": {
        "opponents": [
          "Daniel Svensson"
        ],
        "primary_zone": "RWB vs LWB",
        "source": "defensive_duel, attacking_duel, midfield_pairing"
      },
      "Ali Abdi": {
        "opponents": [
          "Anthony Elanga",
          "Roony Bardghji",
          "Viktor Gyökeres"
        ],
        "primary_zone": "Shadow Striker vs Centre Back — Half-Space Threat",
        "source": "defensive_duel"
      },
      "Alaa Ghram": {
        "opponents": [
          "Viktor Gyökeres"
        ],
        "primary_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
        "source": "defensive_duel"
      },
      "Mohamed Belhadj Mahmoud": {
        "opponents": [
          "Hugo Larsson",
          "Lucas Bergvall"
        ],
        "primary_zone": "Central Mid vs Central Mid — Box-to-Box Midfield Contest",
        "source": "attacking_duel, midfield_pairing"
      },
      "Sebastian Tounekti": {
        "opponents": [
          "Hugo Larsson",
          "Yasin Ayari"
        ],
        "primary_zone": "Central Mid vs Central Mid — Box-to-Box Midfield Contest",
        "source": "attacking_duel, midfield_pairing"
      },
      "Louey Ben Farhat": {
        "opponents": [
          "Gabriel Gudmundsson",
          "Isak Hien"
        ],
        "primary_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
        "source": "attacking_duel"
      },
      "Elias Saad": {
        "opponents": [
          "Gabriel Gudmundsson",
          "Isak Hien"
        ],
        "primary_zone": "Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle",
        "source": "attacking_duel"
      },
      "Aymen Dahmen": {
        "opponents": [
          "Anthony Elanga",
          "Roony Bardghji"
        ],
        "primary_zone": "Shape fallback",
        "source": "formation_fallback"
      },
      "Yan Valery": {
        "opponents": [
          "Viktor Gyökeres"
        ],
        "primary_zone": "Shape fallback",
        "source": "formation_fallback"
      }
    },
    "key_tactical_insight": "Home midfield dominates with ~53% possession expected (Lucas Bergvall vs Sebastian Tounekti). Total antagonist xG — Home: 1.25, Away: 0.37. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle.",
    "lambda_factors": {
      "home_gk_opposition_factor": 1.0223,
      "away_gk_opposition_factor": 1.0117,
      "home_set_piece_bonus": 0.108,
      "away_set_piece_bonus": 0.062,
      "home_defensive_solidity_vs": 1.0271,
      "away_defensive_solidity_vs": 0.9713,
      "home_midfield_factor": 1.039,
      "away_midfield_factor": 0.959,
      "stage_discount": 1.0,
      "quality_gap_applied": true,
      "home_avg_quality": 0.6819,
      "away_avg_quality": 0.4483,
      "avg_quality_gap": 0.2336,
      "squad_value_gap_log": 1.7948,
      "top5_value_gap_log": 1.696,
      "attack_value_gap_log": 1.7232,
      "elite_count_gap": 2,
      "combined_quality_gap": 0.476,
      "stronger_lambda_boost": 0.3427,
      "weaker_lambda_suppression": 0.238,
      "home_bench_lambda_bonus": 0.0393,
      "away_bench_lambda_bonus": 0.0548,
      "home_bench_players_modelled": 7,
      "away_bench_players_modelled": 7,
      "mismatch_score_pressure_applied": true,
      "mismatch_score_pressure_gap": 0.476,
      "mismatch_favorite_lambda_boost": 1.188,
      "mismatch_underdog_lambda_factor": 0.9048,
      "pre_mismatch_home_lambda": 2.099,
      "pre_mismatch_away_lambda": 0.539,
      "pre_calibration_home_lambda": 2.0993,
      "pre_calibration_away_lambda": 0.5388,
      "competition_calibration_applied": false,
      "competition_calibration_reason": "no_sofascore_matches_data",
      "competition_calibration_samples": 0,
      "competition_observed_total_goals": 0.0,
      "competition_calibration_scale": 1.0,
      "neutral_share_preserved": true,
      "final_home_lambda": 2.494,
      "final_away_lambda": 0.488
    }
  },
  "home_standing": {
    "available": false,
    "team_position": null,
    "opponent_position": null,
    "standing_lambda_multiplier": 1.0,
    "attack_index": null,
    "defense_concede_index": null,
    "form_multiplier": null,
    "team_attack_rate_contextual": null,
    "opp_defense_rate_contextual": null,
    "team_ppg": null,
    "opponent_ppg": null
  },
  "away_standing": {
    "available": false,
    "team_position": null,
    "opponent_position": null,
    "standing_lambda_multiplier": 1.0,
    "attack_index": null,
    "defense_concede_index": null,
    "form_multiplier": null,
    "team_attack_rate_contextual": null,
    "opp_defense_rate_contextual": null,
    "team_ppg": null,
    "opponent_ppg": null
  },
  "timestamp": "2026-06-01T17:36:27Z"
}