{
  "canonical_id": "karsten-hanlin",
  "canonical_name": "Karsten Hanlin",
  "positions": [
    "DM"
  ],
  "leagues": [
    "USL1"
  ],
  "sport_names": [],
  "ambiguous": false,
  "appearances": [
    {
      "id": 1502524,
      "full_name": "Karsten Hanlin",
      "team": "",
      "position": "DM",
      "sport_id": null,
      "league": "USL1",
      "jersey": null,
      "college": null,
      "college_stats": null,
      "height": "6'0\"",
      "weight": "161",
      "college_full": null
    }
  ],
  "career_totals": {
    "minutes_played": 2568.0,
    "shots": 15.0,
    "shots_on_target": 7.0,
    "goals": 2.0,
    "xg": 1.6032,
    "xg_place": 0.15830000000000008,
    "goals_minus_xg": 0.3968000000000001,
    "key_passes": 24.0,
    "assists": 4.0,
    "xa": 2.2394000000000003,
    "assists_minus_xa": 1.7606,
    "goals_plus_assists": 6.0,
    "xg_plus_xa": 3.8427,
    "points_added": 0.4672,
    "xpoints_added": 0.567,
    "passes_attempted": 1132.0,
    "pass_completion_pct": 3.0928,
    "xpass_completion_pct": 3.1958,
    "passes_over_expected": -23.182399999999998,
    "passes_over_expected_p100": -10.2919,
    "avg_pass_distance": 83.3325,
    "avg_pass_vertical": 14.209400000000002
  },
  "season_totals": {
    "USLC-2017": {
      "minutes_played": 616.0,
      "shots": 4.0,
      "shots_on_target": 4.0,
      "goals": 2.0,
      "xg": 0.9504,
      "xg_place": 0.6167,
      "goals_minus_xg": 1.0496,
      "key_passes": 8.0,
      "assists": 1.0,
      "xa": 0.5892,
      "assists_minus_xa": 0.4108,
      "goals_plus_assists": 3.0,
      "xg_plus_xa": 1.5397,
      "points_added": 0.4672,
      "xpoints_added": 0.0779,
      "passes_attempted": 362.0,
      "pass_completion_pct": 0.8591,
      "xpass_completion_pct": 0.8292,
      "passes_over_expected": 10.8213,
      "passes_over_expected_p100": 2.9893,
      "avg_pass_distance": 19.9591,
      "avg_pass_vertical": 2.7732
    },
    "USLC-2018": {
      "minutes_played": 1222.0,
      "shots": 5.0,
      "shots_on_target": 0.0,
      "goals": 0.0,
      "xg": 0.4108,
      "xg_place": -0.4108,
      "goals_minus_xg": -0.4108,
      "key_passes": 10.0,
      "assists": 3.0,
      "xa": 1.1795,
      "assists_minus_xa": 1.8205,
      "goals_plus_assists": 3.0,
      "xg_plus_xa": 1.5903,
      "points_added": 0.0,
      "xpoints_added": 0.32089999999999996,
      "passes_attempted": 452.0,
      "pass_completion_pct": 1.5230000000000001,
      "xpass_completion_pct": 1.5848,
      "passes_over_expected": -11.4041,
      "passes_over_expected_p100": -6.1744,
      "avg_pass_distance": 38.0172,
      "avg_pass_vertical": 4.6734
    },
    "USL1-2019": {
      "minutes_played": 730.0,
      "shots": 6.0,
      "shots_on_target": 3.0,
      "goals": 0.0,
      "xg": 0.242,
      "xg_place": -0.0476,
      "goals_minus_xg": -0.242,
      "key_passes": 6.0,
      "assists": 0.0,
      "xa": 0.4707,
      "assists_minus_xa": -0.4707,
      "goals_plus_assists": 0.0,
      "xg_plus_xa": 0.7127,
      "points_added": 0.0,
      "xpoints_added": 0.1682,
      "passes_attempted": 318.0,
      "pass_completion_pct": 0.7107,
      "xpass_completion_pct": 0.7818,
      "passes_over_expected": -22.5996,
      "passes_over_expected_p100": -7.1068,
      "avg_pass_distance": 25.3562,
      "avg_pass_vertical": 6.7628
    }
  },
  "season_coaches": {},
  "game_log": [
    {
      "game_id": "soccer-uslc-2017-BLMv6m3Mxe",
      "game_slug": "soccer-uslc-2017-blmv6m3mxe",
      "display": "USLC 2017 Season",
      "season": 2017,
      "week": 1,
      "league": "USLC",
      "sport_slug": "uslc-2017",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 616.0,
        "shots": 4.0,
        "shots_on_target": 4.0,
        "goals": 2.0,
        "xg": 0.9504,
        "xg_place": 0.6167,
        "goals_minus_xg": 1.0496,
        "key_passes": 8.0,
        "assists": 1.0,
        "xa": 0.5892,
        "assists_minus_xa": 0.4108,
        "goals_plus_assists": 3.0,
        "xg_plus_xa": 1.5397,
        "points_added": 0.4672,
        "xpoints_added": 0.0779,
        "passes_attempted": 362.0,
        "pass_completion_pct": 0.8591,
        "xpass_completion_pct": 0.8292,
        "passes_over_expected": 10.8213,
        "passes_over_expected_p100": 2.9893,
        "avg_pass_distance": 19.9591,
        "avg_pass_vertical": 2.7732
      }
    },
    {
      "game_id": "soccer-uslc-2018-9YqdojR5vJ",
      "game_slug": "soccer-uslc-2018-9yqdojr5vj",
      "display": "USLC 2018 Season",
      "season": 2018,
      "week": 1,
      "league": "USLC",
      "sport_slug": "uslc-2018",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 1128.0,
        "shots": 4.0,
        "shots_on_target": 0.0,
        "goals": 0.0,
        "xg": 0.3631,
        "xg_place": -0.3631,
        "goals_minus_xg": -0.3631,
        "key_passes": 9.0,
        "assists": 3.0,
        "xa": 1.0157,
        "assists_minus_xa": 1.9843,
        "goals_plus_assists": 3.0,
        "xg_plus_xa": 1.3788,
        "points_added": 0.0,
        "xpoints_added": 0.2572,
        "passes_attempted": 425.0,
        "pass_completion_pct": 0.7082,
        "xpass_completion_pct": 0.7327,
        "passes_over_expected": -10.3976,
        "passes_over_expected_p100": -2.4465,
        "avg_pass_distance": 22.1399,
        "avg_pass_vertical": 6.9879
      }
    },
    {
      "game_id": "soccer-uslc-2018-BLMv6m3Mxe",
      "game_slug": "soccer-uslc-2018-blmv6m3mxe",
      "display": "USLC 2018 Season",
      "season": 2018,
      "week": 1,
      "league": "USLC",
      "sport_slug": "uslc-2018",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 94.0,
        "shots": 1.0,
        "shots_on_target": 0.0,
        "goals": 0.0,
        "xg": 0.0477,
        "xg_place": -0.0477,
        "goals_minus_xg": -0.0477,
        "key_passes": 1.0,
        "assists": 0.0,
        "xa": 0.1638,
        "assists_minus_xa": -0.1638,
        "goals_plus_assists": 0.0,
        "xg_plus_xa": 0.2115,
        "points_added": 0.0,
        "xpoints_added": 0.0637,
        "passes_attempted": 27.0,
        "pass_completion_pct": 0.8148,
        "xpass_completion_pct": 0.8521,
        "passes_over_expected": -1.0065,
        "passes_over_expected_p100": -3.7279,
        "avg_pass_distance": 15.8773,
        "avg_pass_vertical": -2.3145
      }
    },
    {
      "game_id": "soccer-usl1-2019-4wM4Z04qjB",
      "game_slug": "soccer-usl1-2019-4wm4z04qjb",
      "display": "USL1 2019 Season",
      "season": 2019,
      "week": 1,
      "league": "USL1",
      "sport_slug": "usl1-2019",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 730.0,
        "shots": 6.0,
        "shots_on_target": 3.0,
        "goals": 0.0,
        "xg": 0.242,
        "xg_place": -0.0476,
        "goals_minus_xg": -0.242,
        "key_passes": 6.0,
        "assists": 0.0,
        "xa": 0.4707,
        "assists_minus_xa": -0.4707,
        "goals_plus_assists": 0.0,
        "xg_plus_xa": 0.7127,
        "points_added": 0.0,
        "xpoints_added": 0.1682,
        "passes_attempted": 318.0,
        "pass_completion_pct": 0.7107,
        "xpass_completion_pct": 0.7818,
        "passes_over_expected": -22.5996,
        "passes_over_expected_p100": -7.1068,
        "avg_pass_distance": 25.3562,
        "avg_pass_vertical": 6.7628
      }
    }
  ],
  "college": null,
  "nfl": null,
  "articles": []
}