# game_pbp

pbp_text:
  ────────────────────────────────────────────────────────────
  TOP HALF | Brasília BC batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Walter Bruning ---
  [0 outs | 0-0 | empty] BALL IN PLAY
    Walter Bruning runs → single.
  --- Now batting: Rob McIntosh ---
  [0 outs | 0-0 | 1B] BALL IN PLAY
    Rob McIntosh runs → fly out.
    Rob McIntosh is out.
  --- Now batting: Kaylan Jimenez ---
  [1 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [1 outs | 2-0 | 1B] BALL
    Ball 3. Count: 3-0.
  [1 outs | 3-0 | 1B] FOUL
    Foul ball. Count: 3-1.
  [1 outs | 3-1 | 1B] BALL IN PLAY
    Kaylan Jimenez runs → ground out.
    Kaylan Jimenez is out.
    Runner advances from 1B to 2B.
  --- Now batting: Sam Charley ---
  [2 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 2B] BALL IN PLAY
    Sam Charley runs → double.
    Runner scores from 2B.
  --- Now batting: Oren Coleman ---
  [2 outs | 0-0 | 2B] BALL IN PLAY
    Oren Coleman runs → single.
    Runner scores from 2B.
  [2 outs | 0-0 | 1B] PITCHING CHANGE
    PITCHING CHANGE: Leon Mohammed exits (5 BF this spell).
  --- Now batting: Justo Moncada ---
  [2 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [2 outs | 1-1 | 1B] BALL
    Ball 2. Count: 2-1.
  [2 outs | 2-1 | 1B] BALL
    Ball 3. Count: 3-1.
  [2 outs | 3-1 | 1B] CALLED STRIKE
    Strike (called). Count: 3-2.
  [2 outs | 3-2 | 1B] BALL
    WALK — Justo Moncada awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Jagger Hopper ---
  [2 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Jagger Hopper runs → HOME RUN.
    Runner scores.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Jagger Hopper retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by TaB.]
  --- Now batting: Govind Fulghum ---
  [2 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [2 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [2 outs | 0-2 | 3B] BALL
    Ball 1. Count: 1-2.
  [2 outs | 1-2 | 3B] BALL
    Ball 2. Count: 2-2.
  [2 outs | 2-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [3 outs | 0-0 | 3B] JOKER INSERTION
    Brasília BC sends in joker Carmelo Chancellor for an extra plate appearance (joker #1).
  --- Now batting: Carmelo Chancellor ---
  [3 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [3 outs | 1-0 | 3B] FOUL
    Foul ball. Count: 1-1.
  [3 outs | 1-1 | 3B] BALL
    Ball 2. Count: 2-1.
  [3 outs | 2-1 | 3B] BALL
    Ball 3. Count: 3-1.
  [3 outs | 3-1 | 3B] BALL
    WALK — Carmelo Chancellor awarded 1B.
  [3 outs | 0-0 | 1B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Dyllan Mason exits (4 BF this spell).
  [3 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Brasília BC sends in joker Wylie Coates for an extra plate appearance (joker #2).
  --- Now batting: Wylie Coates ---
  [3 outs | 0-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [3 outs | 0-1 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [3 outs | 0-2 | 1B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [4 outs | 0-2 | 3B] BALL
    Ball 1. Count: 1-2.
  [4 outs | 1-2 | 3B] BALL IN PLAY
    Wylie Coates runs → ground out.
    Wylie Coates is out.
  --- Now batting: Yoelvis Viciedo [P] ---
  [5 outs | 0-0 | 3B] BALL IN PLAY
    Yoelvis Viciedo runs → double play.
    Yoelvis Viciedo is out.
    Runner at 3B thrown out.
  --- Now batting: Walter Bruning ---
  [7 outs | 0-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [7 outs | 0-1 | empty] BALL
    Ball 1. Count: 1-1.
  [7 outs | 1-1 | empty] BALL
    Ball 2. Count: 2-1.
  [7 outs | 2-1 | empty] BALL
    Ball 3. Count: 3-1.
  [7 outs | 3-1 | empty] CALLED STRIKE
    Strike (called). Count: 3-2.
  [7 outs | 3-2 | empty] BALL
    WALK — Walter Bruning awarded 1B.
  --- Now batting: Rob McIntosh ---
  [7 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [7 outs | 0-1 | 1B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [8 outs | 0-1 | empty] BALL IN PLAY
    Rob McIntosh runs → double.
  --- Now batting: Kaylan Jimenez ---
  [8 outs | 0-0 | 2B] BALL IN PLAY
    Kaylan Jimenez runs → double.
    Runner advances from 2B to 3B.
  --- Now batting: Sam Charley ---
  [8 outs | 0-0 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [8 outs | 0-1 | 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [8 outs | 1-1 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [8 outs | 1-2 | 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [8 outs | 1-2 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Oren Coleman ---
  [9 outs | 0-0 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [9 outs | 0-1 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [9 outs | 0-2 | 2B, 3B] BALL
    Ball 1. Count: 1-2.
  [9 outs | 1-2 | 2B, 3B] BALL IN PLAY
    Oren Coleman runs → fly out.
    Oren Coleman is out.
    Runner scores from 3B.
  --- Now batting: Justo Moncada ---
  [10 outs | 0-0 | 2B] INTENTIONAL WALK
    INTENTIONAL WALK — Justo Moncada given a free pass.
  --- Now batting: Jagger Hopper ---
  [10 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [10 outs | 1-0 | 1B, 2B] BALL
    Ball 2. Count: 2-0.
  [10 outs | 2-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [10 outs | 2-1 | 1B, 2B] BALL IN PLAY
    Jagger Hopper runs → double.
    Runner scores from 2B.
    Runner scores from 1B.
  --- Now batting: Govind Fulghum ---
  [10 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [10 outs | 0-1 | 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [10 outs | 0-2 | 2B] BALL IN PLAY
    Govind Fulghum runs → ground out.
    Govind Fulghum is out.
    Runner at 2B thrown out.
  [12 outs | 0-0 | empty] JOKER INSERTION
    Brasília BC sends in joker Carmelo Chancellor for an extra plate appearance (joker #3).
  --- Now batting: Carmelo Chancellor ---
  [12 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [12 outs | 0-1 | empty] BALL
    Ball 1. Count: 1-1.
  [12 outs | 1-1 | empty] FOUL
    Foul ball. Count: 1-2.
  [12 outs | 1-2 | empty] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [13 outs | 0-0 | empty] JOKER INSERTION
    Brasília BC sends in joker Wylie Coates for an extra plate appearance (joker #4).
  --- Now batting: Wylie Coates ---
  [13 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [13 outs | 0-1 | empty] BALL IN PLAY
    Wylie Coates runs → double.
  --- Now batting: Yoelvis Viciedo [P] ---
  [13 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [13 outs | 0-1 | 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [13 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [13 outs | 1-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Walter Bruning ---
  [14 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [14 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [14 outs | 1-1 | 2B] BALL IN PLAY
    Walter Bruning runs → line out.
    Walter Bruning is out.
  --- Now batting: Rob McIntosh ---
  [15 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [15 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [15 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [15 outs | 2-1 | 2B] FOUL
    Foul ball. Count: 2-2.
  [15 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [15 outs | 3-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [16 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Lance Talley exits (15 BF this spell).
  --- Now batting: Kaylan Jimenez ---
  [16 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [16 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [16 outs | 1-1 | 2B] BALL IN PLAY
    Kaylan Jimenez runs → double.
    Runner scores from 2B.
  --- Now batting: Sam Charley ---
  [16 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [16 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [16 outs | 2-0 | 2B] BALL IN PLAY
    Sam Charley runs → single.
    Runner advances from 2B to 3B.
  --- Now batting: Oren Coleman ---
  [16 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [16 outs | 1-0 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [16 outs | 1-1 | 1B, 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    Runner advances from 1B to 2B.
    1 run(s) score.
  [16 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [16 outs | 2-1 | 2B] STOLEN BASE ATTEMPT
    Runner caught stealing at 3B.
  [17 outs | 2-1 | empty] CALLED STRIKE
    Strike (called). Count: 2-2.
  [17 outs | 2-2 | empty] FOUL
    Foul ball. Count: 2-2.
  [17 outs | 2-2 | empty] BALL IN PLAY
    Oren Coleman runs → HOME RUN.
    Batter scores (HR).
    [Walk-Back — Oren Coleman retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Gateway 2000.]
  --- Now batting: Justo Moncada ---
  [17 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [17 outs | 0-1 | 3B] BALL IN PLAY
    Justo Moncada runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Justo Moncada retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Borden.]
  [17 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Leif Hurkett exits (4 BF this spell).
  --- Now batting: Jagger Hopper ---
  [17 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [17 outs | 1-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [17 outs | 1-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [17 outs | 1-2 | 3B] BALL
    Ball 2. Count: 2-2.
  [17 outs | 2-2 | 3B] BALL
    Ball 3. Count: 3-2.
  [17 outs | 3-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Govind Fulghum ---
  [18 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [18 outs | 1-0 | 3B] BALL IN PLAY
    Govind Fulghum runs → fly out.
    Govind Fulghum is out.
    Runner scores from 3B.
  [19 outs | 0-0 | empty] JOKER INSERTION
    Brasília BC sends in joker Carmelo Chancellor for an extra plate appearance (joker #5).
  [19 outs | 0-0 | empty] DEFENSIVE SUB
    Gerson Giménez replaces Aluma Haugen at CF.
  --- Now batting: Carmelo Chancellor ---
  [19 outs | 0-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [19 outs | 0-1 | empty] BALL IN PLAY
    Carmelo Chancellor runs → fielder's choice.
  [19 outs | 0-0 | 1B] JOKER INSERTION
    Brasília BC sends in joker Wylie Coates for an extra plate appearance (joker #6).
  --- Now batting: Wylie Coates ---
  [19 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [19 outs | 0-1 | 1B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [19 outs | 0-2 | 1B] BALL
    Ball 1. Count: 1-2.
  [19 outs | 1-2 | 1B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 1B to 2B.
  [19 outs | 1-2 | 2B] FOUL
    Foul ball. Count: 1-2.
  [19 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [19 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [19 outs | 3-2 | 2B] BALL
    WALK — Wylie Coates awarded 1B.
  --- Now batting: Yoelvis Viciedo [P] ---
  [19 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Yoelvis Viciedo runs → single.
    Runner at 2B thrown out.
    Runner advances from 1B to 2B.
  --- Now batting: Walter Bruning ---
  [20 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Walter Bruning runs → ground out.
    Walter Bruning is out.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  --- Now batting: Rob McIntosh ---
  [21 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [21 outs | 0-1 | 2B] BALL IN PLAY
    Rob McIntosh runs → double.
    Runner scores from 2B.
  --- Now batting: Kaylan Jimenez ---
  [21 outs | 0-0 | 2B] BALL IN PLAY
    Kaylan Jimenez runs → fly out.
    Kaylan Jimenez is out.
  --- Now batting: Sam Charley ---
  [22 outs | 0-0 | 2B] BALL IN PLAY
    Sam Charley runs → double.
    Runner scores from 2B.
  [22 outs | 0-0 | 2B] PICKOFF ATTEMPT
    Pickoff — runner out at 2B!
  --- Now batting: Oren Coleman ---
  [23 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [23 outs | 1-0 | empty] BALL IN PLAY
    Oren Coleman runs → line out.
    Oren Coleman is out.
  --- Now batting: Justo Moncada ---
  [24 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [24 outs | 0-1 | empty] BALL IN PLAY
    Justo Moncada runs → ground out.
    Justo Moncada is out.
  --- Now batting: Jagger Hopper ---
  [25 outs | 0-0 | empty] DECLARATION
    >> Brasília BC DECLARES SECONDS at out 25 (17-0).

  End of top half — Brasília BC: 17 run(s), 15 hit(s), 27 out(s) | Run rate: 0.630
  ============================================================
  HALFTIME
    Brasília BC: 17 run(s)
    Caracas Sovereigns need 18 run(s) to win
    Required run rate: 0.667 R/out
  ============================================================

  ────────────────────────────────────────────────────────────
  BOTTOM HALF | Caracas Sovereigns batting
  ────────────────────────────────────────────────────────────
  [0 outs | 0-0 | empty] JOKER INSERTION
    Caracas Sovereigns sends in joker Guillermo Ram for an extra plate appearance (joker #1).
  --- Now batting: Guillermo Ram ---
  [0 outs | 0-0 | empty] BALL IN PLAY
    Guillermo Ram runs → single.
  [0 outs | 0-0 | 1B] JOKER INSERTION
    Caracas Sovereigns sends in joker Brylan Jessee for an extra plate appearance (joker #2).
  --- Now batting: Brylan Jessee ---
  [0 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | 1B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 1B to 2B.
  [0 outs | 1-0 | 2B] BALL IN PLAY
    Brylan Jessee runs → fielder's choice.
    Runner at 2B thrown out.
  [1 outs | 0-0 | 1B] JOKER INSERTION
    Caracas Sovereigns sends in joker Rolando Profar for an extra plate appearance (joker #3).
  --- Now batting: Rolando Profar ---
  [1 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [1 outs | 2-0 | 1B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [1 outs | 2-1 | 1B] BALL IN PLAY
    Rolando Profar runs → single.
    Runner advances from 1B to 3B.
  --- Now batting: Gerson Giménez ---
  [1 outs | 0-0 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [1 outs | 0-1 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [1 outs | 0-2 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Keacy Gray ---
  [2 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 1B, 3B] BALL
    Ball 2. Count: 2-0.
  [2 outs | 2-0 | 1B, 3B] BALL
    Ball 3. Count: 3-0.
  [2 outs | 3-0 | 1B, 3B] BALL
    WALK — Keacy Gray awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Evan Petrovic ---
  [2 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [2 outs | 2-0 | 1B, 2B, 3B] BALL IN PLAY
    Evan Petrovic runs → fielder's choice.
    Runner at 3B thrown out.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  --- Now batting: Edinson Ochoa ---
  [3 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Edinson Ochoa runs → single.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  --- Now batting: Simon Page ---
  [3 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [3 outs | 1-0 | 1B, 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  [3 outs | 1-0 | 1B, 3B] BALL IN PLAY
    Simon Page runs → ground out.
    Simon Page is out.
    Runner advances from 1B to 2B.
  --- Now batting: Mahadeo Ramessar ---
  [4 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [4 outs | 2-0 | 2B, 3B] FOUL
    Foul ball. Count: 2-1.
  [4 outs | 2-1 | 2B, 3B] BALL IN PLAY
    Mahadeo Ramessar runs → single.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
  --- Now batting: Kolin Waters ---
  [4 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 1B, 3B] BALL
    Ball 2. Count: 2-0.
  [4 outs | 2-0 | 1B, 3B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 2B.
  [4 outs | 2-0 | 2B, 3B] BALL IN PLAY
    Kolin Waters runs → fly out.
    Kolin Waters is out.
    Runner at 3B thrown out.
  --- Now batting: Jairo Yeboah ---
  [6 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [6 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [6 outs | 1-1 | 2B] FOUL
    Foul ball. Count: 1-2.
  [6 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [6 outs | 2-2 | 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  [6 outs | 2-2 | 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Leon Mohammed [P] ---
  [7 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [7 outs | 1-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [7 outs | 1-1 | 3B] BALL IN PLAY
    Leon Mohammed runs → ground out.
    Leon Mohammed is out.
  [8 outs | 0-0 | 3B] JOKER INSERTION
    Caracas Sovereigns sends in joker Guillermo Ram for an extra plate appearance (joker #4).
  --- Now batting: Guillermo Ram ---
  [8 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | 3B] FOUL
    Foul ball. Count: 1-1.
  [8 outs | 1-1 | 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [8 outs | 1-2 | 3B] FOUL
    Foul ball. Count: 1-2.
  [8 outs | 1-2 | 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [9 outs | 0-0 | 3B] JOKER INSERTION
    Caracas Sovereigns sends in joker Brylan Jessee for an extra plate appearance (joker #5).
  --- Now batting: Brylan Jessee ---
  [9 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [9 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [9 outs | 1-1 | 3B] FOUL
    Foul ball. Count: 1-2.
  [9 outs | 1-2 | 3B] BALL IN PLAY
    Brylan Jessee runs → fielder's choice.
    Runner at 3B thrown out.
  [10 outs | 0-0 | 1B] JOKER INSERTION
    Caracas Sovereigns sends in joker Rolando Profar for an extra plate appearance (joker #6).
  --- Now batting: Rolando Profar ---
  [10 outs | 0-0 | 1B] BALL IN PLAY
    Rolando Profar runs → single.
    Runner advances from 1B to 2B.
  --- Now batting: Gerson Giménez ---
  [10 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [10 outs | 1-0 | 1B, 2B] BALL
    Ball 2. Count: 2-0.
  [10 outs | 2-0 | 1B, 2B] FOUL
    Foul ball. Count: 2-1.
  [10 outs | 2-1 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 2-2.
  [10 outs | 2-2 | 1B, 2B] FOUL
    Foul ball. Count: 2-2.
  [10 outs | 2-2 | 1B, 2B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Keacy Gray ---
  [11 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 1B, 2B] BALL IN PLAY
    Keacy Gray runs → single.
    Runner at 2B thrown out.
    Runner advances from 1B to 2B.
  --- Now batting: Evan Petrovic ---
  [12 outs | 0-0 | 1B, 2B] FOUL
    Foul ball. Count: 0-1.
  [12 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [12 outs | 1-1 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [12 outs | 1-2 | 1B, 2B] BALL
    Ball 2. Count: 2-2.
  [12 outs | 2-2 | 1B, 2B] BALL
    Ball 3. Count: 3-2.
  [12 outs | 3-2 | 1B, 2B] FOUL
    Foul ball. Count: 3-2.
  [12 outs | 3-2 | 1B, 2B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Edinson Ochoa ---
  [13 outs | 0-0 | 1B, 2B] FOUL
    Foul ball. Count: 0-1.
  [13 outs | 0-1 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [13 outs | 0-2 | 1B, 2B] BALL
    Ball 1. Count: 1-2.
  [13 outs | 1-2 | 1B, 2B] FOUL
    Foul ball. Count: 1-2.
  [13 outs | 1-2 | 1B, 2B] BALL
    Ball 2. Count: 2-2.
  [13 outs | 2-2 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Simon Page ---
  [14 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [14 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [14 outs | 1-1 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [14 outs | 1-2 | 1B, 2B] BALL
    Ball 2. Count: 2-2.
  [14 outs | 2-2 | 1B, 2B] FOUL
    Foul ball. Count: 2-2.
  [14 outs | 2-2 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Mahadeo Ramessar ---
  [15 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [15 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [15 outs | 1-1 | 1B, 2B] BALL IN PLAY
    Mahadeo Ramessar runs → single.
    Runner advances from 2B to 3B.
    Runner at 1B thrown out.
  --- Now batting: Kolin Waters ---
  [16 outs | 0-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [16 outs | 0-1 | 1B, 3B] BALL
    Ball 1. Count: 1-1.
  [16 outs | 1-1 | 1B, 3B] BALL
    Ball 2. Count: 2-1.
  [16 outs | 2-1 | 1B, 3B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 2B.
  [16 outs | 2-1 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 2-2.
  [16 outs | 2-2 | 2B, 3B] BALL IN PLAY
    Kolin Waters runs → line out.
    Kolin Waters is out.
  --- Now batting: Jairo Yeboah ---
  [17 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [17 outs | 1-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [17 outs | 1-1 | 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [17 outs | 1-2 | 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [17 outs | 1-2 | 2B, 3B] BALL IN PLAY
    Jairo Yeboah runs → ground out.
    Jairo Yeboah is out.
  --- Now batting: Leon Mohammed [P] ---
  [18 outs | 0-0 | 2B, 3B] BALL IN PLAY
    Leon Mohammed runs → double.
    Runner scores from 3B.
    Runner scores from 2B.
  [18 outs | 0-0 | 2B] JOKER INSERTION
    Caracas Sovereigns sends in joker Guillermo Ram for an extra plate appearance (joker #7).
  --- Now batting: Guillermo Ram ---
  [18 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [18 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [18 outs | 2-0 | 2B] BALL
    Ball 3. Count: 3-0.
  [18 outs | 3-0 | 2B] BALL IN PLAY
    Guillermo Ram runs → line out.
    Guillermo Ram is out.
  [19 outs | 0-0 | 2B] JOKER INSERTION
    Caracas Sovereigns sends in joker Brylan Jessee for an extra plate appearance (joker #8).
  [19 outs | 0-0 | 2B] DEFENSIVE SUB
    Yunior Fernández replaces Jagger Hopper at C.
  --- Now batting: Brylan Jessee ---
  [19 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [19 outs | 0-1 | 2B] BALL IN PLAY
    Brylan Jessee runs → fielder's choice.
    Runner at 2B thrown out.
  [20 outs | 0-0 | 1B] JOKER INSERTION
    Caracas Sovereigns sends in joker Rolando Profar for an extra plate appearance (joker #9).
  --- Now batting: Rolando Profar ---
  [20 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [20 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [20 outs | 2-0 | 1B] FOUL
    Foul ball. Count: 2-1.
  [20 outs | 2-1 | 1B] FOUL
    Foul ball. Count: 2-2.
  [20 outs | 2-2 | 1B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Gerson Giménez ---
  [21 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [21 outs | 1-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [21 outs | 1-1 | 1B] BALL
    Ball 2. Count: 2-1.
  [21 outs | 2-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 2-2.
  [21 outs | 2-2 | 1B] BALL
    Ball 3. Count: 3-2.
  [21 outs | 3-2 | 1B] BALL IN PLAY
    Gerson Giménez runs → triple.
    Runner scores from 1B.
  --- Now batting: Keacy Gray ---
  [21 outs | 0-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [21 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [21 outs | 1-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [21 outs | 1-2 | 3B] FOUL
    Foul ball. Count: 1-2.
  [21 outs | 1-2 | 3B] BALL IN PLAY
    Keacy Gray runs → double.
    Runner scores from 3B.
  --- Now batting: Evan Petrovic ---
  [21 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [21 outs | 1-0 | 2B] FOUL
    Foul ball. Count: 1-1.
  [21 outs | 1-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [21 outs | 1-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [22 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Yoelvis Viciedo exits (30 BF this spell).
  --- Now batting: Edinson Ochoa ---
  [22 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [22 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [22 outs | 1-1 | 2B] STOLEN BASE ATTEMPT
    Runner caught stealing at 3B.
  [23 outs | 1-1 | empty] BALL IN PLAY
    Edinson Ochoa runs → single.
  --- Now batting: Simon Page ---
  [23 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [23 outs | 1-0 | 1B] BALL IN PLAY
    Simon Page runs → line out.
    ROBBED! Govind Fulghum lays out for the diving grab — a hit turned into an out!
    Simon Page is out.
  --- Now batting: Mahadeo Ramessar ---
  [24 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [24 outs | 1-0 | 1B] BALL IN PLAY
    Mahadeo Ramessar runs → fly out.
    ROBBED! Hemraj Hosein runs it down — a sure extra-base hit erased!
    Mahadeo Ramessar is out.
  --- Now batting: Kolin Waters ---
  [25 outs | 0-0 | 1B] DECLARATION
    >> Caracas Sovereigns DECLARES SECONDS at out 25 (7-17).

  End of bottom half — Caracas Sovereigns: 7 run(s), 11 hit(s), 27 out(s) | Run rate: 0.259

  ────────────────────────────────────────────────────────────
  SECONDS_FIRST | Brasília BC batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Yunior Fernández ---
  [0 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | empty] CALLED STRIKE
    Strike (called). Count: 1-1.
  [0 outs | 1-1 | empty] FOUL
    Foul ball. Count: 1-2.
  [0 outs | 1-2 | empty] BALL
    Ball 2. Count: 2-2.
  [0 outs | 2-2 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Govind Fulghum ---
  [1 outs | 0-0 | empty] BALL IN PLAY
    Govind Fulghum runs → ground out.
    Govind Fulghum is out.

  ────────────────────────────────────────────────────────────
  SECONDS_SECOND | Caracas Sovereigns batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Kolin Waters ---
  [0 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [0 outs | 0-1 | empty] FOUL
    Foul ball. Count: 0-2.
  [0 outs | 0-2 | empty] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Jairo Yeboah ---
  [1 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | empty] CALLED STRIKE
    Strike (called). Count: 1-1.
  [1 outs | 1-1 | empty] FOUL
    Foul ball. Count: 1-2.
  [1 outs | 1-2 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.

  ============================================================
  GAME OVER: BRASÍLIA BC WIN 17–7
  ============================================================
  Final score: Brasília BC 17, Caracas Sovereigns 7
  ============================================================
  LINE SCORE
                          1      2      R
  Brasília BC            17      0     17
  Caracas Sovereigns      7      0      7

  ============================================================
  BRASÍLIA BC BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Yoelvis Viciedo         3    3    1    1    0    0    0     0    0    1    0    0     0    0
  Sam Charley             4    4    1    3    2    0    0     2    0    1    0    0     0    0
  Walter Bruning          4    3    1    1    0    0    0     1    1    0    0    0     0    0
  Marcos Ouahabi          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rob McIntosh            4    4    2    2    2    0    0     1    0    1    0    0     0    0
  Yandy González          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Landon Grousbeck        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Manny Beltré            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Wylie Coates            3    2    2    1    1    0    0     0    1    0    0    0     0    0
  Carmelo Chancellor      3    2    0    0    0    0    0     0    1    1    0    0     0    0
  Gerardo Banguera        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Justo Moncada           4    2    4    1    0    0    1     2    2    0    0    0     0    0
  Goran McMartin          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Nikita Nye              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yoán Despaigne          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Allan Merrieweather     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hemraj Hosein           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Govind Fulghum          4    4    0    0    0    0    0     1    0    1    0    0     0    0
  Ronnie Bundy            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jagger Hopper           3    3    1    2    1    0    1     5    0    1    0    0     0    0
  Remington McClune       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Oren Coleman            4    4    3    2    0    0    1     3    0    0    0    0     0    0
  Kaylan Jimenez          4    4    2    2    2    0    0     1    0    0    0    0     0    0
  Tennys Kerns            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Allen Van Ryn           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jonathan McKelvey       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Keldric Bethune         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Camden Ayala            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Egan Gerald             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Wilfred Bustamante      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ethan Dell              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dick Spediacci          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Patrick Chatman         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Colton Ison             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rafael Marte            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rykar Lammons           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Felix Le Normand        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sebastian Clemente      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Iván Núñez              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Lourdes Valdés          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yunior Fernández        1    1    0    0    0    0    0     0    0    1    0    0     0    0
  Aleksandar Calloway     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 41   36   17   15    8    0    3    16    5    7    0    0     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Yoelvis Viciedo        32   24   10    7    1    9    0
  Jonathan McKelvey       3    3    1    0    0    0    0

  ============================================================
  CARACAS SOVEREIGNS BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Leon Mohammed           2    2    0    1    1    0    0     2    0    0    0    0     0    0
  Evan Petrovic           3    3    1    0    0    0    0     1    0    1    0    0     0    0
  Edinson Ochoa           3    3    0    2    0    0    0     1    0    1    0    0     0    0
  Maxime Moore            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Allan Banck             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  LaVerne Velez           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Deed Patel              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dayán Alarcón           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Armistead Hackett       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rolando Profar          3    3    1    2    0    0    0     0    0    1    0    0     0    0
  Guillermo Ram           3    3    0    1    0    0    0     0    0    1    0    0     0    0
  Brylan Jessee           3    3    2    0    0    0    0     0    0    0    0    0     0    0
  Aluma Haugen            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mahadeo Ramessar        3    3    1    2    0    0    0     1    0    0    0    0     0    0
  Tomm Steever            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jeremy Wiesner          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yohan Beltrán           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Alex Hof                0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yandy Olivera           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kolin Waters            3    3    0    0    0    0    0     0    0    1    0    0     0    0
  Oliver Benetti          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Austin Brantmeier       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Otis Adedire            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Montavious Farquhar     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Simon Page              3    3    0    0    0    0    0     0    0    1    0    0     0    0
  Keacy Gray              3    2    1    2    1    0    0     1    1    0    0    0     0    0
  Leif Hurkett            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Omarian Cobb            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mariano Palermo         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dyllan Mason            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Peter Helaire           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Zachary Graves          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Brylan Colley           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Iván Alarcón            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  LaVerne Pointer         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Preston Antonio         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Lance Talley            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yoán Rodríguez          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Iose Fair               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Oluwafunto Portnjagin    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Erick Sanderson         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Noel Brand              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jairo Yeboah            3    3    0    0    0    0    0     0    0    2    0    0     0    0
  Gerson Giménez          3    3    1    1    0    1    0     1    0    1    0    0     0    0
  Ramón Ortiz             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 35   34    7   11    2    1    0     7    1    9    0    0     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Leon Mohammed           7    4    3    2    0    1    0
  Dyllan Mason            4    1    1    3    2    1    0
  Lance Talley           15   13    4    3    2    4    0
  Leif Hurkett            4    1    4    5    0    0    0
  LaVerne Pointer        11    8    3    4    1    1    0

  ============================================================
  Run rate:  Brasília BC  0.630    Caracas Sovereigns  0.259
  Second-Chance ABs:  Brasília BC  0    Caracas Sovereigns  0
  IBB (Brasília BC): Justo Moncada.
  Required run rate (Caracas Sovereigns): 0.667 R/out (needed 18 runs in 27 outs)
  Seconds: Brasília BC o25 (17-0), Caracas Sovereigns o25 (7-17)
  ============================================================
  ============================================================
  PARTNERSHIP LOG
  Batter 1              Batter 2                Runs  Half
  ──────────────────────────────────────────────────────────────────
  Rob McIntosh          Kaylan Jimenez             0  top
  Kaylan Jimenez        Govind Fulghum             5  top
  Govind Fulghum        Carmelo Chancellor         0  top
  Carmelo Chancellor    Wylie Coates               0  top
  Wylie Coates          Jagger Hopper              0  top
  Jagger Hopper         Yoelvis Viciedo            0  top
  Yoelvis Viciedo       Walter Bruning             0  top
  Walter Bruning        Sam Charley                0  top
  Sam Charley           Oren Coleman               1  top
  Oren Coleman          Jagger Hopper              2  top
  Jagger Hopper         Govind Fulghum             0  top
  Govind Fulghum        Carmelo Chancellor         0  top
  Carmelo Chancellor    Yoelvis Viciedo            0  top
  Yoelvis Viciedo       Walter Bruning             0  top
  Walter Bruning        Rob McIntosh               0  top
  Rob McIntosh          Sam Charley                2  top
  Sam Charley           Jagger Hopper              3  top
  Jagger Hopper         Govind Fulghum             1  top
  Govind Fulghum        Carmelo Chancellor         0  top
  Carmelo Chancellor    Walter Bruning             1  top
  Walter Bruning        Kaylan Jimenez             1  top
  Kaylan Jimenez        Sam Charley                1  top
  Sam Charley           Oren Coleman               0  top
  Oren Coleman          Justo Moncada              0  top
  Guillermo Ram         Gerson Giménez             0  bottom
  Gerson Giménez        Brylan Jessee              1  bottom
  Brylan Jessee         Simon Page                 1  bottom
  Simon Page            Edinson Ochoa              1  bottom
  Edinson Ochoa         Kolin Waters               0  bottom
  Kolin Waters          Jairo Yeboah               0  bottom
  Jairo Yeboah          Leon Mohammed              0  bottom
  Leon Mohammed         Guillermo Ram              0  bottom
  Guillermo Ram         Mahadeo Ramessar           0  bottom
  Mahadeo Ramessar      Gerson Giménez             0  bottom
  Gerson Giménez        Brylan Jessee              0  bottom
  Brylan Jessee         Evan Petrovic              0  bottom
  Evan Petrovic         Edinson Ochoa              0  bottom
  Edinson Ochoa         Simon Page                 0  bottom
  Simon Page            Keacy Gray                 0  bottom
  Keacy Gray            Kolin Waters               0  bottom
  Kolin Waters          Jairo Yeboah               0  bottom
  Jairo Yeboah          Guillermo Ram              2  bottom
  Guillermo Ram         Leon Mohammed              0  bottom
  Leon Mohammed         Rolando Profar             0  bottom
  Rolando Profar        Evan Petrovic              2  bottom
  Evan Petrovic         Keacy Gray                 0  bottom
  Keacy Gray            Simon Page                 0  bottom
  Simon Page            Mahadeo Ramessar           0  bottom
  Yunior Fernández      Govind Fulghum             0  seconds_first
  Kolin Waters          Jairo Yeboah               0  seconds_second
  ──────────────────────────────────────────────────────────────────
  Total partnerships: 50  |  Avg runs/partnership: 0.48
  ============================================================
  PITCHER SPELL LOG
  Pitcher               Half         PA#   BF  OUT    R    H   BB    K  HBP
  ──────────────────────────────────────────────────────────────────────────
  Leon Mohammed         top            1    5    2     2     3     0     0     0
  Dyllan Mason          top            6    4    1     3     1     2     1     0
  Lance Talley          top           10   15   13     3     4     2     4     0
  Leif Hurkett          top           25    4    1     5     4     0     0     0
  LaVerne Pointer       top           29   11    8     4     3     1     1     0
  Yoelvis Viciedo       bottom         1   30   22     7    10     1     7     0
  Jonathan McKelvey     bottom        31    3    3     0     1     0     0     0
  Leon Mohammed         seconds_first  1    2    2     0     0     0     1     0
  Yoelvis Viciedo       seconds_second  1    2    2     0     0     0     2     0
  ──────────────────────────────────────────────────────────────────────────
  Total spells: 9


pbp_text:
  ────────────────────────────────────────────────────────────
  TOP HALF | Quatre Bornes Sovereigns batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Shigeru Hirano ---
  [0 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | empty] FOUL
    Foul ball. Count: 1-1.
  [0 outs | 1-1 | empty] FOUL
    Foul ball. Count: 1-2.
  [0 outs | 1-2 | empty] BALL
    Ball 2. Count: 2-2.
  [0 outs | 2-2 | empty] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Dong-hyun Pi ---
  [1 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | empty] BALL
    Ball 2. Count: 2-0.
  [1 outs | 2-0 | empty] BALL
    Ball 3. Count: 3-0.
  [1 outs | 3-0 | empty] BALL
    WALK — Dong-hyun Pi awarded 1B.
  --- Now batting: Hung-wen Chiu ---
  [1 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | 1B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [1 outs | 1-1 | 1B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [1 outs | 1-2 | 1B] FOUL
    Foul ball. Count: 1-2.
  [1 outs | 1-2 | 1B] BALL
    Ball 2. Count: 2-2.
  [1 outs | 2-2 | 1B] STOLEN BASE ATTEMPT
    Runner caught stealing at 2B.
  [2 outs | 2-2 | empty] BALL
    Ball 3. Count: 3-2.
  [2 outs | 3-2 | empty] BALL IN PLAY
    Hung-wen Chiu runs → double.
  --- Now batting: Sheng Fu ---
  [2 outs | 0-0 | 2B] BALL IN PLAY
    Sheng Fu runs → single.
    Runner at 2B thrown out.
  --- Now batting: Tae-woo Wang ---
  [3 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [3 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [3 outs | 1-1 | 1B] BALL
    Ball 2. Count: 2-1.
  [3 outs | 2-1 | 1B] BALL
    Ball 3. Count: 3-1.
  [3 outs | 3-1 | 1B] FOUL
    Foul ball. Count: 3-2.
  [3 outs | 3-2 | 1B] BALL IN PLAY
    Tae-woo Wang runs → single.
    Runner at 1B thrown out.
  --- Now batting: Daichi Hachimura ---
  [4 outs | 0-0 | 1B] BALL IN PLAY
    Daichi Hachimura runs → single.
    Runner advances from 1B to 2B.
  [4 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Patrick Rogersov for an extra plate appearance (joker #1).
  --- Now batting: Patrick Rogersov ---
  [4 outs | 0-0 | 1B, 2B] FOUL
    Foul ball. Count: 0-1.
  [4 outs | 0-1 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [4 outs | 0-2 | 1B, 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [4 outs | 0-2 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [5 outs | 0-0 | 2B, 3B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Yasufumi Aoki for an extra plate appearance (joker #2).
  --- Now batting: Yasufumi Aoki ---
  [5 outs | 0-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [5 outs | 0-1 | 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [5 outs | 1-1 | 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [5 outs | 1-2 | 2B, 3B] BALL
    Ball 2. Count: 2-2.
  [5 outs | 2-2 | 2B, 3B] BALL IN PLAY
    Yasufumi Aoki runs → double.
    Runner scores from 3B.
    Runner scores from 2B.
  [5 outs | 0-0 | 2B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Bounmy Sananikone for an extra plate appearance (joker #3).
  --- Now batting: Bounmy Sananikone ---
  [5 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [5 outs | 0-1 | 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
  [5 outs | 0-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [5 outs | 0-2 | 3B] BALL
    Ball 1. Count: 1-2.
  [5 outs | 1-2 | 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Boy Navarro ---
  [6 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [6 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [6 outs | 0-2 | 3B] BALL IN PLAY
    Boy Navarro runs → single.
    Runner at 3B thrown out.
  --- Now batting: Haru Isomura ---
  [7 outs | 0-0 | 1B] BALL IN PLAY
    Haru Isomura runs → ground out.
    Haru Isomura is out.
    Runner advances from 1B to 2B.
  --- Now batting: Dong-hyun Kwak [P] ---
  [8 outs | 0-0 | 2B] BALL IN PLAY
    Dong-hyun Kwak runs → fielder's choice.
    Runner at 2B thrown out.
  --- Now batting: Shigeru Hirano ---
  [9 outs | 0-0 | 1B] BALL IN PLAY
    Shigeru Hirano runs → line out.
    Shigeru Hirano is out.
  --- Now batting: Dong-hyun Pi ---
  [10 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [10 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [10 outs | 2-0 | 1B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [10 outs | 2-1 | 1B] BALL IN PLAY
    Dong-hyun Pi runs → ground out.
    Dong-hyun Pi is out.
  [11 outs | 0-0 | 1B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Patrick Rogersov for an extra plate appearance (joker #4).
  --- Now batting: Patrick Rogersov ---
  [11 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [11 outs | 0-1 | 1B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [11 outs | 0-2 | 1B] BALL
    Ball 1. Count: 1-2.
  [11 outs | 1-2 | 1B] BALL IN PLAY
    Patrick Rogersov runs → fly out.
    Patrick Rogersov is out.
  --- Now batting: Hung-wen Chiu ---
  [12 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [12 outs | 0-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [12 outs | 0-2 | 1B] BALL
    Ball 1. Count: 1-2.
  [12 outs | 1-2 | 1B] BALL
    Ball 2. Count: 2-2.
  [12 outs | 2-2 | 1B] BALL IN PLAY
    Hung-wen Chiu runs → double.
    Runner advances from 1B to 3B.
  [12 outs | 0-0 | 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Valery Nedelko exits (16 BF this spell).
  --- Now batting: Sheng Fu ---
  [12 outs | 0-0 | 2B, 3B] INTENTIONAL WALK
    INTENTIONAL WALK — Sheng Fu given a free pass.
  [12 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Naga Selvaraj pinch-runs for Hung-wen Chiu at 2B.
  --- Now batting: Tae-woo Wang ---
  [12 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [12 outs | 0-1 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [12 outs | 1-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [12 outs | 1-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [12 outs | 1-2 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [13 outs | 0-0 | 1B, 2B, 3B] PINCH HITTER
    Amir Lee pinch-hits for Daichi Hachimura.
  [13 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Faisal Hassan pinch-runs for Dong-hyun Kwak at 3B.
  --- Now batting: Amir Lee ---
  [13 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [13 outs | 1-0 | 1B, 2B, 3B] BALL IN PLAY
    Amir Lee takes a SECOND CHANCE at the plate.
    Hit credited (second chance). Total this AB: 1.
    Second chance — fresh 0-0 count.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  [13 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [13 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [13 outs | 3-1 | 2B] FOUL
    Foul ball. Count: 3-2.
  [13 outs | 3-2 | 2B] FOUL
    Foul ball. Count: 3-2.
  [13 outs | 3-2 | 2B] BALL IN PLAY
    Amir Lee runs → single.
    Runner at 2B thrown out.
  [14 outs | 0-0 | 1B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Yasufumi Aoki for an extra plate appearance (joker #5).
  --- Now batting: Yasufumi Aoki ---
  [14 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [14 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [14 outs | 2-0 | 1B] BALL IN PLAY
    Yasufumi Aoki runs → double.
    Runner scores from 1B.
  [14 outs | 0-0 | 2B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Bounmy Sananikone for an extra plate appearance (joker #6).
  --- Now batting: Bounmy Sananikone ---
  [14 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [14 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [14 outs | 1-1 | 2B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [14 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [14 outs | 2-2 | 2B] BALL IN PLAY
    Bounmy Sananikone runs → ground out.
    Bounmy Sananikone is out.
  [15 outs | 0-0 | 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  --- Now batting: Boy Navarro ---
  [15 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [15 outs | 1-0 | 3B] BALL IN PLAY
    Boy Navarro runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Boy Navarro retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Studebaker.]
  --- Now batting: Haru Isomura ---
  [15 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [15 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [15 outs | 0-2 | 3B] BALL IN PLAY
    Haru Isomura runs → single.
    Runner scores from 3B.
  --- Now batting: Faisal Hassan ---
  [15 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [15 outs | 1-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [15 outs | 1-1 | 1B] FOUL
    Foul ball. Count: 1-2.
  [15 outs | 1-2 | 1B] BALL
    Ball 2. Count: 2-2.
  [15 outs | 2-2 | 1B] FOUL
    Foul ball. Count: 2-2.
  [15 outs | 2-2 | 1B] BALL
    Ball 3. Count: 3-2.
  [15 outs | 3-2 | 1B] BALL
    WALK — Faisal Hassan awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Shigeru Hirano ---
  [15 outs | 0-0 | 1B, 2B] HIT BY PITCH
    HBP — Shigeru Hirano awarded 1B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Dong-hyun Pi ---
  [15 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Dong-hyun Pi runs → single.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner advances from 1B to 3B.
  [15 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Patrick Rogersov for an extra plate appearance (joker #7).
  --- Now batting: Patrick Rogersov ---
  [15 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [15 outs | 1-0 | 1B, 3B] FOUL
    Foul ball. Count: 1-1.
  [15 outs | 1-1 | 1B, 3B] BALL
    Ball 2. Count: 2-1.
  [15 outs | 2-1 | 1B, 3B] FOUL
    Foul ball. Count: 2-2.
  [15 outs | 2-2 | 1B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  [16 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Yasufumi Aoki for an extra plate appearance (joker #8).
  --- Now batting: Yasufumi Aoki ---
  [16 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [16 outs | 1-0 | 1B, 3B] FOUL
    Foul ball. Count: 1-1.
  [16 outs | 1-1 | 1B, 3B] FOUL
    Foul ball. Count: 1-2.
  [16 outs | 1-2 | 1B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  [17 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Bounmy Sananikone for an extra plate appearance (joker #9).
  --- Now batting: Bounmy Sananikone ---
  [17 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [17 outs | 1-0 | 1B, 3B] HIT BY PITCH
    HBP — Bounmy Sananikone awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Naga Selvaraj ---
  [17 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Naga Selvaraj takes a SECOND CHANCE — but is OUT (2-strike contact or caught fly).
    Runner at 3B thrown out.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  [19 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Morris Rimando exits (14 BF this spell).
  [19 outs | 0-0 | 2B] DEFENSIVE SUB
    Dmitry Kuzyayev replaces Kyrylo Tkachenko at C.
  --- Now batting: Sheng Fu ---
  [19 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [19 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [19 outs | 1-1 | 2B] FOUL
    Foul ball. Count: 1-2.
  [19 outs | 1-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Tae-woo Wang ---
  [20 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [20 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [20 outs | 2-0 | 2B] FOUL
    Foul ball. Count: 2-1.
  [20 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [20 outs | 3-1 | 2B] BALL
    WALK — Tae-woo Wang awarded 1B.
  --- Now batting: Amir Lee ---
  [20 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [20 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [20 outs | 1-1 | 1B, 2B] BALL IN PLAY
    Amir Lee runs → fielder's choice.
    Runner at 2B thrown out.
    Runner advances from 1B to 2B.
  --- Now batting: Boy Navarro ---
  [21 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [21 outs | 1-0 | 1B, 2B] BALL IN PLAY
    Boy Navarro runs → ground out.
    Boy Navarro is out.
    Runner at 2B thrown out.
    Runner advances from 1B to 2B.
  --- Now batting: Haru Isomura ---
  [23 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [23 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [23 outs | 2-0 | 2B] BALL
    Ball 3. Count: 3-0.
  [23 outs | 3-0 | 2B] BALL
    WALK — Haru Isomura awarded 1B.
  --- Now batting: Faisal Hassan ---
  [23 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [23 outs | 1-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [23 outs | 1-1 | 1B, 2B] BALL
    Ball 2. Count: 2-1.
  [23 outs | 2-1 | 1B, 2B] FOUL
    Foul ball. Count: 2-2.
  [23 outs | 2-2 | 1B, 2B] BALL
    Ball 3. Count: 3-2.
  [23 outs | 3-2 | 1B, 2B] BALL
    WALK — Faisal Hassan awarded 1B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [23 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Damdinsuren Orkhon pinch-runs for Amir Lee at 3B.
  --- Now batting: Shigeru Hirano ---
  [23 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [23 outs | 1-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-1.
  [23 outs | 1-1 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [23 outs | 1-2 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-2.
  [23 outs | 2-2 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Dong-hyun Pi ---
  [24 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [24 outs | 0-1 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [24 outs | 1-1 | 1B, 2B, 3B] BALL IN PLAY
    Dong-hyun Pi runs → error.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  [24 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Patrick Rogersov for an extra plate appearance (joker #10).
  --- Now batting: Patrick Rogersov ---
  [24 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [24 outs | 0-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [24 outs | 0-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [24 outs | 0-2 | 1B, 2B, 3B] BALL IN PLAY
    Patrick Rogersov runs → single.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [24 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Yasufumi Aoki for an extra plate appearance (joker #11).
  --- Now batting: Yasufumi Aoki ---
  [24 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [24 outs | 1-0 | 1B, 2B, 3B] BALL IN PLAY
    Yasufumi Aoki takes a SECOND CHANCE at the plate.
    Hit credited (second chance). Total this AB: 1.
    Second chance — fresh 0-0 count.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [24 outs | 1-1 | 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [24 outs | 2-1 | 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [24 outs | 3-1 | 2B, 3B] BALL
    WALK — Yasufumi Aoki awarded 1B.
  [24 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Quatre Bornes Sovereigns sends in joker Bounmy Sananikone for an extra plate appearance (joker #12).
  --- Now batting: Bounmy Sananikone ---
  [24 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [24 outs | 1-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [24 outs | 1-1 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [24 outs | 1-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [24 outs | 1-2 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-2.
  [24 outs | 2-2 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-2.
  [24 outs | 3-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 3-2.
  [24 outs | 3-2 | 1B, 2B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Naga Selvaraj ---
  [25 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [25 outs | 0-1 | 1B, 2B, 3B] BALL IN PLAY
    Naga Selvaraj runs → fly out.
    Naga Selvaraj is out.
    Runner scores from 3B.
  --- Now batting: Sheng Fu ---
  [26 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Sheng Fu runs → fielder's choice.
    Runner at 2B thrown out.
    Runner advances from 1B to 2B.

  End of top half — Quatre Bornes Sovereigns: 15 run(s), 15 hit(s), 27 out(s) | Run rate: 0.556
  ============================================================
  HALFTIME
    Quatre Bornes Sovereigns: 15 run(s)
    Nevelsk Hardware need 16 run(s) to win
    Required run rate: 0.593 R/out
  ============================================================

  ────────────────────────────────────────────────────────────
  BOTTOM HALF | Nevelsk Hardware batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Andrei Kurbanov ---
  [0 outs | 0-0 | empty] BALL IN PLAY
    Andrei Kurbanov runs → single.
  --- Now batting: Philipp Rakhimova ---
  [0 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [0 outs | 0-1 | 1B] FOUL
    Foul ball. Count: 0-2.
  [0 outs | 0-2 | 1B] BALL
    Ball 1. Count: 1-2.
  [0 outs | 1-2 | 1B] FOUL
    Foul ball. Count: 1-2.
  [0 outs | 1-2 | 1B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Denis Kurbanov ---
  [1 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [1 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [1 outs | 1-1 | 1B] FOUL
    Foul ball. Count: 1-2.
  [1 outs | 1-2 | 1B] FOUL
    Foul ball. Count: 1-2.
  [1 outs | 1-2 | 1B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Igor Gabashvili ---
  [2 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [2 outs | 0-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [2 outs | 0-2 | 1B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [3 outs | 0-2 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Fabio Golovanov ---
  [4 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [4 outs | 0-1 | empty] BALL IN PLAY
    Fabio Golovanov runs → fly out.
    Fabio Golovanov is out.
  --- Now batting: Dmitry Kuzyayev ---
  [5 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [5 outs | 1-0 | empty] BALL
    Ball 2. Count: 2-0.
  [5 outs | 2-0 | empty] BALL
    Ball 3. Count: 3-0.
  [5 outs | 3-0 | empty] BALL
    WALK — Dmitry Kuzyayev awarded 1B.
  --- Now batting: Aleksei Jidkova ---
  [5 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [5 outs | 0-1 | 1B] FOUL
    Foul ball. Count: 0-2.
  [5 outs | 0-2 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Maksim Dyupin ---
  [6 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [6 outs | 0-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [6 outs | 0-2 | 1B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [7 outs | 0-0 | 1B] JOKER INSERTION
    Nevelsk Hardware sends in joker Valeri Strelkov for an extra plate appearance (joker #1).
  --- Now batting: Valeri Strelkov ---
  [7 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [7 outs | 0-1 | 1B] FOUL
    Foul ball. Count: 0-2.
  [7 outs | 0-2 | 1B] FOUL OUT
    Foul ball. Count: 0-0.
  [8 outs | 0-0 | 1B] JOKER INSERTION
    Nevelsk Hardware sends in joker Petr Kazionova for an extra plate appearance (joker #2).
  --- Now batting: Petr Kazionova ---
  [8 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [8 outs | 0-1 | 1B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [8 outs | 0-2 | 1B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [9 outs | 0-2 | empty] BALL IN PLAY
    Petr Kazionova runs → single.
  [9 outs | 0-0 | 1B] JOKER INSERTION
    Nevelsk Hardware sends in joker Mykhailo Olijnyk for an extra plate appearance (joker #3).
  --- Now batting: Mykhailo Olijnyk ---
  [9 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [9 outs | 0-1 | 1B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [10 outs | 0-1 | empty] CALLED STRIKE
    Strike (called). Count: 0-2.
  [10 outs | 0-2 | empty] BALL
    Ball 1. Count: 1-2.
  [10 outs | 1-2 | empty] BALL
    Ball 2. Count: 2-2.
  [10 outs | 2-2 | empty] BALL
    Ball 3. Count: 3-2.
  [10 outs | 3-2 | empty] BALL
    WALK — Mykhailo Olijnyk awarded 1B.
  --- Now batting: Valery Nedelko [P] ---
  [10 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [10 outs | 1-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [10 outs | 1-1 | 1B] BALL
    Ball 2. Count: 2-1.
  [10 outs | 2-1 | 1B] BALL
    Ball 3. Count: 3-1.
  [10 outs | 3-1 | 1B] BALL
    WALK — Valery Nedelko awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Andrei Kurbanov ---
  [10 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [10 outs | 1-0 | 1B, 2B] BALL IN PLAY
    Andrei Kurbanov runs → line out.
    Andrei Kurbanov is out.
  --- Now batting: Philipp Rakhimova ---
  [11 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 1B, 2B] BALL
    Ball 2. Count: 2-0.
  [11 outs | 2-0 | 1B, 2B] BALL IN PLAY
    Philipp Rakhimova runs → error.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Denis Kurbanov ---
  [11 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [11 outs | 2-0 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-0.
  [11 outs | 3-0 | 1B, 2B, 3B] BALL
    WALK — Denis Kurbanov awarded 1B.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Igor Gabashvili ---
  [11 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [11 outs | 1-1 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [11 outs | 2-1 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [11 outs | 3-1 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 3-2.
  [11 outs | 3-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 3-2.
  [11 outs | 3-2 | 1B, 2B, 3B] BALL
    WALK — Igor Gabashvili awarded 1B.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Fabio Golovanov ---
  [11 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Fabio Golovanov runs → double play.
    Fabio Golovanov is out.
    Runner at 1B thrown out.
  --- Now batting: Dmitry Kuzyayev ---
  [13 outs | 0-0 | 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [13 outs | 0-1 | 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [13 outs | 1-1 | 2B, 3B] BALL IN PLAY
    Dmitry Kuzyayev runs → fly out.
    Dmitry Kuzyayev is out.
  --- Now batting: Aleksei Jidkova ---
  [14 outs | 0-0 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [14 outs | 0-1 | 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [14 outs | 1-1 | 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [14 outs | 2-1 | 2B, 3B] BALL IN PLAY
    Aleksei Jidkova runs → fly out.
    Aleksei Jidkova is out.
  --- Now batting: Maksim Dyupin ---
  [15 outs | 0-0 | 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [15 outs | 0-1 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [15 outs | 0-2 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [15 outs | 0-2 | 2B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  [16 outs | 0-0 | 2B, 3B] JOKER INSERTION
    Nevelsk Hardware sends in joker Valeri Strelkov for an extra plate appearance (joker #4).
  --- Now batting: Valeri Strelkov ---
  [16 outs | 0-0 | 2B, 3B] BALL IN PLAY
    Valeri Strelkov takes a SECOND CHANCE at the plate.
    Hit credited (second chance). Total this AB: 1.
    Second chance — fresh 0-0 count.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
  [16 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [16 outs | 1-1 | 3B] BALL
    Ball 2. Count: 2-1.
  [16 outs | 2-1 | 3B] FOUL
    Foul ball. Count: 2-2.
  [16 outs | 2-2 | 3B] FOUL
    Foul ball. Count: 2-2.
  [16 outs | 2-2 | 3B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Valery Nedelko [P] ---
  [17 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [17 outs | 1-0 | 3B] BALL IN PLAY
    Valery Nedelko runs → double play.
    Valery Nedelko is out.
    Runner at 3B thrown out.
  [19 outs | 0-0 | empty] DEFENSIVE SUB
    Kuo-hua Chan replaces Shigeru Hirano at SS.
  --- Now batting: Andrei Kurbanov ---
  [19 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [19 outs | 0-1 | empty] CALLED STRIKE
    Strike (called). Count: 0-2.
  [19 outs | 0-2 | empty] FOUL
    Foul ball. Count: 0-2.
  [19 outs | 0-2 | empty] BALL IN PLAY
    Andrei Kurbanov runs → fly out.
    Andrei Kurbanov is out.
  --- Now batting: Philipp Rakhimova ---
  [20 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [20 outs | 0-1 | empty] FOUL
    Foul ball. Count: 0-2.
  [20 outs | 0-2 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Denis Kurbanov ---
  [21 outs | 0-0 | empty] BALL IN PLAY
    Denis Kurbanov runs → fielder's choice.
  --- Now batting: Igor Gabashvili ---
  [21 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [21 outs | 1-0 | 1B] BALL IN PLAY
    Igor Gabashvili runs → single.
    Runner at 1B thrown out.
  --- Now batting: Fabio Golovanov ---
  [22 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [22 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [22 outs | 2-0 | 1B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [22 outs | 2-1 | 1B] BALL
    Ball 3. Count: 3-1.
  [22 outs | 3-1 | 1B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 1B to 2B.
  [22 outs | 3-1 | 2B] BALL
    WALK — Fabio Golovanov awarded 1B.
  --- Now batting: Dmitry Kuzyayev ---
  [22 outs | 0-0 | 1B, 2B] FOUL
    Foul ball. Count: 0-1.
  [22 outs | 0-1 | 1B, 2B] FOUL
    Foul ball. Count: 0-2.
  [22 outs | 0-2 | 1B, 2B] BALL IN PLAY
    Dmitry Kuzyayev runs → line out.
    Dmitry Kuzyayev is out.
  [23 outs | 0-0 | 1B, 2B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  --- Now batting: Aleksei Jidkova ---
  [24 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [24 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [24 outs | 1-1 | 2B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [24 outs | 1-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Maksim Dyupin ---
  [25 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [25 outs | 0-1 | 2B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 2B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Valery Nedelko [P] ---
  [26 outs | 0-0 | 2B] BALL IN PLAY
    Valery Nedelko runs → line out.
    Valery Nedelko is out.

  End of bottom half — Nevelsk Hardware: 3 run(s), 4 hit(s), 27 out(s) | Run rate: 0.111

  ============================================================
  GAME OVER: QUATRE BORNES SOVEREIGNS WIN 15–3
  ============================================================
  Final score: Quatre Bornes Sovereigns 15, Nevelsk Hardware 3
  ============================================================
  LINE SCORE
                          1      R
  Quatre Bornes Sovereigns     15     15
  Nevelsk Hardware        3      3

  ============================================================
  QUATRE BORNES SOVEREIGNS BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Dong-hyun Kwak          1    1    0    0    0    0    0     0    0    0    0    0     0    0
  Kuo-hua Chan            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Shigeru Hirano          4    3    1    0    0    0    0     0    0    1    1    0     0    0
  Kheng Leong             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Pepe Angeles            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Junzo Imanishi          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Boy Navarro             3    3    2    2    0    0    1     2    0    0    0    0     0    0
  Naga Selvaraj           2    2    1    0    0    0    0     2    0    0    0    0     0    0
  Hung-wen Chiu           2    2    0    2    2    0    0     0    0    0    0    0     0    0
  Patrick Rogersov        4    4    0    1    0    0    0     1    0    1    0    0     0    0
  Yasufumi Aoki           4    3    1    3    2    0    0     4    1    0    0    1     1    0
  Bounmy Sananikone       4    3    0    0    0    0    0     0    0    1    1    0     0    0
  Amir Lee                2    2    1    2    0    0    0     2    0    0    0    1     2    1
  Junior Berry-Johnsonov    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Joel Snoeijsov          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Seymour Haulcy          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Nate Sullivanov         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sheng Fu                4    3    0    1    0    0    0     0    1    1    0    0     0    0
  Faisal Hassan           2    0    3    0    0    0    0     0    2    0    0    0     0    0
  Sodnomdarjaa Gobi       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Junzo Miyagi            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Daichi Hachimura        1    1    1    1    0    0    0     0    0    0    0    0     0    0
  Damdinsuren Orkhon      0    0    1    0    0    0    0     0    0    0    0    0     0    0
  Dong-hyun Pi            4    3    1    1    0    0    0     3    1    0    0    0     0    0
  Tae-woo Wang            3    2    1    1    0    0    0     0    1    1    0    0     0    0
  Ha-jun Gil              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yūichi Yonemura         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rikuto Maeda            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Michael Magsaysay       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hyung-jun Yoon          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Erick Palacios          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Chien-hao Yu            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Otgonbat Munkhbayar     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dashdorj Uitumen        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hubert Volynets         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Toshihiro Hara          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Arif bin Yusof          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dong-gun Jeong          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Chien-fu Chang          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yung-chi Yang           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jong-su Kwon            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Quế Bui                 0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Haru Isomura            3    2    2    1    0    0    0     1    1    0    0    0     0    0
  Khairul Kamal           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 43   34   15   15    4    0    1    15    7    5    2    2     3    1

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Dong-hyun Kwak         31   27    4    3    6    6    0

  ============================================================
  NEVELSK HARDWARE BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Valery Nedelko          3    2    1    0    0    0    0     0    1    0    0    0     0    0
  Aslan Korolev           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Andrei Kurbanov         3    3    0    1    0    0    0     0    0    0    0    0     0    0
  Yaroslav Lypovyy        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dev Mehta               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Igor Gabashvili         3    2    0    1    0    0    0     1    1    1    0    0     0    0
  Bogdan Zvonareva        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kyrylo Tkachenko        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Petr Kazionova          1    1    0    1    0    0    0     0    0    0    0    0     0    0
  Valeri Strelkov         2    2    0    1    0    0    0     1    0    0    0    1     1    0
  Mykhailo Olijnyk        1    0    1    0    0    0    0     0    1    0    0    0     0    0
  Denis Kurbanov          3    2    0    0    0    0    0     1    1    0    0    0     0    0
  Aleksei Jidkova         3    3    0    0    0    0    0     0    0    2    0    0     0    0
  Maksim Dyupin           3    3    0    0    0    0    0     0    0    2    0    0     0    0
  Devon Parkerov          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Beals Vines-Bright      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kirill Jidkova          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Fabio Golovanov         3    2    0    0    0    0    0     0    1    0    0    0     0    0
  Evgenii Rodina          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kyle Segurin            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mikhail Lazarev         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dmitry Kuzyayev         3    2    0    0    0    0    0     0    1    0    0    0     0    0
  Fabio Kornienko         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Philipp Rakhimova       3    3    1    0    0    0    0     0    0    1    0    0     0    0
  Pablo Edwards           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Andrei Marfinsky        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Taishi Moroishi         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Coniah Mirandin         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Taras Kuznetsov         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Fabio Ionov             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Konstantin Bukhanko     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Aleksandr Pugaev        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Pavlo Gerun             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Al Bissainthe           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Karen Chernov           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Stanislav Lutrova       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sergei Petrov           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Magomed Marfinsky       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kendrick Liu            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Morris Rimando          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kennedy Kourouma        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Andrei Kudryavtsev      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Grigory Kotov           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Riley Estesov           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 31   25    3    4    0    0    0     3    6    6    0    1     1    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Valery Nedelko         16   12    7    2    1    2    0
  Morris Rimando         14    7    6    9    2    1    2
  Magomed Marfinsky      13    8    2    4    4    2    0

  ============================================================
  Run rate:  Quatre Bornes Sovereigns  0.556    Nevelsk Hardware  0.111
  Second-Chance ABs:  Quatre Bornes Sovereigns  2    Nevelsk Hardware  1
  IBB (Quatre Bornes Sovereigns): Sheng Fu.
  Required run rate (Nevelsk Hardware): 0.593 R/out (needed 16 runs in 27 outs)
  ============================================================
  ============================================================
  PARTNERSHIP LOG
  Batter 1              Batter 2                Runs  Half
  ──────────────────────────────────────────────────────────────────
  Shigeru Hirano        Dong-hyun Pi               0  top
  Dong-hyun Pi          Hung-wen Chiu              0  top
  Hung-wen Chiu         Sheng Fu                   0  top
  Sheng Fu              Patrick Rogersov           0  top
  Patrick Rogersov      Bounmy Sananikone          2  top
  Bounmy Sananikone     Yasufumi Aoki              0  top
  Yasufumi Aoki         Haru Isomura               0  top
  Haru Isomura          Boy Navarro                0  top
  Boy Navarro           Shigeru Hirano             0  top
  Shigeru Hirano        Dong-hyun Pi               0  top
  Dong-hyun Pi          Patrick Rogersov           0  top
  Patrick Rogersov      Tae-woo Wang               0  top
  Tae-woo Wang          Sheng Fu                   2  top
  Sheng Fu              Bounmy Sananikone          1  top
  Bounmy Sananikone     Patrick Rogersov           5  top
  Patrick Rogersov      Yasufumi Aoki              0  top
  Yasufumi Aoki         Shigeru Hirano             1  top
  Shigeru Hirano        Naga Selvaraj              0  top
  Naga Selvaraj         Sheng Fu                   0  top
  Sheng Fu              Bounmy Sananikone          0  top
  Bounmy Sananikone     Tae-woo Wang               0  top
  Tae-woo Wang          Boy Navarro                0  top
  Boy Navarro           Shigeru Hirano             0  top
  Shigeru Hirano        Bounmy Sananikone          3  top
  Bounmy Sananikone     Naga Selvaraj              1  top
  Naga Selvaraj         Patrick Rogersov           0  top
  Philipp Rakhimova     Denis Kurbanov             0  bottom
  Denis Kurbanov        Andrei Kurbanov            0  bottom
  Andrei Kurbanov       Igor Gabashvili            0  bottom
  Igor Gabashvili       Fabio Golovanov            0  bottom
  Fabio Golovanov       Aleksei Jidkova            0  bottom
  Aleksei Jidkova       Maksim Dyupin              0  bottom
  Maksim Dyupin         Valeri Strelkov            0  bottom
  Valeri Strelkov       Dmitry Kuzyayev            0  bottom
  Dmitry Kuzyayev       Petr Kazionova             0  bottom
  Petr Kazionova        Andrei Kurbanov            0  bottom
  Andrei Kurbanov       Igor Gabashvili            2  bottom
  Igor Gabashvili       Fabio Golovanov            0  bottom
  Fabio Golovanov       Dmitry Kuzyayev            0  bottom
  Dmitry Kuzyayev       Aleksei Jidkova            0  bottom
  Aleksei Jidkova       Maksim Dyupin              0  bottom
  Maksim Dyupin         Valeri Strelkov            1  bottom
  Valeri Strelkov       Denis Kurbanov             0  bottom
  Denis Kurbanov        Valery Nedelko             0  bottom
  Valery Nedelko        Andrei Kurbanov            0  bottom
  Andrei Kurbanov       Philipp Rakhimova          0  bottom
  Philipp Rakhimova     Denis Kurbanov             0  bottom
  Denis Kurbanov        Dmitry Kuzyayev            0  bottom
  Dmitry Kuzyayev       Fabio Golovanov            0  bottom
  Fabio Golovanov       Aleksei Jidkova            0  bottom
  Aleksei Jidkova       Maksim Dyupin              0  bottom
  Maksim Dyupin         Valery Nedelko             0  bottom
  ──────────────────────────────────────────────────────────────────
  Total partnerships: 52  |  Avg runs/partnership: 0.35
  ============================================================
  PITCHER SPELL LOG
  Pitcher               Half         PA#   BF  OUT    R    H   BB    K  HBP
  ──────────────────────────────────────────────────────────────────────────
  Valery Nedelko        top            1   16   12     2     7     1     2     0
  Morris Rimando        top           17   14    7     9     6     2     1     2
  Magomed Marfinsky     top           31   13    8     4     2     4     2     0
  Dong-hyun Kwak        bottom         1   31   27     3     4     6     6     0
  ──────────────────────────────────────────────────────────────────────────
  Total spells: 4


pbp_text:
  ────────────────────────────────────────────────────────────
  BOTTOM HALF | Kraków Royal Marines batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Justin Richard ---
  [0 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [0 outs | 0-1 | empty] BALL
    Ball 1. Count: 1-1.
  [0 outs | 1-1 | empty] BALL
    Ball 2. Count: 2-1.
  [0 outs | 2-1 | empty] BALL IN PLAY
    Justin Richard runs → HOME RUN.
    Batter scores (HR).
    [Walk-Back — Justin Richard retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Studebaker.]
  --- Now batting: Olle Norberg ---
  [0 outs | 0-0 | 3B] BALL IN PLAY
    Olle Norberg runs → single.
    Runner scores from 3B.
  --- Now batting: Ledley Curran ---
  [0 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | 1B] BALL IN PLAY
    Ledley Curran runs → single.
    Runner advances from 1B to 2B.
  --- Now batting: Oliwier Peszko ---
  [0 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Oliwier Peszko runs → ground out.
    Oliwier Peszko is out.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [1 outs | 0-0 | 2B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 2B!
  --- Now batting: Yuri Vikhlyantseva ---
  [2 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 3B] BALL
    Ball 2. Count: 2-0.
  [2 outs | 2-0 | 3B] FOUL
    Foul ball. Count: 2-1.
  [2 outs | 2-1 | 3B] BALL
    Ball 3. Count: 3-1.
  [2 outs | 3-1 | 3B] FOUL
    Foul ball. Count: 3-2.
  [2 outs | 3-2 | 3B] BALL
    WALK — Yuri Vikhlyantseva awarded 1B.
  --- Now batting: Justus Tolói ---
  [2 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 1B, 3B] BALL
    Ball 2. Count: 2-0.
  [2 outs | 2-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [2 outs | 2-1 | 1B, 3B] FOUL
    Foul ball. Count: 2-2.
  [2 outs | 2-2 | 1B, 3B] BALL
    Ball 3. Count: 3-2.
  [2 outs | 3-2 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [3 outs | 0-0 | 1B, 3B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 2B.
  [3 outs | 0-0 | 2B, 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    1 run(s) score.
  --- Now batting: Moustapha Katoto ---
  [3 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [3 outs | 1-0 | 3B] FOUL
    Foul ball. Count: 1-1.
  [3 outs | 1-1 | 3B] BALL IN PLAY
    Moustapha Katoto runs → ground out.
    Moustapha Katoto is out.
    Runner scores from 3B.
  --- Now batting: Liam Martinsen ---
  [4 outs | 0-0 | empty] BALL IN PLAY
    Liam Martinsen runs → HOME RUN.
    Batter scores (HR).
    [Walk-Back — Liam Martinsen retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Lehman Brothers.]
  [4 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Hélder Castillo exits (8 BF this spell).
  [4 outs | 0-0 | 3B] JOKER INSERTION
    Kraków Royal Marines sends in joker Salvatore Carrera for an extra plate appearance (joker #1).
  --- Now batting: Salvatore Carrera ---
  [4 outs | 0-0 | 3B] INTENTIONAL WALK
    INTENTIONAL WALK — Salvatore Carrera given a free pass.
  [4 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Kraków Royal Marines sends in joker Will Mainoo for an extra plate appearance (joker #2).
  --- Now batting: Will Mainoo ---
  [4 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 1B, 3B] FOUL
    Foul ball. Count: 1-1.
  [4 outs | 1-1 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [4 outs | 1-2 | 1B, 3B] FOUL
    Foul ball. Count: 1-2.
  [4 outs | 1-2 | 1B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  [5 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Kraków Royal Marines sends in joker Donal Kelly for an extra plate appearance (joker #3).
  --- Now batting: Donal Kelly ---
  [5 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [5 outs | 1-0 | 1B, 3B] BALL
    Ball 2. Count: 2-0.
  [5 outs | 2-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [5 outs | 2-1 | 1B, 3B] FOUL
    Foul ball. Count: 2-2.
  [5 outs | 2-2 | 1B, 3B] BALL
    Ball 3. Count: 3-2.
  [5 outs | 3-2 | 1B, 3B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 2B.
  [5 outs | 3-2 | 2B, 3B] BALL IN PLAY
    Donal Kelly runs → ground out.
    Donal Kelly is out.
    Runner at 3B thrown out.
    Runner advances from 2B to 3B.
  --- Now batting: Kees Zimmermann [P] ---
  [7 outs | 0-0 | 3B] BALL IN PLAY
    Kees Zimmermann runs → single.
    Runner scores from 3B.
  --- Now batting: Justin Richard ---
  [7 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [7 outs | 0-1 | 1B] FOUL
    Foul ball. Count: 0-2.
  [7 outs | 0-2 | 1B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Olle Norberg ---
  [8 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [8 outs | 0-1 | 1B] BALL IN PLAY
    Olle Norberg runs → ground out.
    Olle Norberg is out.
    Runner advances from 1B to 2B.
  --- Now batting: Ledley Curran ---
  [9 outs | 0-0 | 2B] BALL IN PLAY
    Ledley Curran runs → ground out.
    Ledley Curran is out.
    Runner at 2B thrown out.
  --- Now batting: Oliwier Peszko ---
  [11 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [11 outs | 0-1 | empty] BALL IN PLAY
    Oliwier Peszko runs → fielder's choice.
  --- Now batting: Yuri Vikhlyantseva ---
  [11 outs | 0-0 | 1B] SAC BUNT
  [11 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Kraków Royal Marines sends in joker Salvatore Carrera for an extra plate appearance (joker #4).
  --- Now batting: Salvatore Carrera ---
  [11 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [11 outs | 0-1 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [11 outs | 0-2 | 1B, 2B] BALL IN PLAY
    Salvatore Carrera runs → double.
    Runner scores from 2B.
    Runner scores from 1B.
  --- Now batting: Justus Tolói ---
  [11 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [11 outs | 0-1 | 2B] BALL IN PLAY
    Justus Tolói runs → fielder's choice.
    Runner at 2B thrown out.
  --- Now batting: Moustapha Katoto ---
  [12 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [12 outs | 0-1 | 1B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [12 outs | 0-2 | 1B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 1B to 2B.
  [12 outs | 0-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Liam Martinsen ---
  [13 outs | 0-0 | 2B] BALL IN PLAY
    Liam Martinsen runs → single.
    Runner scores from 2B.
  [13 outs | 0-0 | 1B] JOKER INSERTION
    Kraków Royal Marines sends in joker Will Mainoo for an extra plate appearance (joker #5).
  --- Now batting: Will Mainoo ---
  [13 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [13 outs | 1-0 | 1B] FOUL
    Foul ball. Count: 1-1.
  [13 outs | 1-1 | 1B] BALL IN PLAY
    Will Mainoo runs → single.
    Runner at 1B thrown out.
  [14 outs | 0-0 | 1B] JOKER INSERTION
    Kraków Royal Marines sends in joker Donal Kelly for an extra plate appearance (joker #6).
  --- Now batting: Donal Kelly ---
  [14 outs | 0-0 | 1B] SAC BUNT
  [14 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Donal Kelly runs → line out.
    ROBBED! Finbar De Groot lays out for the diving grab — a hit turned into an out!
    Donal Kelly is out.
  --- Now batting: Justin Richard ---
  [15 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [15 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [15 outs | 1-1 | 1B, 2B] FOUL
    Foul ball. Count: 1-2.
  [15 outs | 1-2 | 1B, 2B] BALL
    Ball 2. Count: 2-2.
  [15 outs | 2-2 | 1B, 2B] BALL
    Ball 3. Count: 3-2.
  [15 outs | 3-2 | 1B, 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [15 outs | 3-2 | 2B, 3B] BALL IN PLAY
    Justin Richard runs → HOME RUN.
    Runner scores.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Justin Richard retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Kenner.]
  [15 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Wilmer Krafth exits (15 BF this spell).
  --- Now batting: Olle Norberg ---
  [15 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [15 outs | 0-1 | 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    1 run(s) score.
  [15 outs | 0-1 | empty] CALLED STRIKE
    Strike (called). Count: 0-2.
  [15 outs | 0-2 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Ledley Curran ---
  [16 outs | 0-0 | empty] BALL IN PLAY
    Ledley Curran runs → ground out.
    Ledley Curran is out.
  --- Now batting: Oliwier Peszko ---
  [17 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [17 outs | 0-1 | empty] BALL
    Ball 1. Count: 1-1.
  [17 outs | 1-1 | empty] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [17 outs | 1-2 | empty] HIT BY PITCH
    HBP — Oliwier Peszko awarded 1B.
  --- Now batting: Yuri Vikhlyantseva ---
  [17 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [17 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [17 outs | 2-0 | 1B] BALL
    Ball 3. Count: 3-0.
  [17 outs | 3-0 | 1B] BALL
    WALK — Yuri Vikhlyantseva awarded 1B.
    Runner advances from 1B to 2B.
  [17 outs | 0-0 | 1B, 2B] STOLEN BASE ATTEMPT
    Runner caught stealing at 3B.
  --- Now batting: Justus Tolói ---
  [18 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [18 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [18 outs | 1-1 | 1B] BALL
    Ball 2. Count: 2-1.
  [18 outs | 2-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 2-2.
  [18 outs | 2-2 | 1B] BALL
    Ball 3. Count: 3-2.
  [18 outs | 3-2 | 1B] FOUL
    Foul ball. Count: 3-2.
  [18 outs | 3-2 | 1B] BALL IN PLAY
    Justus Tolói runs → ground out.
    Justus Tolói is out.
    Runner advances from 1B to 2B.
  [19 outs | 0-0 | 2B] DEFENSIVE SUB
    Sébastien Gelabale replaces Cillian Burrows at C.
  --- Now batting: Moustapha Katoto ---
  [19 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [19 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [19 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [19 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [19 outs | 3-1 | 2B] BALL
    WALK — Moustapha Katoto awarded 1B.
  --- Now batting: Liam Martinsen ---
  [19 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | 1B, 2B] BALL IN PLAY
    Liam Martinsen runs → ground out.
    Liam Martinsen is out.
    Runner at 2B thrown out.
    Runner advances from 1B to 2B.
  [21 outs | 0-0 | 2B] JOKER INSERTION
    Kraków Royal Marines sends in joker Salvatore Carrera for an extra plate appearance (joker #7).
  --- Now batting: Salvatore Carrera ---
  [21 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [21 outs | 0-1 | 2B] BALL IN PLAY
    Salvatore Carrera runs → double.
    Runner scores from 2B.
  [21 outs | 0-0 | 2B] JOKER INSERTION
    Kraków Royal Marines sends in joker Will Mainoo for an extra plate appearance (joker #8).
  --- Now batting: Will Mainoo ---
  [21 outs | 0-0 | 2B] BALL IN PLAY
    Will Mainoo runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Will Mainoo retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Pontiac.]
  [21 outs | 0-0 | 3B] JOKER INSERTION
    Kraków Royal Marines sends in joker Donal Kelly for an extra plate appearance (joker #9).
  --- Now batting: Donal Kelly ---
  [21 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [21 outs | 1-0 | 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [21 outs | 1-1 | 3B] BALL IN PLAY
    Donal Kelly runs → double.
    Runner scores from 3B.
  --- Now batting: Kees Zimmermann [P] ---
  [21 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [21 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [21 outs | 2-0 | 2B] BALL
    Ball 3. Count: 3-0.
  [21 outs | 3-0 | 2B] BALL
    WALK — Kees Zimmermann awarded 1B.
  --- Now batting: Justin Richard ---
  [21 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [21 outs | 1-0 | 1B, 2B] FOUL
    Foul ball. Count: 1-1.
  [21 outs | 1-1 | 1B, 2B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [22 outs | 1-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [22 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [22 outs | 2-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Olle Norberg ---
  [23 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [23 outs | 1-0 | 2B] BALL IN PLAY
    Olle Norberg runs → ground out.
    Olle Norberg is out.
    Runner advances from 2B to 3B.
  --- Now batting: Ledley Curran ---
  [24 outs | 0-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [24 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [24 outs | 1-1 | 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [24 outs | 1-2 | 3B] FOUL
    Foul ball. Count: 1-2.
  [24 outs | 1-2 | 3B] BALL
    Ball 2. Count: 2-2.
  [24 outs | 2-2 | 3B] BALL IN PLAY
    Ledley Curran runs → single.
    Runner scores from 3B.
  --- Now batting: Oliwier Peszko ---
  [24 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [24 outs | 1-0 | 1B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 1B to 2B.
  [24 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [24 outs | 2-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 2-1.
  [24 outs | 2-1 | 2B] BALL IN PLAY
    Oliwier Peszko runs → double.
    Runner scores from 2B.
  [24 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Cillian Shiels exits (15 BF this spell).
  --- Now batting: Yuri Vikhlyantseva ---
  [24 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [24 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [24 outs | 1-1 | 2B] BALL IN PLAY
    Yuri Vikhlyantseva runs → line out.
    Yuri Vikhlyantseva is out.
  [25 outs | 0-0 | 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
  --- Now batting: Justus Tolói ---
  [25 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [25 outs | 0-1 | 3B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 3B] BALL IN PLAY
    Justus Tolói runs → double.
    Runner scores from 3B.
  --- Now batting: Moustapha Katoto ---
  [25 outs | 0-0 | 2B] BALL IN PLAY
    Moustapha Katoto runs → ground out.
    Moustapha Katoto is out.
    Runner at 2B thrown out.

  End of bottom half — Kraków Royal Marines: 20 run(s), 17 hit(s), 27 out(s) | Run rate: 0.741
  ============================================================
  HALFTIME
    Copenhagen Baseboll Klubb: 0 run(s)
    Kraków Royal Marines need 1 run(s) to win
    Required run rate: 0.037 R/out
  ============================================================

  ────────────────────────────────────────────────────────────
  TOP HALF | Copenhagen Baseboll Klubb batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Eoin Littlejohn ---
  [0 outs | 0-0 | empty] BALL IN PLAY
    Eoin Littlejohn runs → line out.
    Eoin Littlejohn is out.
  --- Now batting: Sébastien Gelabale ---
  [1 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [1 outs | 0-1 | empty] BALL IN PLAY
    Sébastien Gelabale runs → single.
  --- Now batting: Lorcan Connolly ---
  [1 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [1 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [1 outs | 1-1 | 1B] FOUL
    Foul ball. Count: 1-2.
  [1 outs | 1-2 | 1B] BALL
    Ball 2. Count: 2-2.
  [1 outs | 2-2 | 1B] BALL
    Ball 3. Count: 3-2.
  [1 outs | 3-2 | 1B] FOUL
    Foul ball. Count: 3-2.
  [1 outs | 3-2 | 1B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Stephen Bardsley ---
  [2 outs | 0-0 | 1B] HIT BY PITCH
    HBP — Stephen Bardsley awarded 1B.
    Runner advances from 1B to 2B.
  [2 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Copenhagen Baseboll Klubb sends in joker Krzysztof Krychowiak for an extra plate appearance (joker #1).
  --- Now batting: Krzysztof Krychowiak ---
  [2 outs | 0-0 | 1B, 2B] HIT BY PITCH
    HBP — Krzysztof Krychowiak awarded 1B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [2 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Copenhagen Baseboll Klubb sends in joker Henrich Tóth for an extra plate appearance (joker #2).
  --- Now batting: Henrich Tóth ---
  [2 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Henrich Tóth runs → HOME RUN.
    Runner scores.
    Runner scores.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Henrich Tóth retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Quisp Cereal.]
  [2 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Kees Zimmermann exits (6 BF this spell).
  [2 outs | 0-0 | 3B] JOKER INSERTION
    Copenhagen Baseboll Klubb sends in joker Mesut Schulz for an extra plate appearance (joker #3).
  --- Now batting: Mesut Schulz ---
  [2 outs | 0-0 | 3B] BALL IN PLAY
    Mesut Schulz runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Mesut Schulz retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Pan American World Airways.]
  --- Now batting: Hélder Castillo [P] ---
  [2 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 3B] FOUL
    Foul ball. Count: 1-1.
  [2 outs | 1-1 | 3B] BALL
    Ball 2. Count: 2-1.
  [2 outs | 2-1 | 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    1 run(s) score.
  [2 outs | 2-1 | empty] BALL
    Ball 3. Count: 3-1.
  [2 outs | 3-1 | empty] BALL
    WALK — Hélder Castillo awarded 1B.
  --- Now batting: Sidney Brennan ---
  [2 outs | 0-0 | 1B] BALL IN PLAY
    Sidney Brennan runs → double.
    Runner scores from 1B.
  --- Now batting: Jens Risa ---
  [2 outs | 0-0 | 2B] BALL IN PLAY
    Jens Risa runs → line out.
    Jens Risa is out.
  [3 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Ruairidh MacMillan exits (4 BF this spell).
  --- Now batting: Emil Janogy ---
  [3 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [3 outs | 0-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [3 outs | 0-2 | 2B] FOUL
    Foul ball. Count: 0-2.
  [3 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [3 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [3 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [3 outs | 3-2 | 2B] FOUL
    Foul ball. Count: 3-2.
  [3 outs | 3-2 | 2B] BALL
    WALK — Emil Janogy awarded 1B.
  --- Now batting: Ernan Awoniyi ---
  [3 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [3 outs | 0-1 | 1B, 2B] BALL IN PLAY
    Ernan Awoniyi runs → fly out.
    ROBBED! Tok-chol Song runs it down — a sure extra-base hit erased!
    Ernan Awoniyi is out.
  --- Now batting: Eoin Littlejohn ---
  [4 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 1B, 2B] BALL
    Ball 2. Count: 2-0.
  [4 outs | 2-0 | 1B, 2B] BALL
    Ball 3. Count: 3-0.
  [4 outs | 3-0 | 1B, 2B] BALL
    WALK — Eoin Littlejohn awarded 1B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Sébastien Gelabale ---
  [4 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Sébastien Gelabale takes a SECOND CHANCE at the plate.
    Hit credited (second chance). Total this AB: 1.
    Second chance — fresh 0-0 count.
    Runner at 3B thrown out.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  [5 outs | 0-1 | 2B] BALL IN PLAY
    Sébastien Gelabale runs → double.
    Runner scores from 2B.
  --- Now batting: Lorcan Connolly ---
  [5 outs | 0-0 | 2B] BALL IN PLAY
    Lorcan Connolly runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Lorcan Connolly retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Burma-Shave.]
  [5 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Rakoto Randriamampionona exits (5 BF this spell).
  --- Now batting: Stephen Bardsley ---
  [5 outs | 0-0 | 3B] SAC BUNT
  [6 outs | 0-0 | empty] JOKER INSERTION
    Copenhagen Baseboll Klubb sends in joker Krzysztof Krychowiak for an extra plate appearance (joker #4).
  --- Now batting: Krzysztof Krychowiak ---
  [6 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [6 outs | 0-1 | empty] FOUL
    Foul ball. Count: 0-2.
  [6 outs | 0-2 | empty] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [7 outs | 0-0 | empty] JOKER INSERTION
    Copenhagen Baseboll Klubb sends in joker Henrich Tóth for an extra plate appearance (joker #5).
  --- Now batting: Henrich Tóth ---
  [7 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [7 outs | 1-0 | empty] BALL
    Ball 2. Count: 2-0.
  [7 outs | 2-0 | empty] BALL
    Ball 3. Count: 3-0.
  [7 outs | 3-0 | empty] BALL
    WALK — Henrich Tóth awarded 1B.
  [7 outs | 0-0 | 1B] JOKER INSERTION
    Copenhagen Baseboll Klubb sends in joker Mesut Schulz for an extra plate appearance (joker #6).
  --- Now batting: Mesut Schulz ---
  [7 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [7 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [7 outs | 1-1 | 1B] BALL
    Ball 2. Count: 2-1.
  [7 outs | 2-1 | 1B] BALL
    Ball 3. Count: 3-1.
  [7 outs | 3-1 | 1B] BALL IN PLAY
    Mesut Schulz runs → line out.
    Mesut Schulz is out.
  --- Now batting: Hélder Castillo [P] ---
  [8 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [8 outs | 2-0 | 1B] FOUL
    Foul ball. Count: 2-1.
  [8 outs | 2-1 | 1B] BALL
    Ball 3. Count: 3-1.
  [8 outs | 3-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 3-2.
  [8 outs | 3-2 | 1B] BALL
    WALK — Hélder Castillo awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Sidney Brennan ---
  [8 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Sidney Brennan runs → double play.
    Sidney Brennan is out.
    Runner advances from 2B to 3B.
    Runner at 1B thrown out.
  --- Now batting: Jens Risa ---
  [10 outs | 0-0 | 3B] BALL IN PLAY
    Jens Risa runs → fly out.
    Jens Risa is out.
    Runner scores from 3B.
  [11 outs | 0-0 | empty] PITCHING CHANGE
    PITCHING CHANGE: Gerard De Bruijn exits (6 BF this spell).
  --- Now batting: Emil Janogy ---
  [11 outs | 0-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [11 outs | 0-1 | empty] FOUL
    Foul ball. Count: 0-2.
  [11 outs | 0-2 | empty] FOUL
    Foul ball. Count: 0-2.
  [11 outs | 0-2 | empty] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Ernan Awoniyi ---
  [12 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [12 outs | 0-1 | empty] FOUL
    Foul ball. Count: 0-2.
  [12 outs | 0-2 | empty] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Eoin Littlejohn ---
  [13 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [13 outs | 1-0 | empty] BALL IN PLAY
    Eoin Littlejohn runs → single.
  --- Now batting: Sébastien Gelabale ---
  [13 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [13 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [13 outs | 2-0 | 1B] BALL IN PLAY
    Sébastien Gelabale runs → double.
    Runner scores from 1B.
  --- Now batting: Lorcan Connolly ---
  [13 outs | 0-0 | 2B] INTENTIONAL WALK
    INTENTIONAL WALK — Lorcan Connolly given a free pass.
  --- Now batting: Stephen Bardsley ---
  [13 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [13 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [13 outs | 1-1 | 1B, 2B] BALL IN PLAY
    Stephen Bardsley runs → line out.
    Stephen Bardsley is out.
  [14 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Copenhagen Baseboll Klubb sends in joker Krzysztof Krychowiak for an extra plate appearance (joker #7).
  --- Now batting: Krzysztof Krychowiak ---
  [14 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Krzysztof Krychowiak runs → ground out.
    Krzysztof Krychowiak is out.
    Runner at 2B thrown out.
    Runner advances from 1B to 2B.
  [16 outs | 0-0 | 2B] JOKER INSERTION
    Copenhagen Baseboll Klubb sends in joker Henrich Tóth for an extra plate appearance (joker #8).
  --- Now batting: Henrich Tóth ---
  [16 outs | 0-0 | 2B] BALL IN PLAY
    Henrich Tóth runs → single.
    Runner scores from 2B.
  [16 outs | 0-0 | 1B] PITCHING CHANGE
    PITCHING CHANGE: Aleš Růžička exits (8 BF this spell).
  --- Now batting: Hélder Castillo [P] ---
  [16 outs | 0-0 | 1B] SAC BUNT
  --- Now batting: Sidney Brennan ---
  [17 outs | 0-0 | 2B] HIT BY PITCH
    HBP — Sidney Brennan awarded 1B.
  --- Now batting: Jens Risa ---
  [17 outs | 0-0 | 1B, 2B] FOUL
    Foul ball. Count: 0-1.
  [17 outs | 0-1 | 1B, 2B] BALL IN PLAY
    Jens Risa runs → triple.
    Runner scores from 2B.
    Runner scores from 1B.
  --- Now batting: Emil Janogy ---
  [17 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [17 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [17 outs | 1-1 | 3B] BALL IN PLAY
    Emil Janogy runs → single.
    Runner scores from 3B.
  --- Now batting: Ernan Awoniyi ---
  [17 outs | 0-0 | 1B] BALL IN PLAY
    Ernan Awoniyi runs → line out.
    Ernan Awoniyi is out.
  [18 outs | 0-0 | 1B] PITCHING CHANGE
    PITCHING CHANGE: Tom Innocent exits (4 BF this spell).
  --- Now batting: Eoin Littlejohn ---
  [18 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [18 outs | 1-0 | 1B] BALL IN PLAY
    Eoin Littlejohn runs → ground out.
    Eoin Littlejohn is out.
    Runner advances from 1B to 2B.
  [19 outs | 0-0 | 2B] DEFENSIVE SUB
    Aidan Hughes replaces Liam Martinsen at CF.
  --- Now batting: Sébastien Gelabale ---
  [19 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [19 outs | 1-1 | 2B] BALL IN PLAY
    Sébastien Gelabale runs → line out.
    Sébastien Gelabale is out.
  [20 outs | 0-0 | 2B] JOKER INSERTION
    Copenhagen Baseboll Klubb sends in joker Mesut Schulz for an extra plate appearance (joker #9).
  --- Now batting: Mesut Schulz ---
  [20 outs | 0-0 | 2B] BALL IN PLAY
    Mesut Schulz runs → double.
    Runner scores from 2B.
  --- Now batting: Lorcan Connolly ---
  [20 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [20 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [20 outs | 2-0 | 2B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [20 outs | 2-1 | 2B] CALLED STRIKE
    Strike (called). Count: 2-2.
  [20 outs | 2-2 | 2B] BALL IN PLAY
    Lorcan Connolly runs → single.
    Runner scores from 2B.

  End of top half — Copenhagen Baseboll Klubb: 21 run(s), 14 hit(s), 20 out(s) | Run rate: 1.050

  ============================================================
  GAME OVER: COPENHAGEN BASEBOLL KLUBB WIN 21–20
  ============================================================
  Final score: Copenhagen Baseboll Klubb 21, Kraków Royal Marines 20
  ============================================================
  LINE SCORE
                          1      R
  Copenhagen Baseboll Klubb     21     21
  Kraków Royal Marines     20     20

  ============================================================
  COPENHAGEN BASEBOLL KLUBB BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Hélder Castillo         3    0    1    0    0    0    0     0    2    0    0    0     0    0
  Stephen Bardsley        3    1    1    0    0    0    0     1    0    0    1    0     0    0
  Stewart Lynn            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Farrukh Omari           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Emil Janogy             3    2    1    1    0    0    0     1    1    0    0    0     0    0
  Sébastien Gelabale      4    4    2    4    2    0    0     3    0    0    0    1     1    1
  Ernan Awoniyi           3    3    0    0    0    0    0     0    0    0    0    0     0    0
  Cillian Burrows         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Krzysztof Krychowiak    3    2    1    0    0    0    0     0    0    1    1    0     0    0
  Henrich Tóth            3    2    4    2    0    0    1     5    1    0    0    0     0    0
  Mesut Schulz            3    3    3    2    1    0    1     3    0    0    0    0     0    0
  Lorcan Connolly         4    3    3    2    0    0    1     3    1    1    0    0     0    0
  Jussi Mustonen          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Anton Danielsson        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jens Risa               3    3    1    1    0    1    0     3    0    0    0    0     0    0
  Finbar De Groot         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Joshua Krul             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Gioele Torrecilla       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Joakim Clausen          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Erik Halvorsen          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kees Kuijpers           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sidney Brennan          3    2    2    1    1    0    0     1    0    0    1    0     0    0
  Abdelatif Zorgane       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Eoin Littlejohn         4    3    2    1    0    0    0     0    1    0    0    0     0    0
  Oiva Tamminen           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Cillian Shiels          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Brodie Dykes            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ruddy Diaw              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jaime Mauro             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Guerschon Lewis         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jonny Smalling          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rio Baumann             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Wilmer Krafth           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Petr Koubek             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Eljero Amado            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ben Hambira             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Leverton Aguilar        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dean Pickford           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Declan Larkin           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Violette Iglesias       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kurt Mendy              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Samuel Demissie         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jonathan Wilson         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 39   28   21   14    4    1    3    20    6    2    3    1     1    1

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Hélder Castillo         8    4    4    5    1    1    0
  Wilmer Krafth          15   11    5    7    1    2    0
  Cillian Shiels         15    9    5    7    3    2    1
  Sébastien Gelabale      3    3    1    1    0    0    0

  ============================================================
  KRAKÓW ROYAL MARINES BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Kees Zimmermann         2    1    0    1    0    0    0     1    1    0    0    0     0    0
  Tok-chol Song           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Henrique Dali           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Oliwier Peszko          4    3    2    1    1    0    0     1    0    0    1    0     0    0
  Sander Holm             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Lars Moen               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ledley Curran           4    4    1    2    0    0    0     1    0    0    0    0     0    0
  Ctibor Polák            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Olle Norberg            4    4    1    1    0    0    0     1    0    1    0    0     0    0
  Liam Guéhi              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Will Mainoo             3    3    3    2    0    0    1     2    0    0    0    0     0    0
  Donal Kelly             4    4    2    2    1    0    0     1    0    0    0    0     0    0
  Salvatore Carrera       3    2    2    2    2    0    0     3    1    0    0    0     0    0
  Liam Martinsen          3    3    1    2    0    0    1     2    0    0    0    0     0    0
  Edon Hakala             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Paul Nkunku             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ross Guéhi              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Patrik Voráčková        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Brendan Fahey           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Justus Tolói            4    4    1    1    1    0    0     1    0    1    0    0     0    0
  Matthew Finn            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yuri Vikhlyantseva      4    2    2    1    0    0    0     0    2    0    0    0     0    0
  Elia Wijnaldum          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Pierre Gustafsson       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tariku Hamid            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Justin Richard          4    4    4    2    0    0    2     4    0    2    0    0     0    0
  Ricardo Jacinto         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tom Innocent            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Aleš Růžička            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Iacopo Debuchy          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ayoze Muñoz             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tiernan Moloney         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Florent Garnier         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Michael Fagioli         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Stanisław Stepien       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Koen Lemoine            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ruairidh MacMillan      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Leonid Cherchesov       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Niels Baena             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Gerard De Bruijn        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sergey Afinogenova      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rakoto Randriamampionona    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Moustapha Katoto        4    3    1    0    0    0    0     1    1    1    0    0     0    0
  Aidan Hughes            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jakub Dvořák            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 43   37   20   17    5    0    4    18    5    5    1    0     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Kees Zimmermann         6    2    2    4    0    1    2
  Ruairidh MacMillan      4    1    2    4    1    0    0
  Rakoto Randriamampionona    5    2    3    4    2    0    0
  Gerard De Bruijn        6    6    0    2    2    1    0
  Aleš Růžička            8    5    3    2    1    0    0
  Tom Innocent            4    2    2    3    0    0    1
  Iacopo Debuchy          4    2    2    2    0    0    0

  ============================================================
  Run rate:  Copenhagen Baseboll Klubb  0.778    Kraków Royal Marines  0.741
  Second-Chance ABs:  Copenhagen Baseboll Klubb  1    Kraków Royal Marines  0
  IBB (Copenhagen Baseboll Klubb): Lorcan Connolly.
  IBB (Kraków Royal Marines): Salvatore Carrera.
  Required run rate (Kraków Royal Marines): 0.037 R/out (needed 1 runs in 27 outs)
  Powerplays: Kraków Royal Marines — Matthew Finn NF (O7-10, 1 PO)
  ============================================================
  ============================================================
  PARTNERSHIP LOG
  Batter 1              Batter 2                Runs  Half
  ──────────────────────────────────────────────────────────────────
  Oliwier Peszko        Ledley Curran              2  bottom
  Ledley Curran         Justus Tolói               0  bottom
  Justus Tolói          Moustapha Katoto           2  bottom
  Moustapha Katoto      Will Mainoo                1  bottom
  Will Mainoo           Liam Martinsen             0  bottom
  Liam Martinsen        Donal Kelly                0  bottom
  Donal Kelly           Justin Richard             1  bottom
  Justin Richard        Olle Norberg               0  bottom
  Olle Norberg          Kees Zimmermann            0  bottom
  Kees Zimmermann       Ledley Curran              0  bottom
  Ledley Curran         Salvatore Carrera          2  bottom
  Salvatore Carrera     Moustapha Katoto           0  bottom
  Moustapha Katoto      Liam Martinsen             1  bottom
  Liam Martinsen        Donal Kelly                0  bottom
  Donal Kelly           Olle Norberg               4  bottom
  Olle Norberg          Ledley Curran              0  bottom
  Ledley Curran         Oliwier Peszko             0  bottom
  Oliwier Peszko        Justus Tolói               0  bottom
  Justus Tolói          Yuri Vikhlyantseva         0  bottom
  Yuri Vikhlyantseva    Liam Martinsen             0  bottom
  Liam Martinsen        Kees Zimmermann            4  bottom
  Kees Zimmermann       Justin Richard             0  bottom
  Justin Richard        Olle Norberg               0  bottom
  Olle Norberg          Yuri Vikhlyantseva         2  bottom
  Yuri Vikhlyantseva    Justus Tolói               1  bottom
  Justus Tolói          Moustapha Katoto           0  bottom
  Eoin Littlejohn       Lorcan Connolly            0  top
  Lorcan Connolly       Jens Risa                  8  top
  Jens Risa             Ernan Awoniyi              0  top
  Ernan Awoniyi         Sidney Brennan             1  top
  Sidney Brennan        Stephen Bardsley           4  top
  Stephen Bardsley      Krzysztof Krychowiak       0  top
  Krzysztof Krychowiak  Mesut Schulz               0  top
  Mesut Schulz          Hélder Castillo            0  top
  Hélder Castillo       Sidney Brennan             0  top
  Sidney Brennan        Jens Risa                  1  top
  Jens Risa             Emil Janogy                0  top
  Emil Janogy           Ernan Awoniyi              0  top
  Ernan Awoniyi         Stephen Bardsley           1  top
  Stephen Bardsley      Sébastien Gelabale         0  top
  Sébastien Gelabale    Krzysztof Krychowiak       0  top
  Krzysztof Krychowiak  Hélder Castillo            1  top
  Hélder Castillo       Ernan Awoniyi              3  top
  Ernan Awoniyi         Eoin Littlejohn            0  top
  Eoin Littlejohn       Sébastien Gelabale         0  top
  ──────────────────────────────────────────────────────────────────
  Total partnerships: 45  |  Avg runs/partnership: 0.87
  ============================================================
  PITCHER SPELL LOG
  Pitcher               Half         PA#   BF  OUT    R    H   BB    K  HBP
  ──────────────────────────────────────────────────────────────────────────
  Hélder Castillo       bottom         1    8    4     5     4     1     1     0
  Wilmer Krafth         bottom         9   15   11     7     5     1     2     0
  Cillian Shiels        bottom        26   15    9     7     5     3     2     1
  Sébastien Gelabale    bottom        41    3    3     1     1     0     0     0
  Kees Zimmermann       top            1    6    2     4     2     0     1     2
  Ruairidh MacMillan    top            7    4    1     4     2     1     0     0
  Rakoto Randriamampiononatop           11    5    2     4     3     2     0     0
  Gerard De Bruijn      top           16    6    6     2     0     2     1     0
  Aleš Růžička          top           23    8    5     2     3     1     0     0
  Tom Innocent          top           31    4    2     3     2     0     0     1
  Iacopo Debuchy        top           36    4    2     2     2     0     0     0
  ──────────────────────────────────────────────────────────────────────────
  Total spells: 11


pbp_text:
  ────────────────────────────────────────────────────────────
  BOTTOM HALF | Godrej Stevedores batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Sunil Singh ---
  [0 outs | 0-0 | empty] BALL IN PLAY
    Sunil Singh runs → HOME RUN.
    Batter scores (HR).
    [Walk-Back — Sunil Singh retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Saturn.]
  --- Now batting: Vinod Pandit ---
  [0 outs | 0-0 | 3B] SAC BUNT
  --- Now batting: Rabih Juraboev ---
  [1 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | 3B] FOUL
    Foul ball. Count: 1-1.
  [1 outs | 1-1 | 3B] BALL
    Ball 2. Count: 2-1.
  [1 outs | 2-1 | 3B] BALL
    Ball 3. Count: 3-1.
  [1 outs | 3-1 | 3B] FOUL
    Foul ball. Count: 3-2.
  [1 outs | 3-2 | 3B] BALL
    WALK — Rabih Juraboev awarded 1B.
  --- Now batting: Wriddhiman Saha ---
  [1 outs | 0-0 | 1B, 3B] FOUL
    Foul ball. Count: 0-1.
  [1 outs | 0-1 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [1 outs | 0-2 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [2 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Godrej Stevedores sends in joker Ehson Akbari for an extra plate appearance (joker #1).
  --- Now batting: Ehson Akbari ---
  [2 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 1B, 3B] BALL IN PLAY
    Ehson Akbari runs → single.
    Runner scores from 3B.
    Runner advances from 1B to 2B.
  [2 outs | 0-0 | 1B, 2B] PITCHING CHANGE
    PITCHING CHANGE: Omar Aslam exits (4 BF this spell).
  [2 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Godrej Stevedores sends in joker Omar El Solia for an extra plate appearance (joker #2).
  --- Now batting: Omar El Solia ---
  [2 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [2 outs | 1-1 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [2 outs | 1-2 | 1B, 2B] BALL
    Ball 2. Count: 2-2.
  [2 outs | 2-2 | 1B, 2B] BALL
    Ball 3. Count: 3-2.
  [2 outs | 3-2 | 1B, 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [2 outs | 3-2 | 2B, 3B] FOUL
    Foul ball. Count: 3-2.
  [2 outs | 3-2 | 2B, 3B] BALL
    WALK — Omar El Solia awarded 1B.
  [2 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Godrej Stevedores sends in joker Venkat Pillai for an extra plate appearance (joker #3).
  --- Now batting: Venkat Pillai ---
  [2 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [2 outs | 0-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [2 outs | 0-2 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Omar Shehata [P] ---
  [3 outs | 0-0 | 1B, 2B, 3B] SAC BUNT
  --- Now batting: Ajinkya Salunkhe ---
  [3 outs | 0-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [3 outs | 0-1 | 1B, 2B, 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
    1 run(s) score.
  [3 outs | 0-1 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [3 outs | 0-2 | 2B, 3B] BALL
    Ball 1. Count: 1-2.
  [3 outs | 1-2 | 2B, 3B] BALL IN PLAY
    Ajinkya Salunkhe runs → HOME RUN.
    Runner scores.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Ajinkya Salunkhe retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Circuit City.]
  --- Now batting: Rajdeep Sen ---
  [3 outs | 0-0 | 3B] BALL IN PLAY
    Rajdeep Sen runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Rajdeep Sen retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by RadioShack.]
  [3 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Aarav Chaudhary exits (4 BF this spell).
  --- Now batting: Arnav Khanna ---
  [3 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [3 outs | 0-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [3 outs | 0-2 | 3B] BALL IN PLAY
    Arnav Khanna runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Arnav Khanna retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Zune.]
  --- Now batting: Falgun Chavan ---
  [3 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [3 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [3 outs | 0-2 | 3B] FOUL
    Foul ball. Count: 0-2.
  [3 outs | 0-2 | 3B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Sunil Singh ---
  [4 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [4 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [4 outs | 1-1 | 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [4 outs | 1-2 | 3B] BALL IN PLAY
    Sunil Singh runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Sunil Singh retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Quisp Cereal.]
  --- Now batting: Vinod Pandit ---
  [4 outs | 0-0 | 3B] SAC BUNT
  --- Now batting: Rabih Juraboev ---
  [5 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [5 outs | 1-0 | empty] BALL
    Ball 2. Count: 2-0.
  [5 outs | 2-0 | empty] BALL IN PLAY
    Rabih Juraboev runs → double.
  [5 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Babar Munir exits (4 BF this spell).
  --- Now batting: Wriddhiman Saha ---
  [5 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [5 outs | 0-1 | 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [5 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [5 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [5 outs | 2-2 | 2B] FOUL
    Foul ball. Count: 2-2.
  [5 outs | 2-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [6 outs | 0-0 | 2B] JOKER INSERTION
    Godrej Stevedores sends in joker Ehson Akbari for an extra plate appearance (joker #4).
  [6 outs | 0-0 | 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
  --- Now batting: Ehson Akbari ---
  [6 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [6 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [6 outs | 0-2 | 3B] BALL
    Ball 1. Count: 1-2.
  [6 outs | 1-2 | 3B] BALL IN PLAY
    Ehson Akbari runs → double.
    Runner scores from 3B.
  [6 outs | 0-0 | 2B] JOKER INSERTION
    Godrej Stevedores sends in joker Omar El Solia for an extra plate appearance (joker #5).
  --- Now batting: Omar El Solia ---
  [6 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [6 outs | 1-0 | 2B] BALL IN PLAY
    Omar El Solia runs → double.
    Runner scores from 2B.
  [6 outs | 0-0 | 2B] JOKER INSERTION
    Godrej Stevedores sends in joker Venkat Pillai for an extra plate appearance (joker #6).
  --- Now batting: Venkat Pillai ---
  [6 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [6 outs | 0-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [6 outs | 0-2 | 2B] FOUL
    Foul ball. Count: 0-2.
  [6 outs | 0-2 | 2B] FOUL
    Foul ball. Count: 0-2.
  [6 outs | 0-2 | 2B] BALL IN PLAY
    Venkat Pillai runs → single.
    Runner scores from 2B.
  --- Now batting: Omar Shehata [P] ---
  [6 outs | 0-0 | 1B] BALL IN PLAY
    Omar Shehata runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Omar Shehata retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by TaB.]
  [6 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Mansoor Saifi exits (5 BF this spell).
  --- Now batting: Ajinkya Salunkhe ---
  [6 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [6 outs | 1-0 | 3B] BALL IN PLAY
    Ajinkya Salunkhe runs → single.
    Runner scores from 3B.
  --- Now batting: Rajdeep Sen ---
  [6 outs | 0-0 | 1B] BALL IN PLAY
    Rajdeep Sen runs → triple.
    Runner scores from 1B.
  --- Now batting: Arnav Khanna ---
  [6 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [6 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [6 outs | 0-2 | 3B] FOUL
    Foul ball. Count: 0-2.
  [6 outs | 0-2 | 3B] BALL
    Ball 1. Count: 1-2.
  [6 outs | 1-2 | 3B] BALL
    Ball 2. Count: 2-2.
  [6 outs | 2-2 | 3B] BALL
    Ball 3. Count: 3-2.
  [6 outs | 3-2 | 3B] BALL
    WALK — Arnav Khanna awarded 1B.
  --- Now batting: Falgun Chavan ---
  [6 outs | 0-0 | 1B, 3B] FOUL
    Foul ball. Count: 0-1.
  [6 outs | 0-1 | 1B, 3B] FOUL
    Foul ball. Count: 0-2.
  [6 outs | 0-2 | 1B, 3B] BALL
    Ball 1. Count: 1-2.
  [6 outs | 1-2 | 1B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Sunil Singh ---
  [7 outs | 0-0 | 1B, 3B] BALL IN PLAY
    Sunil Singh runs → double.
    Runner scores from 3B.
    Runner scores from 1B.
  --- Now batting: Vinod Pandit ---
  [7 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [7 outs | 0-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [7 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [7 outs | 1-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Rabih Juraboev ---
  [8 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | 2B] BALL IN PLAY
    Rabih Juraboev runs → single.
    Runner scores from 2B.
  [8 outs | 0-0 | 1B] PITCHING CHANGE
    PITCHING CHANGE: Fareed Orakzai exits (7 BF this spell).
  --- Now batting: Wriddhiman Saha ---
  [8 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [8 outs | 0-1 | 1B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [8 outs | 0-2 | 1B] BALL IN PLAY
    Wriddhiman Saha runs → ground out.
    Wriddhiman Saha is out.
    Runner advances from 1B to 2B.
  [9 outs | 0-0 | 2B] JOKER INSERTION
    Godrej Stevedores sends in joker Ehson Akbari for an extra plate appearance (joker #7).
  --- Now batting: Ehson Akbari ---
  [9 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [9 outs | 0-1 | 2B] FOUL
    Foul ball. Count: 0-2.
  [9 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [9 outs | 1-2 | 2B] BALL IN PLAY
    Ehson Akbari runs → double.
    Runner scores from 2B.
  [9 outs | 0-0 | 2B] JOKER INSERTION
    Godrej Stevedores sends in joker Omar El Solia for an extra plate appearance (joker #8).
  --- Now batting: Omar El Solia ---
  [9 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [9 outs | 0-1 | 2B] BALL IN PLAY
    Omar El Solia runs → fly out.
    ROBBED! Haoran Yang runs it down — a sure extra-base hit erased!
    Omar El Solia is out.
  --- Now batting: Omar Shehata [P] ---
  [10 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [10 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [10 outs | 2-0 | 2B] FOUL
    Foul ball. Count: 2-1.
  [10 outs | 2-1 | 2B] FOUL
    Foul ball. Count: 2-2.
  [10 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [10 outs | 3-2 | 2B] BALL
    WALK — Omar Shehata awarded 1B.
  --- Now batting: Ajinkya Salunkhe ---
  [10 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [10 outs | 0-1 | 1B, 2B] FOUL
    Foul ball. Count: 0-2.
  [10 outs | 0-2 | 1B, 2B] BALL
    Ball 1. Count: 1-2.
  [10 outs | 1-2 | 1B, 2B] FOUL
    Foul ball. Count: 1-2.
  [10 outs | 1-2 | 1B, 2B] BALL IN PLAY
    Ajinkya Salunkhe runs → HOME RUN.
    Runner scores.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Ajinkya Salunkhe retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by American Motors.]
  --- Now batting: Rajdeep Sen ---
  [10 outs | 0-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [10 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [10 outs | 0-2 | 3B] BALL
    Ball 1. Count: 1-2.
  [10 outs | 1-2 | 3B] BALL
    Ball 2. Count: 2-2.
  [10 outs | 2-2 | 3B] BALL IN PLAY
    Rajdeep Sen runs → line out.
    ROBBED! Shardul Soni lays out for the diving grab — a hit turned into an out!
    Rajdeep Sen is out.
  --- Now batting: Arnav Khanna ---
  [11 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [11 outs | 0-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [11 outs | 0-2 | 3B] BALL
    Ball 1. Count: 1-2.
  [11 outs | 1-2 | 3B] BALL IN PLAY
    Arnav Khanna runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Arnav Khanna retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Zune.]
  [11 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Ravichandran Kulkarni exits (7 BF this spell).
  --- Now batting: Falgun Chavan ---
  [11 outs | 0-0 | 3B] BALL IN PLAY
    Falgun Chavan runs → fly out.
    Falgun Chavan is out.
    Runner scores from 3B.
  --- Now batting: Sunil Singh ---
  [12 outs | 0-0 | empty] BALL IN PLAY
    Sunil Singh runs → HOME RUN.
    Batter scores (HR).
    [Walk-Back — Sunil Singh retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by OK Soda.]
  --- Now batting: Vinod Pandit ---
  [12 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [12 outs | 0-1 | 3B] BALL IN PLAY
    Vinod Pandit runs → single.
    Runner scores from 3B.
  --- Now batting: Rabih Juraboev ---
  [12 outs | 0-0 | 1B] BALL IN PLAY
    Rabih Juraboev runs → double play.
    Rabih Juraboev is out.
    Runner at 1B thrown out.
  --- Now batting: Wriddhiman Saha ---
  [14 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [14 outs | 1-0 | empty] BALL IN PLAY
    Wriddhiman Saha runs → single.
  [14 outs | 0-0 | 1B] JOKER INSERTION
    Godrej Stevedores sends in joker Venkat Pillai for an extra plate appearance (joker #9).
  --- Now batting: Venkat Pillai ---
  [14 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [14 outs | 1-0 | 1B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [15 outs | 1-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [15 outs | 1-1 | empty] BALL
    Ball 2. Count: 2-1.
  [15 outs | 2-1 | empty] BALL
    Ball 3. Count: 3-1.
  [15 outs | 3-1 | empty] FOUL
    Foul ball. Count: 3-2.
  [15 outs | 3-2 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [16 outs | 0-0 | empty] JOKER INSERTION
    Godrej Stevedores sends in joker Ehson Akbari for an extra plate appearance (joker #10).
  --- Now batting: Ehson Akbari ---
  [16 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [16 outs | 1-0 | empty] BALL
    Ball 2. Count: 2-0.
  [16 outs | 2-0 | empty] FOUL
    Foul ball. Count: 2-1.
  [16 outs | 2-1 | empty] BALL IN PLAY
    Ehson Akbari runs → single.
  [16 outs | 0-0 | 1B] JOKER INSERTION
    Godrej Stevedores sends in joker Omar El Solia for an extra plate appearance (joker #11).
  --- Now batting: Omar El Solia ---
  [16 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [16 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [16 outs | 1-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [16 outs | 1-2 | 1B] FOUL
    Foul ball. Count: 1-2.
  [16 outs | 1-2 | 1B] FOUL
    Foul ball. Count: 1-2.
  [16 outs | 1-2 | 1B] BALL IN PLAY
    Omar El Solia runs → double.
    Runner scores from 1B.
  --- Now batting: Omar Shehata [P] ---
  [16 outs | 0-0 | 2B] BALL IN PLAY
    Omar Shehata runs → triple.
    Runner scores from 2B.
  [16 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Mizan Islam exits (9 BF this spell).
  --- Now batting: Ajinkya Salunkhe ---
  [16 outs | 0-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [16 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [16 outs | 1-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [16 outs | 1-2 | 3B] BALL IN PLAY
    Ajinkya Salunkhe runs → line out.
    ROBBED! Ahmed Rashid lays out for the diving grab — a hit turned into an out!
    Ajinkya Salunkhe is out.
  --- Now batting: Rajdeep Sen ---
  [17 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [17 outs | 0-1 | 3B] BALL IN PLAY
    Rajdeep Sen runs → single.
    Runner scores from 3B.
  [17 outs | 0-0 | 1B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 1B to 2B.
  --- Now batting: Arnav Khanna ---
  [17 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [17 outs | 0-1 | 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
  [17 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [17 outs | 1-1 | 3B] BALL
    Ball 2. Count: 2-1.
  [17 outs | 2-1 | 3B] BALL IN PLAY
    Arnav Khanna runs → ground out.
    Arnav Khanna is out.
    Runner at 3B thrown out.
  --- Now batting: Falgun Chavan ---
  [19 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [19 outs | 0-1 | empty] BALL IN PLAY
    Falgun Chavan runs → fly out.
    Falgun Chavan is out.
  --- Now batting: Sunil Singh ---
  [20 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [20 outs | 1-0 | empty] BALL IN PLAY
    Sunil Singh runs → double.
  --- Now batting: Vinod Pandit ---
  [20 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [20 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [20 outs | 1-1 | 2B] BALL IN PLAY
    Vinod Pandit runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Vinod Pandit retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by American Motors.]
  --- Now batting: Rabih Juraboev ---
  [20 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [20 outs | 0-1 | 3B] FOUL
    Foul ball. Count: 0-2.
  [20 outs | 0-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Wriddhiman Saha ---
  [21 outs | 0-0 | 3B] BALL IN PLAY
    Wriddhiman Saha runs → fly out.
    ROBBED! Baghdad Al-Saadi runs it down — a sure extra-base hit erased!
    Wriddhiman Saha is out.
    Runner at 3B thrown out.
  --- Now batting: Omar Shehata [P] ---
  [23 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [23 outs | 0-1 | empty] BALL IN PLAY
    Omar Shehata runs → double.
  --- Now batting: Ajinkya Salunkhe ---
  [23 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [23 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [23 outs | 1-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [23 outs | 1-2 | 2B] BALL IN PLAY
    Ajinkya Salunkhe runs → single.
    Runner scores from 2B.
  --- Now batting: Rajdeep Sen ---
  [23 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [23 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [23 outs | 2-0 | 1B] BALL
    Ball 3. Count: 3-0.
  [23 outs | 3-0 | 1B] BALL IN PLAY
    Rajdeep Sen runs → double.
    Runner scores from 1B.
  [23 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Ashish Kotak exits (11 BF this spell).
  --- Now batting: Arnav Khanna ---
  [23 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [23 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [23 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [23 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [23 outs | 3-1 | 2B] BALL
    WALK — Arnav Khanna awarded 1B.
  --- Now batting: Falgun Chavan ---
  [23 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [23 outs | 1-0 | 1B, 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  [23 outs | 1-0 | 1B, 3B] BALL
    Ball 2. Count: 2-0.
  [23 outs | 2-0 | 1B, 3B] BALL
    Ball 3. Count: 3-0.
  [23 outs | 3-0 | 1B, 3B] BALL
    WALK — Falgun Chavan awarded 1B.
    Runner advances from 1B to 2B.
    Cricket order flips (joker-free trip) — Falgun Chavan now leads off.
  [23 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Falgun Chavan runs → double.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  --- Now batting: Arnav Khanna ---
  [23 outs | 0-0 | 2B] BALL IN PLAY
    Arnav Khanna runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Arnav Khanna retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Studebaker.]
  [23 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Bassam Sharif exits (4 BF this spell).
  --- Now batting: Rajdeep Sen ---
  [23 outs | 0-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [23 outs | 0-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [23 outs | 0-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Ajinkya Salunkhe ---
  [24 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [24 outs | 0-1 | 3B] BALL IN PLAY
    Ajinkya Salunkhe runs → single.
    Runner scores from 3B.
  [24 outs | 0-0 | 1B] JOKER INSERTION
    Godrej Stevedores sends in joker Venkat Pillai for an extra plate appearance (joker #12).
  --- Now batting: Venkat Pillai ---
  [24 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [24 outs | 1-0 | 1B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [24 outs | 1-1 | 1B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [24 outs | 1-2 | 1B] BALL IN PLAY
    Venkat Pillai runs → single.
    Runner at 1B thrown out.
  --- Now batting: Omar Shehata [P] ---
  [25 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [25 outs | 0-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [25 outs | 0-2 | 1B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Wriddhiman Saha ---
  [26 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [26 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [26 outs | 1-1 | 1B] BALL IN PLAY
    Wriddhiman Saha runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Wriddhiman Saha retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Wisk.]
  --- Now batting: Rabih Juraboev ---
  [26 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [26 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [26 outs | 1-1 | 3B] FOUL
    Foul ball. Count: 1-2.
  [26 outs | 1-2 | 3B] BALL
    Ball 2. Count: 2-2.
  [26 outs | 2-2 | 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
    Walk-Back: 1 bonus runner(s) stranded at half's end.

  End of bottom half — Godrej Stevedores: 48 run(s), 36 hit(s), 27 out(s) | Run rate: 1.778
  ============================================================
  HALFTIME
    Dubai Air Force: 0 run(s)
    Godrej Stevedores need 1 run(s) to win
    Required run rate: 0.037 R/out
  ============================================================

  ────────────────────────────────────────────────────────────
  TOP HALF | Dubai Air Force batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Sagar Lamichhane ---
  [0 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | empty] BALL IN PLAY
    Sagar Lamichhane runs → double.
  --- Now batting: Youssef Bennani ---
  [0 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [0 outs | 0-1 | 2B] BALL IN PLAY
    Youssef Bennani runs → line out.
    ROBBED! Shubman Mittal lays out for the diving grab — a hit turned into an out!
    Youssef Bennani is out.
  --- Now batting: Bassam Sharif ---
  [1 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | 2B] FOUL
    Foul ball. Count: 1-1.
  [1 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [1 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [1 outs | 3-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 3-2.
  [1 outs | 3-2 | 2B] FOUL
    Foul ball. Count: 3-2.
  [1 outs | 3-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Ruturaj Khot ---
  [2 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [2 outs | 0-1 | 2B] FOUL
    Foul ball. Count: 0-2.
  [2 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [2 outs | 1-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Haoran Yang ---
  [3 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [3 outs | 0-1 | 2B] BALL IN PLAY
    Haoran Yang runs → ground out.
    Haoran Yang is out.
    Runner advances from 2B to 3B.
  --- Now batting: Nitin Srivastava ---
  [4 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [4 outs | 0-1 | 3B] HIT BY PITCH
    HBP — Nitin Srivastava awarded 1B.
  --- Now batting: Oday Ghram ---
  [4 outs | 0-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [4 outs | 0-1 | 1B, 3B] BALL
    Ball 1. Count: 1-1.
  [4 outs | 1-1 | 1B, 3B] BALL
    Ball 2. Count: 2-1.
  [4 outs | 2-1 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 2-2.
  [4 outs | 2-2 | 1B, 3B] FOUL
    Foul ball. Count: 2-2.
  [4 outs | 2-2 | 1B, 3B] HIT BY PITCH
    HBP — Oday Ghram awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Fadi Al-Saluli ---
  [4 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [4 outs | 0-1 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [4 outs | 1-1 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [4 outs | 1-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [4 outs | 1-2 | 1B, 2B, 3B] BALL IN PLAY
    Fadi Al-Saluli runs → double.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner scores from 1B.
  [4 outs | 0-0 | 2B] JOKER INSERTION
    Dubai Air Force sends in joker Umar Latif for an extra plate appearance (joker #1).
  [4 outs | 0-0 | 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  --- Now batting: Umar Latif ---
  [4 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [4 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [4 outs | 1-1 | 3B] BALL IN PLAY
    Umar Latif runs → single.
    Runner scores from 3B.
  [4 outs | 0-0 | 1B] JOKER INSERTION
    Dubai Air Force sends in joker Kerem Al-Ghannam for an extra plate appearance (joker #2).
  --- Now batting: Kerem Al-Ghannam ---
  [4 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [4 outs | 0-1 | 1B] FOUL
    Foul ball. Count: 0-2.
  [4 outs | 0-2 | 1B] BALL IN PLAY
    Kerem Al-Ghannam runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Kerem Al-Ghannam retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by OK Soda.]
  [4 outs | 0-0 | 3B] JOKER INSERTION
    Dubai Air Force sends in joker Baghdad Al-Saadi for an extra plate appearance (joker #3).
  --- Now batting: Baghdad Al-Saadi ---
  [4 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [4 outs | 1-1 | 3B] BALL
    Ball 2. Count: 2-1.
  [4 outs | 2-1 | 3B] BALL
    Ball 3. Count: 3-1.
  [4 outs | 3-1 | 3B] BALL
    WALK — Baghdad Al-Saadi awarded 1B.
  --- Now batting: Omar Aslam [P] ---
  [4 outs | 0-0 | 1B, 3B] SAC BUNT
  --- Now batting: Sagar Lamichhane ---
  [5 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [5 outs | 1-0 | 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  [5 outs | 1-0 | 3B] BALL IN PLAY
    Sagar Lamichhane runs → single.
    Runner scores from 3B.
  --- Now batting: Youssef Bennani ---
  [5 outs | 0-0 | 1B] BALL IN PLAY
    Youssef Bennani runs → single.
    Runner advances from 1B to 2B.
  [5 outs | 0-0 | 1B, 2B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  --- Now batting: Bassam Sharif ---
  [6 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [6 outs | 0-1 | 2B] BALL IN PLAY
    Bassam Sharif runs → single.
    Runner scores from 2B.
  [6 outs | 0-0 | 1B] PITCHING CHANGE
    PITCHING CHANGE: Omar Shehata exits (14 BF this spell).
  --- Now batting: Ruturaj Khot ---
  [6 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [6 outs | 1-0 | 1B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [6 outs | 1-1 | 1B] BALL
    Ball 2. Count: 2-1.
  [6 outs | 2-1 | 1B] FOUL
    Foul ball. Count: 2-2.
  [6 outs | 2-2 | 1B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [7 outs | 2-2 | empty] FOUL
    Foul ball. Count: 2-2.
  [7 outs | 2-2 | empty] BALL
    Ball 3. Count: 3-2.
  [7 outs | 3-2 | empty] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Haoran Yang ---
  [8 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | empty] FOUL
    Foul ball. Count: 1-1.
  [8 outs | 1-1 | empty] CALLED STRIKE
    Strike (called). Count: 1-2.
  [8 outs | 1-2 | empty] BALL
    Ball 2. Count: 2-2.
  [8 outs | 2-2 | empty] BALL IN PLAY
    Haoran Yang runs → fly out.
    ROBBED! Ashique Acharya runs it down — a sure extra-base hit erased!
    Haoran Yang is out.
  --- Now batting: Nitin Srivastava ---
  [9 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [9 outs | 1-0 | empty] BALL IN PLAY
    Nitin Srivastava runs → double.
  --- Now batting: Oday Ghram ---
  [9 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [9 outs | 0-1 | 2B] FOUL
    Foul ball. Count: 0-2.
  [9 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [9 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [9 outs | 2-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [10 outs | 0-0 | 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  --- Now batting: Fadi Al-Saluli ---
  [10 outs | 0-0 | 3B] BALL IN PLAY
    Fadi Al-Saluli runs → single.
    Runner scores from 3B.
  --- Now batting: Omar Aslam [P] ---
  [10 outs | 0-0 | 1B] SAC BUNT
    Cricket order flips (joker-free trip) — Omar Aslam now leads off.
  [10 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Dubai Air Force sends in joker Umar Latif for an extra plate appearance (joker #4).
  --- Now batting: Umar Latif ---
  [10 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [10 outs | 1-0 | 1B, 2B] BALL
    Ball 2. Count: 2-0.
  [10 outs | 2-0 | 1B, 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [10 outs | 2-0 | 2B, 3B] BALL
    Ball 3. Count: 3-0.
  [10 outs | 3-0 | 2B, 3B] FOUL
    Foul ball. Count: 3-1.
  [10 outs | 3-1 | 2B, 3B] BALL
    WALK — Umar Latif awarded 1B.
  [10 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Dubai Air Force sends in joker Kerem Al-Ghannam for an extra plate appearance (joker #5).
  [10 outs | 0-0 | 1B, 2B, 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
    1 run(s) score.
  --- Now batting: Kerem Al-Ghannam ---
  [10 outs | 0-0 | 2B, 3B] BALL IN PLAY
    Kerem Al-Ghannam runs → fly out.
    ROBBED! Falgun Chavan runs it down — a sure extra-base hit erased!
    Kerem Al-Ghannam is out.
    Runner at 3B thrown out.
  [12 outs | 0-0 | 2B] JOKER INSERTION
    Dubai Air Force sends in joker Baghdad Al-Saadi for an extra plate appearance (joker #6).
  --- Now batting: Baghdad Al-Saadi ---
  [12 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [12 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [12 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [12 outs | 2-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 2-2.
  [12 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [12 outs | 3-2 | 2B] FOUL
    Foul ball. Count: 3-2.
  [12 outs | 3-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Omar Aslam [P] ---
  [13 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [13 outs | 0-1 | 2B] FOUL
    Foul ball. Count: 0-2.
  [13 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [13 outs | 1-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Fadi Al-Saluli ---
  [14 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [14 outs | 0-1 | 2B] BALL IN PLAY
    Fadi Al-Saluli runs → double.
    Runner scores from 2B.
  --- Now batting: Oday Ghram ---
  [14 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [14 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [14 outs | 2-0 | 2B] BALL
    Ball 3. Count: 3-0.
  [14 outs | 3-0 | 2B] BALL
    WALK — Oday Ghram awarded 1B.
  --- Now batting: Nitin Srivastava ---
  [14 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [14 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [14 outs | 1-1 | 1B, 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [14 outs | 1-1 | 2B, 3B] HIT BY PITCH
    HBP — Nitin Srivastava awarded 1B.
  --- Now batting: Haoran Yang ---
  [14 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [14 outs | 1-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-1.
  [14 outs | 1-1 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [14 outs | 2-1 | 1B, 2B, 3B] BALL IN PLAY
    Haoran Yang runs → single.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner advances from 1B to 3B.
  [14 outs | 0-0 | 1B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Mihir Bhatt exits (13 BF this spell).
  --- Now batting: Ruturaj Khot ---
  [14 outs | 0-0 | 1B, 3B] BALL IN PLAY
    Ruturaj Khot runs → single.
    Runner scores from 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Bassam Sharif ---
  [14 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [14 outs | 1-0 | 1B, 2B] FOUL
    Foul ball. Count: 1-1.
  [14 outs | 1-1 | 1B, 2B] FOUL
    Foul ball. Count: 1-2.
  [14 outs | 1-2 | 1B, 2B] PICKOFF ATTEMPT
    Pickoff — runner out at 2B!
  [15 outs | 1-2 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Youssef Bennani ---
  [16 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [16 outs | 1-0 | 1B] BALL IN PLAY
    Youssef Bennani runs → fly out.
    Youssef Bennani is out.
  --- Now batting: Sagar Lamichhane ---
  [17 outs | 0-0 | 1B] BALL IN PLAY
    Sagar Lamichhane runs → triple.
    Runner scores from 1B.
  [17 outs | 0-0 | 3B] JOKER INSERTION
    Dubai Air Force sends in joker Umar Latif for an extra plate appearance (joker #7).
  --- Now batting: Umar Latif ---
  [17 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [17 outs | 0-1 | 3B] BALL IN PLAY
    Umar Latif runs → ground out.
    Umar Latif is out.
    Runner scores from 3B.
  [18 outs | 0-0 | empty] JOKER INSERTION
    Dubai Air Force sends in joker Kerem Al-Ghannam for an extra plate appearance (joker #8).
  --- Now batting: Kerem Al-Ghannam ---
  [18 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [18 outs | 1-0 | empty] CALLED STRIKE
    Strike (called). Count: 1-1.
  [18 outs | 1-1 | empty] FOUL
    Foul ball. Count: 1-2.
  [18 outs | 1-2 | empty] BALL
    Ball 2. Count: 2-2.
  [18 outs | 2-2 | empty] BALL IN PLAY
    Kerem Al-Ghannam runs → double.
  [18 outs | 0-0 | 2B] JOKER INSERTION
    Dubai Air Force sends in joker Baghdad Al-Saadi for an extra plate appearance (joker #9).
  --- Now batting: Baghdad Al-Saadi ---
  [18 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [18 outs | 1-0 | 2B] FOUL
    Foul ball. Count: 1-1.
  [18 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [18 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [18 outs | 3-1 | 2B] FOUL
    Foul ball. Count: 3-2.
  [18 outs | 3-2 | 2B] BALL
    WALK — Baghdad Al-Saadi awarded 1B.
  --- Now batting: Omar Aslam [P] ---
  [18 outs | 0-0 | 1B, 2B] SAC BUNT
  [19 outs | 0-0 | 2B, 3B] DEFENSIVE SUB
    Choon Chua replaces Sunil Singh at SS.
  --- Now batting: Fadi Al-Saluli ---
  [19 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [19 outs | 2-0 | 2B, 3B] BALL
    Ball 3. Count: 3-0.
  [19 outs | 3-0 | 2B, 3B] BALL
    WALK — Fadi Al-Saluli awarded 1B.
  --- Now batting: Oday Ghram ---
  [19 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [19 outs | 2-0 | 1B, 2B, 3B] BALL IN PLAY
    Oday Ghram runs → HOME RUN.
    Runner scores.
    Runner scores.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Oday Ghram retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Montgomery Ward.]
  --- Now batting: Nitin Srivastava ---
  [19 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | 3B] BALL
    Ball 2. Count: 2-0.
  [19 outs | 2-0 | 3B] BALL
    Ball 3. Count: 3-0.
  [19 outs | 3-0 | 3B] BALL IN PLAY
    Nitin Srivastava runs → double.
    Runner scores from 3B.
  --- Now batting: Haoran Yang ---
  [19 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [19 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [19 outs | 2-1 | 2B] FOUL
    Foul ball. Count: 2-2.
  [19 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [19 outs | 3-2 | 2B] BALL
    WALK — Haoran Yang awarded 1B.
  --- Now batting: Ruturaj Khot ---
  [19 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Ruturaj Khot runs → double.
    Runner scores from 2B.
    Runner scores from 1B.
  [19 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Alexis Hashim exits (12 BF this spell).
  [19 outs | 0-0 | 2B] STOLEN BASE ATTEMPT
    Runner caught stealing at 3B.
  --- Now batting: Bassam Sharif ---
  [20 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [20 outs | 0-1 | empty] BALL IN PLAY
    Bassam Sharif runs → ground out.
    Bassam Sharif is out.
  --- Now batting: Youssef Bennani ---
  [21 outs | 0-0 | empty] BALL IN PLAY
    Youssef Bennani runs → single.
  --- Now batting: Sagar Lamichhane ---
  [21 outs | 0-0 | 1B] BALL IN PLAY
    Sagar Lamichhane runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Sagar Lamichhane retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Bear Stearns.]
  --- Now batting: Omar Aslam [P] ---
  [21 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [21 outs | 1-0 | 3B] FOUL
    Foul ball. Count: 1-1.
  [21 outs | 1-1 | 3B] BALL IN PLAY
    Omar Aslam runs → single.
    Runner scores from 3B.
  --- Now batting: Fadi Al-Saluli ---
  [21 outs | 0-0 | 1B] BALL IN PLAY
    Fadi Al-Saluli runs → single.
    Runner advances from 1B to 2B.
  --- Now batting: Oday Ghram ---
  [21 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [21 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [21 outs | 1-1 | 1B, 2B] BALL IN PLAY
    Oday Ghram runs → HOME RUN.
    Runner scores.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Oday Ghram retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by American Motors.]
  --- Now batting: Nitin Srivastava ---
  [21 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [21 outs | 1-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [21 outs | 1-1 | 3B] BALL IN PLAY
    Nitin Srivastava runs → fielder's choice.
    Runner at 3B thrown out.
  --- Now batting: Haoran Yang ---
  [22 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [22 outs | 1-0 | 1B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 1B to 2B.
  [22 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [22 outs | 1-1 | 2B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [22 outs | 1-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [23 outs | 0-0 | 2B] STOLEN BASE ATTEMPT
    Runner caught stealing at 3B.
  --- Now batting: Ruturaj Khot ---
  [24 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [24 outs | 1-0 | empty] BALL
    Ball 2. Count: 2-0.
  [24 outs | 2-0 | empty] CALLED STRIKE
    Strike (called). Count: 2-1.
  [24 outs | 2-1 | empty] BALL IN PLAY
    Ruturaj Khot runs → single.
  --- Now batting: Bassam Sharif ---
  [24 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [24 outs | 0-1 | 1B] FOUL
    Foul ball. Count: 0-2.
  [24 outs | 0-2 | 1B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Youssef Bennani ---
  [25 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [25 outs | 0-1 | 1B] BALL IN PLAY
    Youssef Bennani runs → fielder's choice.
    Runner at 1B thrown out.
  --- Now batting: Sagar Lamichhane ---
  [26 outs | 0-0 | 1B] BALL IN PLAY
    Sagar Lamichhane runs → single.
    Runner advances from 1B to 2B.
    Cricket order flips (joker-free trip) — Sagar Lamichhane now leads off.
  [26 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [26 outs | 1-0 | 1B, 2B] BALL
    Ball 2. Count: 2-0.
  [26 outs | 2-0 | 1B, 2B] BALL IN PLAY
    Sagar Lamichhane runs → HOME RUN.
    Runner scores.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Sagar Lamichhane retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Bear Stearns.]
  [26 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Yance Anwar exits (13 BF this spell).
  --- Now batting: Youssef Bennani ---
  [26 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [26 outs | 1-0 | 3B] BALL IN PLAY
    Youssef Bennani runs → double.
    Runner scores from 3B.
  --- Now batting: Bassam Sharif ---
  [26 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [26 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [26 outs | 2-0 | 2B] BALL IN PLAY
    Bassam Sharif runs → double.
    Runner scores from 2B.
  --- Now batting: Ruturaj Khot ---
  [26 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [26 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [26 outs | 1-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [26 outs | 1-2 | 2B] BALL IN PLAY
    Ruturaj Khot runs → single.
    Runner scores from 2B.
  --- Now batting: Haoran Yang ---
  [26 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [26 outs | 0-1 | 1B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!

  End of top half — Dubai Air Force: 36 run(s), 29 hit(s), 27 out(s) | Run rate: 1.333

  ============================================================
  GAME OVER: GODREJ STEVEDORES WIN 48–36
  ============================================================
  Final score: Godrej Stevedores 48, Dubai Air Force 36
  ============================================================
  LINE SCORE
                          1      R
  Dubai Air Force        36     36
  Godrej Stevedores      48     48

  ============================================================
  DUBAI AIR FORCE BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Omar Aslam              5    3    1    2    0    0    0     2    0    1    0    0     0    0
  Haoran Yang             5    4    1    1    0    0    0     2    1    1    0    0     0    0
  Oday Ghram              5    3    5    2    0    0    2     7    1    1    1    0     0    0
  Shardul Soni            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Nitin Srivastava        5    3    4    2    2    0    0     1    0    0    2    0     0    0
  Rishabh Tandon          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Bassam Sharif           6    6    1    2    1    0    0     2    0    2    0    0     0    0
  Wafadar Karim           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Imran Shafiq            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Naveen Mohmand          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Umar Latif              3    2    2    1    0    0    0     2    1    0    0    0     0    0
  Baghdad Al-Saadi        3    1    2    0    0    0    0     0    2    1    0    0     0    0
  Kerem Al-Ghannam        3    3    3    2    1    0    1     2    0    0    0    0     0    0
  Phani Pai               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ruturaj Khot            6    6    1    4    1    0    0     4    0    1    0    0     0    0
  Mahmoud Sabry           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Fadi Al-Saluli          5    4    5    4    2    0    0     5    1    0    0    0     0    0
  Ahmed Rashid            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sai Chaudhary           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rachid Bouazizi         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mido Hamdi              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Inzamam Chishti         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tarek Hakimi            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Halicharan Kahlon       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Youssef Bennani         6    6    3    3    1    0    0     1    0    0    0    0     0    0
  Sagar Lamichhane        6    6    8    6    1    1    2     7    0    0    0    0     0    0
  Himanshu Randhawa       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ashish Kotak            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Janith Vaas             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mansoor Saifi           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Fareed Orakzai          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Aarav Chaudhary         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ravichandran Kulkarni    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Pratik Dave             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hariharan Reddy         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Zeeshan Babar           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Norman Zainal           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Samar Kumar             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rahim Ahmad             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mohamadou Salleh        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Babar Munir             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mizan Islam             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sreesanth Natarajan     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Akash Cheema            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 58   47   36   29    9    1    5    35    6    7    3    0     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Omar Aslam              4    2    2    2    1    1    0
  Aarav Chaudhary         4    1    2    7    1    1    0
  Babar Munir             4    2    3    5    0    0    0
  Mansoor Saifi           5    1    4    5    0    1    0
  Fareed Orakzai          7    2    4    5    1    1    0
  Ravichandran Kulkarni    7    3    3    6    1    0    0
  Mizan Islam             9    5    6    5    0    1    0
  Ashish Kotak           11    7    6    5    0    1    0
  Bassam Sharif           4    0    2    5    2    0    0
  Mido Hamdi              6    4    3    3    0    3    0

  ============================================================
  GODREJ STEVEDORES BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Omar Shehata            6    5    6    4    1    1    1     4    1    1    0    0     0    0
  Rajdeep Sen             6    6    4    4    1    1    1     5    0    1    0    0     0    0
  Sunil Singh             5    5    8    5    2    0    3     6    0    0    0    0     0    0
  Nabil Mandi             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sarfaraz Ghani          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Vinod Pandit            5    4    1    2    0    0    1     4    0    1    0    0     0    0
  Ajinkya Salunkhe        6    6    6    5    0    0    2     9    0    0    0    0     0    0
  Rabih Juraboev          6    5    3    2    1    0    0     1    1    2    0    0     0    0
  Mujeeb Hassan           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Omar El Solia           4    3    3    2    2    0    0     2    1    0    0    0     0    0
  Venkat Pillai           4    4    2    2    0    0    0     1    0    2    0    0     0    0
  Ehson Akbari            4    4    4    4    2    0    0     3    0    0    0    0     0    0
  Wriddhiman Saha         6    6    1    2    0    0    1     2    0    2    0    0     0    0
  Samim Durrani           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Niroshan Subramaniam    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ryan Abouelanin         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mohun Ganesan           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Faridoon Niazi          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Younn Rekik             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Salim Slimani           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ashique Acharya         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mohannad Eshmatov       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Manogaran Maniam        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Vishal Balasubramanian    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Falgun Chavan           6    5    2    1    1    0    0     4    1    0    0    0     0    0
  Arnav Khanna            6    4    8    3    0    0    3     6    2    0    0    0     0    0
  Dimas Drajad            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Saud Nazir              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Chandimal Krishnan      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Asnawi Kambuaya         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Saud Mughal             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mihir Bhatt             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Karim Al-Malki          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mosaddek Ahmad          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yance Anwar             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Shahid Faisal           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Belal Talukder          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Şehmus Al-Saed          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Faisal Sulaiman         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Alexis Hashim           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Wasim Janat             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Liton Talukder          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Choon Chua              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sandeep Nigam           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Shubman Mittal          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 64   57   48   36   10    2   12    47    6    9    0    0     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Omar Shehata           14    6    7    9    1    2    2
  Mihir Bhatt            13    8    4    5    2    3    1
  Alexis Hashim          12    5    6   10    3    1    0
  Yance Anwar            13    7    8    9    0    1    0
  Chandimal Krishnan      3    1    3    3    0    0    0

  ============================================================
  Run rate:  Dubai Air Force  1.333    Godrej Stevedores  1.778
  Second-Chance ABs:  Dubai Air Force  0    Godrej Stevedores  0
  Required run rate (Godrej Stevedores): 0.037 R/out (needed 1 runs in 27 outs)
  Powerplays: None
  ============================================================
  ============================================================
  PARTNERSHIP LOG
  Batter 1              Batter 2                Runs  Half
  ──────────────────────────────────────────────────────────────────
  Vinod Pandit          Wriddhiman Saha            1  bottom
  Wriddhiman Saha       Venkat Pillai              1  bottom
  Venkat Pillai         Falgun Chavan              9  bottom
  Falgun Chavan         Vinod Pandit               3  bottom
  Vinod Pandit          Wriddhiman Saha            0  bottom
  Wriddhiman Saha       Falgun Chavan              7  bottom
  Falgun Chavan         Vinod Pandit               2  bottom
  Vinod Pandit          Wriddhiman Saha            1  bottom
  Wriddhiman Saha       Omar El Solia              1  bottom
  Omar El Solia         Rajdeep Sen                3  bottom
  Rajdeep Sen           Falgun Chavan              3  bottom
  Falgun Chavan         Vinod Pandit               2  bottom
  Vinod Pandit          Rabih Juraboev             0  bottom
  Rabih Juraboev        Wriddhiman Saha            0  bottom
  Wriddhiman Saha       Venkat Pillai              0  bottom
  Venkat Pillai         Ajinkya Salunkhe           2  bottom
  Ajinkya Salunkhe      Rajdeep Sen                1  bottom
  Rajdeep Sen           Arnav Khanna               0  bottom
  Arnav Khanna          Falgun Chavan              0  bottom
  Falgun Chavan         Rabih Juraboev             2  bottom
  Rabih Juraboev        Vinod Pandit               0  bottom
  Vinod Pandit          Wriddhiman Saha            0  bottom
  Wriddhiman Saha       Rajdeep Sen                7  bottom
  Rajdeep Sen           Ajinkya Salunkhe           1  bottom
  Ajinkya Salunkhe      Omar Shehata               0  bottom
  Omar Shehata          Rabih Juraboev             2  bottom
  Youssef Bennani       Bassam Sharif              0  top
  Bassam Sharif         Ruturaj Khot               0  top
  Ruturaj Khot          Haoran Yang                0  top
  Haoran Yang           Omar Aslam                 7  top
  Omar Aslam            Youssef Bennani            1  top
  Youssef Bennani       Bassam Sharif              1  top
  Bassam Sharif         Ruturaj Khot               0  top
  Ruturaj Khot          Haoran Yang                0  top
  Haoran Yang           Oday Ghram                 0  top
  Oday Ghram            Omar Aslam                 2  top
  Omar Aslam            Kerem Al-Ghannam           0  top
  Kerem Al-Ghannam      Baghdad Al-Saadi           0  top
  Baghdad Al-Saadi      Omar Aslam                 0  top
  Omar Aslam            Haoran Yang                4  top
  Haoran Yang           Bassam Sharif              0  top
  Bassam Sharif         Youssef Bennani            0  top
  Youssef Bennani       Umar Latif                 2  top
  Umar Latif            Omar Aslam                 0  top
  Omar Aslam            Ruturaj Khot               7  top
  Ruturaj Khot          Bassam Sharif              0  top
  Bassam Sharif         Oday Ghram                 6  top
  Oday Ghram            Haoran Yang                0  top
  Haoran Yang           Nitin Srivastava           0  top
  Nitin Srivastava      Bassam Sharif              0  top
  Bassam Sharif         Ruturaj Khot               0  top
  Ruturaj Khot          Ruturaj Khot               6  top
  ──────────────────────────────────────────────────────────────────
  Total partnerships: 52  |  Avg runs/partnership: 1.62
  ============================================================
  PITCHER SPELL LOG
  Pitcher               Half         PA#   BF  OUT    R    H   BB    K  HBP
  ──────────────────────────────────────────────────────────────────────────
  Omar Aslam            bottom         1    4    2     2     2     1     1     0
  Aarav Chaudhary       bottom         6    4    1     7     2     1     1     0
  Babar Munir           bottom        11    4    2     5     3     0     0     0
  Mansoor Saifi         bottom        16    5    1     5     4     0     1     0
  Fareed Orakzai        bottom        21    7    2     5     4     1     1     0
  Ravichandran Kulkarni bottom        28    7    3     6     3     1     0     0
  Mizan Islam           bottom        35    9    5     5     6     0     1     0
  Ashish Kotak          bottom        44   11    7     5     6     0     1     0
  Bassam Sharif         bottom        55    4    0     5     2     2     0     0
  Mido Hamdi            bottom        59    6    4     3     3     0     3     0
  Omar Shehata          top            1   14    6     9     7     1     2     2
  Mihir Bhatt           top           16   13    8     5     4     2     3     1
  Alexis Hashim         top           30   12    5    10     6     3     1     0
  Yance Anwar           top           43   13    7     9     8     0     1     0
  Chandimal Krishnan    top           56    3    1     3     3     0     0     0
  ──────────────────────────────────────────────────────────────────────────
  Total spells: 15


pbp_text:
  ────────────────────────────────────────────────────────────
  TOP HALF | Santo Domingo Cóndores batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Rohan Ramphal ---
  [0 outs | 0-0 | empty] BALL IN PLAY
    Rohan Ramphal runs → triple.
  --- Now batting: Howard Feitshans ---
  [0 outs | 0-0 | 3B] BALL IN PLAY
    Howard Feitshans runs → double.
    Runner scores from 3B.
  --- Now batting: Roland Mills ---
  [0 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [0 outs | 2-0 | 2B] FOUL
    Foul ball. Count: 2-1.
  [0 outs | 2-1 | 2B] FOUL
    Foul ball. Count: 2-2.
  [0 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [0 outs | 3-2 | 2B] BALL IN PLAY
    Roland Mills runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Roland Mills retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by CompUSA.]
  --- Now batting: Coleman Schuerman ---
  [0 outs | 0-0 | 3B] BALL IN PLAY
    Coleman Schuerman runs → ground out.
    Coleman Schuerman is out.
  --- Now batting: Sam Alinen ---
  [1 outs | 0-0 | 3B] INTENTIONAL WALK
    INTENTIONAL WALK — Sam Alinen given a free pass.
  --- Now batting: Patrik Baker ---
  [1 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | 1B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [2 outs | 1-0 | 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [2 outs | 1-1 | 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [2 outs | 1-2 | 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Ben Davidson ---
  [3 outs | 0-0 | 3B] INTENTIONAL WALK
    INTENTIONAL WALK — Ben Davidson given a free pass.
  --- Now batting: Mouhamad Nasr ---
  [3 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [3 outs | 1-0 | 1B, 3B] STOLEN BASE ATTEMPT
    Runner caught stealing at 2B.
  [4 outs | 1-0 | 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [4 outs | 1-1 | 3B] BALL
    Ball 2. Count: 2-1.
  [4 outs | 2-1 | 3B] FOUL
    Foul ball. Count: 2-2.
  [4 outs | 2-2 | 3B] BALL
    Ball 3. Count: 3-2.
  [4 outs | 3-2 | 3B] BALL IN PLAY
    Mouhamad Nasr runs → double.
    Runner scores from 3B.
  --- Now batting: Bodpegn Mandlik [P] ---
  [4 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [4 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [4 outs | 1-1 | 2B] FOUL
    Foul ball. Count: 1-2.
  [4 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [4 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [4 outs | 3-2 | 2B] BALL IN PLAY
    Bodpegn Mandlik runs → fielder's choice.
    Runner at 2B thrown out.
  --- Now batting: Rohan Ramphal ---
  [5 outs | 0-0 | 1B] BALL IN PLAY
    Rohan Ramphal runs → double.
    Runner scores from 1B.
  --- Now batting: Howard Feitshans ---
  [5 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [5 outs | 0-1 | 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [5 outs | 0-2 | 2B] BALL IN PLAY
    Howard Feitshans runs → ground out.
    Howard Feitshans is out.
    Runner advances from 2B to 3B.
  --- Now batting: Roland Mills ---
  [6 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [6 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [6 outs | 1-1 | 3B] FOUL
    Foul ball. Count: 1-2.
  [6 outs | 1-2 | 3B] BALL
    Ball 2. Count: 2-2.
  [6 outs | 2-2 | 3B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Coleman Schuerman ---
  [7 outs | 0-0 | 3B] BALL IN PLAY
    Coleman Schuerman runs → ground out.
    Coleman Schuerman is out.
  --- Now batting: Sam Alinen ---
  [8 outs | 0-0 | 3B] BALL IN PLAY
    Sam Alinen runs → fly out.
    ROBBED! Oliver Arboleda runs it down — a sure extra-base hit erased!
    Sam Alinen is out.
    Runner at 3B thrown out.
  --- Now batting: Patrik Baker ---
  [10 outs | 0-0 | empty] BALL IN PLAY
    Patrik Baker runs → double.
  --- Now batting: Ben Davidson ---
  [10 outs | 0-0 | 2B] BALL IN PLAY
    Ben Davidson runs → ground out.
    Ben Davidson is out.
  --- Now batting: Mouhamad Nasr ---
  [11 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [11 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [11 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [11 outs | 3-1 | 2B] BALL
    WALK — Mouhamad Nasr awarded 1B.
  [11 outs | 0-0 | 1B, 2B] PINCH RUNNER
    Deiver Venegas pinch-runs for Mouhamad Nasr at 1B.
  --- Now batting: Bodpegn Mandlik [P] ---
  [11 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [11 outs | 0-1 | 1B, 2B] BALL IN PLAY
    Bodpegn Mandlik runs → line out.
    Bodpegn Mandlik is out.
  --- Now batting: Rohan Ramphal ---
  [12 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Rohan Ramphal runs → single.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  --- Now batting: Howard Feitshans ---
  [12 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [12 outs | 1-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [12 outs | 1-1 | 1B, 2B] BALL IN PLAY
    Howard Feitshans runs → double.
    Runner scores from 2B.
    Runner scores from 1B.
  --- Now batting: Roland Mills ---
  [12 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [12 outs | 0-1 | 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [12 outs | 0-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Coleman Schuerman ---
  [13 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [13 outs | 0-1 | 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [13 outs | 0-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Sam Alinen ---
  [14 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [14 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [14 outs | 2-0 | 2B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [14 outs | 2-1 | 2B] FOUL
    Foul ball. Count: 2-2.
  [14 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [14 outs | 3-2 | 2B] BALL IN PLAY
    Sam Alinen runs → fly out.
    Sam Alinen is out.
  --- Now batting: Patrik Baker ---
  [15 outs | 0-0 | 2B] BALL IN PLAY
    Patrik Baker runs → single.
    Runner scores from 2B.
  --- Now batting: Ben Davidson ---
  [15 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [15 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [15 outs | 1-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [15 outs | 1-2 | 1B] BALL IN PLAY
    Ben Davidson runs → single.
    Runner advances from 1B to 2B.
  --- Now batting: Deiver Venegas ---
  [15 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Deiver Venegas runs → double.
    Runner scores from 2B.
    Runner scores from 1B.
  [15 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Dagoberto Corozo exits (26 BF this spell).
  --- Now batting: Bodpegn Mandlik [P] ---
  [15 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [15 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [15 outs | 2-0 | 2B] BALL IN PLAY
    Bodpegn Mandlik runs → single.
    Runner scores from 2B.
  --- Now batting: Rohan Ramphal ---
  [15 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [15 outs | 0-1 | 1B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 1B to 2B.
  [15 outs | 0-1 | 2B] FOUL
    Foul ball. Count: 0-2.
  [15 outs | 0-2 | 2B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Howard Feitshans ---
  [16 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [16 outs | 0-1 | 2B] BALL IN PLAY
    Howard Feitshans runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Howard Feitshans retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Pan American World Airways.]
  --- Now batting: Roland Mills ---
  [16 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [16 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [16 outs | 0-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Coleman Schuerman ---
  [17 outs | 0-0 | 3B] BALL IN PLAY
    Coleman Schuerman runs → single.
    Runner scores from 3B.
  --- Now batting: Sam Alinen ---
  [17 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [17 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [17 outs | 2-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 2-1.
  [17 outs | 2-1 | 1B] BALL
    Ball 3. Count: 3-1.
  [17 outs | 3-1 | 1B] FOUL
    Foul ball. Count: 3-2.
  [17 outs | 3-2 | 1B] BALL
    WALK — Sam Alinen awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Patrik Baker ---
  [17 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [17 outs | 1-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [17 outs | 1-1 | 1B, 2B] FOUL
    Foul ball. Count: 1-2.
  [17 outs | 1-2 | 1B, 2B] FOUL
    Foul ball. Count: 1-2.
  [17 outs | 1-2 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Ben Davidson ---
  [18 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [18 outs | 1-0 | 1B, 2B] BALL
    Ball 2. Count: 2-0.
  [18 outs | 2-0 | 1B, 2B] BALL IN PLAY
    Ben Davidson runs → double.
    Runner scores from 2B.
    Runner scores from 1B.
  [18 outs | 0-0 | 2B] JOKER INSERTION
    Santo Domingo Cóndores sends in joker Rómulo Ortega for an extra plate appearance (joker #1).
  --- Now batting: Rómulo Ortega ---
  [18 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [18 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [18 outs | 2-0 | 2B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [18 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [18 outs | 3-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 3-2.
  [18 outs | 3-2 | 2B] BALL
    WALK — Rómulo Ortega awarded 1B.
  [18 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Santo Domingo Cóndores sends in joker Charles Damico for an extra plate appearance (joker #2).
  --- Now batting: Charles Damico ---
  [18 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [18 outs | 1-0 | 1B, 2B] BALL IN PLAY
    Charles Damico runs → single.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  --- Now batting: Deiver Venegas ---
  [18 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [18 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [18 outs | 1-1 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [18 outs | 1-2 | 1B, 2B] FOUL
    Foul ball. Count: 1-2.
  [18 outs | 1-2 | 1B, 2B] BALL
    Ball 2. Count: 2-2.
  [18 outs | 2-2 | 1B, 2B] BALL IN PLAY
    Deiver Venegas runs → double.
    Runner scores from 2B.
    Runner scores from 1B.
  --- Now batting: Bodpegn Mandlik [P] ---
  [18 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [18 outs | 1-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [18 outs | 1-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [18 outs | 1-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [19 outs | 0-0 | 2B] DEFENSIVE SUB
    Jaime Savarino replaces Barrett Ginther at 1B.
  --- Now batting: Rohan Ramphal ---
  [19 outs | 0-0 | 2B] BALL IN PLAY
    Rohan Ramphal runs → single.
    Runner scores from 2B.
  [19 outs | 0-0 | 1B] PITCHING CHANGE
    PITCHING CHANGE: Gonzalo Ferraresi exits (13 BF this spell).
  --- Now batting: Howard Feitshans ---
  [19 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [19 outs | 0-1 | 1B] BALL IN PLAY
    Howard Feitshans runs → single.
    Runner advances from 1B to 2B.
  --- Now batting: Roland Mills ---
  [19 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [19 outs | 0-1 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [19 outs | 0-2 | 1B, 2B] BALL
    Ball 1. Count: 1-2.
  [19 outs | 1-2 | 1B, 2B] FOUL
    Foul ball. Count: 1-2.
  [19 outs | 1-2 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Coleman Schuerman ---
  [20 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [20 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [20 outs | 1-1 | 1B, 2B] BALL IN PLAY
    Coleman Schuerman runs → ground out.
    Coleman Schuerman is out.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Sam Alinen ---
  [21 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [21 outs | 1-0 | 2B, 3B] FOUL
    Foul ball. Count: 1-1.
  [21 outs | 1-1 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [21 outs | 1-2 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Patrik Baker ---
  [22 outs | 0-0 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [22 outs | 0-1 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [22 outs | 0-2 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [22 outs | 0-2 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [23 outs | 0-0 | 2B, 3B] PINCH RUNNER
    Yoán González pinch-runs for Howard Feitshans at 2B.
  --- Now batting: Ben Davidson ---
  [23 outs | 0-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [23 outs | 0-1 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [23 outs | 0-2 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [24 outs | 0-0 | 2B, 3B] JOKER INSERTION
    Santo Domingo Cóndores sends in joker Rómulo Ortega for an extra plate appearance (joker #3).
  --- Now batting: Rómulo Ortega ---
  [24 outs | 0-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [24 outs | 0-1 | 2B, 3B] BALL IN PLAY
    Rómulo Ortega runs → line out.
    Rómulo Ortega is out.
  [25 outs | 0-0 | 2B, 3B] JOKER INSERTION
    Santo Domingo Cóndores sends in joker Charles Damico for an extra plate appearance (joker #4).
  --- Now batting: Charles Damico ---
  [25 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [25 outs | 1-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [25 outs | 1-1 | 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [25 outs | 2-1 | 2B, 3B] FOUL
    Foul ball. Count: 2-2.
  [25 outs | 2-2 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [26 outs | 0-0 | 2B, 3B] PINCH RUNNER
    Sameh Nader pinch-runs for Rohan Ramphal at 3B.
  --- Now batting: Deiver Venegas ---
  [26 outs | 0-0 | 2B, 3B] BALL IN PLAY
    Deiver Venegas runs → double.
    Runner scores from 3B.
    Runner scores from 2B.
  --- Now batting: Bodpegn Mandlik [P] ---
  [26 outs | 0-0 | 2B] BALL IN PLAY
    Bodpegn Mandlik runs → single.
    Runner scores from 2B.
  --- Now batting: Sameh Nader ---
  [26 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [26 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [26 outs | 2-0 | 1B] BALL IN PLAY
    Sameh Nader runs → ground out.
    Sameh Nader is out.
    Runner at 1B thrown out.

  End of top half — Santo Domingo Cóndores: 24 run(s), 21 hit(s), 27 out(s) | Run rate: 0.889
  ============================================================
  HALFTIME
    Santo Domingo Cóndores: 24 run(s)
    Rio de Janeiro BC need 25 run(s) to win
    Required run rate: 0.926 R/out
  ============================================================

  ────────────────────────────────────────────────────────────
  BOTTOM HALF | Rio de Janeiro BC batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Nathan Otting ---
  [0 outs | 0-0 | empty] BALL IN PLAY
    Nathan Otting runs → single.
  --- Now batting: Traylon Santiago ---
  [0 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [0 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [0 outs | 1-1 | 1B] BALL
    Ball 2. Count: 2-1.
  [0 outs | 2-1 | 1B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 2B.
  [0 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [0 outs | 3-1 | 2B] BALL IN PLAY
    Traylon Santiago runs → fielder's choice.
    Runner at 2B thrown out.
  --- Now batting: Uriel Contreras ---
  [1 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | 1B] BALL IN PLAY
    Uriel Contreras runs → double.
    Runner scores from 1B.
  --- Now batting: Bill Watson ---
  [1 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [1 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [1 outs | 1-1 | 2B] BALL IN PLAY
    Bill Watson runs → error.
    Runner scores from 2B.
  --- Now batting: Brayan Abreu ---
  [1 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [1 outs | 1-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [1 outs | 1-2 | 1B] FOUL
    Foul ball. Count: 1-2.
  [1 outs | 1-2 | 1B] BALL IN PLAY
    Brayan Abreu runs → ground out.
    Brayan Abreu is out.
    Runner advances from 1B to 2B.
  --- Now batting: Jaime Savarino ---
  [2 outs | 0-0 | 2B] BALL IN PLAY
    Jaime Savarino runs → double.
    Runner scores from 2B.
  --- Now batting: Alfred Ivanova ---
  [2 outs | 0-0 | 2B] BALL IN PLAY
    Alfred Ivanova runs → single.
    Runner scores from 2B.
  [2 outs | 0-0 | 1B] PITCHING CHANGE
    PITCHING CHANGE: Bodpegn Mandlik exits (7 BF this spell).
  --- Now batting: Lakshman Mahabir ---
  [2 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [2 outs | 0-1 | 1B] FOUL
    Foul ball. Count: 0-2.
  [2 outs | 0-2 | 1B] BALL IN PLAY
    Lakshman Mahabir runs → double.
    Runner scores from 1B.
  [2 outs | 0-0 | 2B] JOKER INSERTION
    Rio de Janeiro BC sends in joker Wladimir Wattel for an extra plate appearance (joker #1).
  --- Now batting: Wladimir Wattel ---
  [2 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 2B] BALL IN PLAY
    Wladimir Wattel runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Wladimir Wattel retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by CompUSA.]
  [2 outs | 0-0 | 3B] JOKER INSERTION
    Rio de Janeiro BC sends in joker Élan Peralta for an extra plate appearance (joker #2).
  --- Now batting: Élan Peralta ---
  [2 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 3B] BALL IN PLAY
    Élan Peralta runs → double.
    Runner scores from 3B.
  [2 outs | 0-0 | 2B] JOKER INSERTION
    Rio de Janeiro BC sends in joker Raphael Whitney for an extra plate appearance (joker #3).
  --- Now batting: Raphael Whitney ---
  [2 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [2 outs | 0-1 | 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [2 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [2 outs | 1-2 | 2B] FOUL
    Foul ball. Count: 1-2.
  [2 outs | 1-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Dagoberto Corozo [P] ---
  [3 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [3 outs | 0-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [3 outs | 0-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Nathan Otting ---
  [4 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 2B] BALL IN PLAY
    Nathan Otting runs → ground out.
    Nathan Otting is out.
    Runner at 2B thrown out.
  --- Now batting: Traylon Santiago ---
  [6 outs | 0-0 | empty] BALL IN PLAY
    Traylon Santiago runs → single.
  [6 outs | 0-0 | 1B] PITCHING CHANGE
    PITCHING CHANGE: Andruw Casseres exits (7 BF this spell).
  --- Now batting: Uriel Contreras ---
  [6 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [6 outs | 1-0 | 1B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [6 outs | 1-1 | 1B] FOUL
    Foul ball. Count: 1-2.
  [6 outs | 1-2 | 1B] BALL
    Ball 2. Count: 2-2.
  [6 outs | 2-2 | 1B] BALL
    Ball 3. Count: 3-2.
  [6 outs | 3-2 | 1B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Bill Watson ---
  [7 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [7 outs | 0-1 | 1B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [7 outs | 0-2 | 1B] FOUL
    Foul ball. Count: 0-2.
  [7 outs | 0-2 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Brayan Abreu ---
  [8 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [8 outs | 2-0 | 1B] BALL IN PLAY
    Brayan Abreu runs → error.
    Runner advances from 1B to 2B.
  --- Now batting: Jaime Savarino ---
  [8 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [8 outs | 0-1 | 1B, 2B] BALL IN PLAY
    Jaime Savarino runs → single.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Alfred Ivanova ---
  [8 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [8 outs | 2-0 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-0.
  [8 outs | 3-0 | 1B, 2B, 3B] BALL
    WALK — Alfred Ivanova awarded 1B.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Lakshman Mahabir ---
  [8 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [8 outs | 1-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [8 outs | 1-2 | 1B, 2B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 2B!
  [9 outs | 1-2 | 1B, 3B] BALL IN PLAY
    Lakshman Mahabir runs → line out.
    ROBBED! Pranav Mcnutt lays out for the diving grab — a hit turned into an out!
    Lakshman Mahabir is out.
  [10 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Rio de Janeiro BC sends in joker Wladimir Wattel for an extra plate appearance (joker #4).
  --- Now batting: Wladimir Wattel ---
  [10 outs | 0-0 | 1B, 3B] BALL IN PLAY
    Wladimir Wattel runs → double.
    Runner scores from 3B.
    Runner advances from 1B to 3B.
  [10 outs | 0-0 | 2B, 3B] JOKER INSERTION
    Rio de Janeiro BC sends in joker Élan Peralta for an extra plate appearance (joker #5).
  --- Now batting: Élan Peralta ---
  [10 outs | 0-0 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [10 outs | 0-1 | 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [10 outs | 1-1 | 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [10 outs | 2-1 | 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [10 outs | 3-1 | 2B, 3B] BALL
    WALK — Élan Peralta awarded 1B.
  [10 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Rio de Janeiro BC sends in joker Raphael Whitney for an extra plate appearance (joker #6).
  [10 outs | 0-0 | 1B, 2B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  --- Now batting: Raphael Whitney ---
  [11 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [11 outs | 2-0 | 2B, 3B] BALL
    Ball 3. Count: 3-0.
  [11 outs | 3-0 | 2B, 3B] BALL
    WALK — Raphael Whitney awarded 1B.
  --- Now batting: Dagoberto Corozo [P] ---
  [11 outs | 0-0 | 1B, 2B, 3B] SAC BUNT
  --- Now batting: Nathan Otting ---
  [12 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [12 outs | 1-0 | 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [12 outs | 2-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [12 outs | 2-1 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 2-2.
  [12 outs | 2-2 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Traylon Santiago ---
  [13 outs | 0-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [13 outs | 0-1 | 2B, 3B] BALL IN PLAY
    Traylon Santiago takes a SECOND CHANCE at the plate.
    Second chance — fresh 0-0 count.
    Runner at 3B thrown out.
    Runner scores from 2B.
  [14 outs | 0-2 | empty] FOUL
    Foul ball. Count: 0-2.
  [14 outs | 0-2 | empty] BALL
    Ball 1. Count: 1-2.
  [14 outs | 1-2 | empty] FOUL
    Foul ball. Count: 1-2.
  [14 outs | 1-2 | empty] BALL
    Ball 2. Count: 2-2.
  [14 outs | 2-2 | empty] BALL
    Ball 3. Count: 3-2.
  [14 outs | 3-2 | empty] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Uriel Contreras ---
  [15 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [15 outs | 0-1 | empty] FOUL
    Foul ball. Count: 0-2.
  [15 outs | 0-2 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Bill Watson ---
  [16 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [16 outs | 0-1 | empty] BALL IN PLAY
    Bill Watson runs → single.
  --- Now batting: Brayan Abreu ---
  [16 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [16 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [16 outs | 1-1 | 1B] BALL
    Ball 2. Count: 2-1.
  [16 outs | 2-1 | 1B] BALL IN PLAY
    Brayan Abreu runs → double.
    Runner advances from 1B to 3B.
  [16 outs | 0-0 | 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Miguel Besler exits (14 BF this spell).
  --- Now batting: Jaime Savarino ---
  [16 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [16 outs | 1-0 | 2B, 3B] BALL IN PLAY
    Jaime Savarino runs → line out.
    Jaime Savarino is out.
  --- Now batting: Alfred Ivanova ---
  [17 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [17 outs | 1-0 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [17 outs | 1-1 | 2B, 3B] BALL IN PLAY
    Alfred Ivanova runs → line out.
    Alfred Ivanova is out.
  --- Now batting: Lakshman Mahabir ---
  [18 outs | 0-0 | 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [18 outs | 0-1 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [18 outs | 0-2 | 2B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  [19 outs | 0-0 | 2B, 3B] JOKER INSERTION
    Rio de Janeiro BC sends in joker Wladimir Wattel for an extra plate appearance (joker #7).
  [19 outs | 0-0 | 2B, 3B] DEFENSIVE SUB
    Jayden Flam replaces Deiver Venegas at C.
  --- Now batting: Wladimir Wattel ---
  [19 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [19 outs | 1-1 | 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [19 outs | 2-1 | 2B, 3B] BALL IN PLAY
    Wladimir Wattel runs → double.
    Runner scores from 3B.
    Runner scores from 2B.
  [19 outs | 0-0 | 2B] JOKER INSERTION
    Rio de Janeiro BC sends in joker Élan Peralta for an extra plate appearance (joker #8).
  --- Now batting: Élan Peralta ---
  [19 outs | 0-0 | 2B] HIT BY PITCH
    HBP — Élan Peralta awarded 1B.
  [19 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Rio de Janeiro BC sends in joker Raphael Whitney for an extra plate appearance (joker #9).
  --- Now batting: Raphael Whitney ---
  [19 outs | 0-0 | 1B, 2B] FOUL
    Foul ball. Count: 0-1.
  [19 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [19 outs | 1-1 | 1B, 2B] BALL IN PLAY
    Raphael Whitney runs → ground out.
    Raphael Whitney is out.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  --- Now batting: Dagoberto Corozo [P] ---
  [20 outs | 0-0 | 2B] BALL IN PLAY
    Dagoberto Corozo runs → fly out.
    Dagoberto Corozo is out.
  --- Now batting: Nathan Otting ---
  [21 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [21 outs | 0-1 | 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [21 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [21 outs | 1-2 | 2B] FOUL
    Foul ball. Count: 1-2.
  [21 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [21 outs | 2-2 | 2B] FOUL
    Foul ball. Count: 2-2.
  [21 outs | 2-2 | 2B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Traylon Santiago ---
  [22 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [22 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [22 outs | 1-1 | 2B] BALL IN PLAY
    Traylon Santiago runs → single.
    Runner scores from 2B.
  --- Now batting: Uriel Contreras ---
  [22 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [22 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [22 outs | 2-0 | 1B] BALL IN PLAY
    Uriel Contreras runs → fly out.
    Uriel Contreras is out.
  --- Now batting: Bill Watson ---
  [23 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [23 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [23 outs | 1-1 | 1B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [23 outs | 1-2 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Brayan Abreu ---
  [24 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [24 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [24 outs | 2-0 | 1B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [24 outs | 2-1 | 1B] FOUL
    Foul ball. Count: 2-2.
  [24 outs | 2-2 | 1B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Jaime Savarino ---
  [25 outs | 0-0 | 1B] DECLARATION
    >> Rio de Janeiro BC DECLARES SECONDS at out 25 (15-24).

  End of bottom half — Rio de Janeiro BC: 15 run(s), 14 hit(s), 27 out(s) | Run rate: 0.556

  ────────────────────────────────────────────────────────────
  SECONDS_SECOND | Rio de Janeiro BC batting
  ────────────────────────────────────────────────────────────
  [0 outs | 0-0 | empty] BALL IN PLAY
    Jaime Savarino runs → ground out.
    Jaime Savarino is out.
  --- Now batting: Alfred Ivanova ---
  [1 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [1 outs | 0-1 | empty] BALL
    Ball 1. Count: 1-1.
  [1 outs | 1-1 | empty] BALL
    Ball 2. Count: 2-1.
  [1 outs | 2-1 | empty] CALLED STRIKE
    Strike (called). Count: 2-2.
  [1 outs | 2-2 | empty] BALL
    Ball 3. Count: 3-2.
  [1 outs | 3-2 | empty] BALL IN PLAY
    Alfred Ivanova runs → fielder's choice.
  --- Now batting: Lakshman Mahabir ---
  [1 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [1 outs | 0-1 | 1B] FOUL
    Foul ball. Count: 0-2.
  [1 outs | 0-2 | 1B] BALL
    Ball 1. Count: 1-2.
  [1 outs | 1-2 | 1B] FOUL
    Foul ball. Count: 1-2.
  [1 outs | 1-2 | 1B] BALL IN PLAY
    Lakshman Mahabir runs → line out.
    Lakshman Mahabir is out.

  ============================================================
  GAME OVER: SANTO DOMINGO CÓNDORES WIN 24–15
  ============================================================
  Final score: Santo Domingo Cóndores 24, Rio de Janeiro BC 15
  ============================================================
  LINE SCORE
                          1      2      R
  Santo Domingo Cóndores     24      -     24
  Rio de Janeiro BC      15      0     15

  ============================================================
  SANTO DOMINGO CÓNDORES BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Bodpegn Mandlik         5    5    2    2    0    0    0     2    0    1    0    0     0    0
  Kawika McGruder         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Howard Feitshans        5    5    4    4    2    0    1     5    0    0    0    0     0    0
  Ryler Andersen          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Claudio Sandoval        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Allen Selden            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Garth Buford            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Coleman Schuerman       5    5    1    1    0    0    0     1    0    1    0    0     0    0
  Deiver Venegas          3    3    4    3    3    0    0     6    0    0    0    0     0    0
  Rómulo Ortega           2    1    1    0    0    0    0     0    1    0    0    0     0    0
  Charles Damico          2    2    1    1    0    0    0     1    0    1    0    0     0    0
  Don Wild                0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mouhamad Nasr           2    1    0    1    1    0    0     1    1    0    0    0     0    0
  Jayden Flam             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ralph Strebig           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ben Davidson            5    4    2    2    1    0    0     2    1    1    0    0     0    0
  Lourdes Morejón         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sam Alinen              5    3    1    0    0    0    0     0    2    1    0    0     0    0
  Herbert Lowary          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Quinn Carmona           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yoán González           0    0    1    0    0    0    0     0    0    0    0    0     0    0
  Sameh Nader             1    1    1    0    0    0    0     0    0    0    0    0     0    0
  Rohan Ramphal           5    5    2    4    1    1    0     3    0    0    0    0     0    0
  Roland Mills            5    5    2    1    0    0    1     2    0    3    0    0     0    0
  Patrik Baker            5    5    2    2    1    0    0     1    0    3    0    0     0    0
  Mario Cáceda            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dwight Trejo            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Miguel Besler           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kaliq Foster            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Juan Batton             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Irving Trusty           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Leon Trautwein-Valdespino    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Basil Neer              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Cannon Shirley          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Shai Clement            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Andruw Casseres         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Garth Bass              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Wilmar De Obaldía       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Xion Nwankpa            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  DeAgo Clatterbaugh      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Alphonzo Morrow         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Doug Blatchford         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Pranav Mcnutt           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 50   45   24   21    9    1    2    24    5   11    0    0     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Bodpegn Mandlik        10    4    4    4    0    0    0
  Andruw Casseres         7    4    4    4    0    2    0
  Miguel Besler          14   10    4    3    3    4    0
  Juan Batton            12    9    2    4    0    2    1

  ============================================================
  RIO DE JANEIRO BC BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Dagoberto Corozo        3    2    0    0    0    0    0     1    0    1    0    0     0    0
  Lakshman Mahabir        4    4    1    1    1    0    0     1    0    0    0    0     0    0
  Nathan Otting           4    4    0    1    0    0    0     0    0    1    0    0     0    0
  Vasil Crowe             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hussein Tamer           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sean Inglis             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Barrett Ginther         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Charles Ormeño          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Élan Peralta            3    1    1    1    1    0    0     1    1    0    1    0     0    0
  Wladimir Wattel         3    3    3    3    2    0    1     5    0    0    0    0     0    0
  Raphael Whitney         3    2    0    0    0    0    0     1    1    1    0    0     0    0
  Alfred Ivanova          4    3    2    1    0    0    0     2    1    0    0    0     0    0
  Brayan Abreu            4    4    2    1    1    0    0     0    0    1    0    0     0    0
  Bill Watson             4    4    2    1    0    0    0     1    0    2    0    0     0    0
  Jaime Savarino          4    4    1    2    1    0    0     1    0    0    0    0     0    0
  Yoelvis Rodríguez       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sidney Parrott          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Nehemiah Rizzi          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Oliver Arboleda         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Adam Nantze             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Vishal Naipaul          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  David Nembhard          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ron Orr                 0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Traylon Santiago        4    4    2    2    0    0    0     1    0    0    0    1     0    0
  Uriel Contreras         4    4    1    1    1    0    0     1    0    2    0    0     0    0
  Lenoir Casale           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Thomas Awujo            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ian Deas                0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kuol Odom               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Parker Lee-Waters       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Erick Cohoon            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jessiah Seymore         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Gonzalo Ferraresi       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dick Renteria           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Nestor Ortiz            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Diego Crim              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Franklin Ibukun-Okeyode    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Trevor Stroh            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Leo Dennis              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Cory Rivas              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Chibi Berry-Johnson     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ozzie Gumbs             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Nat Cassell             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Henry Pleasant          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 44   39   15   14    7    0    1    15    3    8    1    1     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Dagoberto Corozo       26   15   11   11    3    3    0
  Gonzalo Ferraresi      13    4    7   10    2    3    0
  Lenoir Casale          11    8    3    3    0    5    0

  ============================================================
  Run rate:  Santo Domingo Cóndores  0.889    Rio de Janeiro BC  0.556
  Second-Chance ABs:  Santo Domingo Cóndores  0    Rio de Janeiro BC  1
  IBB (Santo Domingo Cóndores): Ben Davidson; Sam Alinen.
  Required run rate (Rio de Janeiro BC): 0.926 R/out (needed 25 runs in 27 outs)
  Seconds: Rio de Janeiro BC o25 (15-24)
  ============================================================
  ============================================================
  PARTNERSHIP LOG
  Batter 1              Batter 2                Runs  Half
  ──────────────────────────────────────────────────────────────────
  Coleman Schuerman     Sam Alinen                 3  top
  Sam Alinen            Patrik Baker               0  top
  Patrik Baker          Ben Davidson               0  top
  Ben Davidson          Mouhamad Nasr              1  top
  Mouhamad Nasr         Howard Feitshans           1  top
  Howard Feitshans      Roland Mills               0  top
  Roland Mills          Coleman Schuerman          0  top
  Coleman Schuerman     Rohan Ramphal              0  top
  Rohan Ramphal         Sam Alinen                 0  top
  Sam Alinen            Ben Davidson               0  top
  Ben Davidson          Bodpegn Mandlik            0  top
  Bodpegn Mandlik       Roland Mills               3  top
  Roland Mills          Coleman Schuerman          0  top
  Coleman Schuerman     Sam Alinen                 0  top
  Sam Alinen            Rohan Ramphal              4  top
  Rohan Ramphal         Roland Mills               2  top
  Roland Mills          Patrik Baker               1  top
  Patrik Baker          Bodpegn Mandlik            5  top
  Bodpegn Mandlik       Roland Mills               1  top
  Roland Mills          Coleman Schuerman          0  top
  Coleman Schuerman     Sam Alinen                 0  top
  Sam Alinen            Patrik Baker               0  top
  Patrik Baker          Ben Davidson               0  top
  Ben Davidson          Rómulo Ortega              0  top
  Rómulo Ortega         Charles Damico             0  top
  Charles Damico        Bodpegn Mandlik            3  top
  Nathan Otting         Brayan Abreu               2  bottom
  Brayan Abreu          Raphael Whitney            6  bottom
  Raphael Whitney       Dagoberto Corozo           0  bottom
  Dagoberto Corozo      Élan Peralta               0  bottom
  Élan Peralta          Nathan Otting              0  bottom
  Nathan Otting         Uriel Contreras            0  bottom
  Uriel Contreras       Bill Watson                0  bottom
  Bill Watson           Jaime Savarino             1  bottom
  Jaime Savarino        Lakshman Mahabir           0  bottom
  Lakshman Mahabir      Élan Peralta               1  bottom
  Élan Peralta          Dagoberto Corozo           1  bottom
  Dagoberto Corozo      Nathan Otting              0  bottom
  Nathan Otting         Wladimir Wattel            0  bottom
  Wladimir Wattel       Traylon Santiago           0  bottom
  Traylon Santiago      Uriel Contreras            0  bottom
  Uriel Contreras       Jaime Savarino             0  bottom
  Jaime Savarino        Alfred Ivanova             0  bottom
  Alfred Ivanova        Lakshman Mahabir           0  bottom
  Lakshman Mahabir      Raphael Whitney            3  bottom
  Raphael Whitney       Dagoberto Corozo           0  bottom
  Dagoberto Corozo      Nathan Otting              0  bottom
  Nathan Otting         Uriel Contreras            1  bottom
  Uriel Contreras       Bill Watson                0  bottom
  Bill Watson           Brayan Abreu               0  bottom
  Jaime Savarino        Lakshman Mahabir           0  seconds_second
  ──────────────────────────────────────────────────────────────────
  Total partnerships: 51  |  Avg runs/partnership: 0.76
  ============================================================
  PITCHER SPELL LOG
  Pitcher               Half         PA#   BF  OUT    R    H   BB    K  HBP
  ──────────────────────────────────────────────────────────────────────────
  Dagoberto Corozo      top            1   26   15    11    11     3     3     0
  Gonzalo Ferraresi     top           27   13    4    10     7     2     3     0
  Lenoir Casale         top           40   11    8     3     3     0     5     0
  Bodpegn Mandlik       bottom         1    7    2     4     4     0     0     0
  Andruw Casseres       bottom         8    7    4     4     4     0     2     0
  Miguel Besler         bottom        15   14   10     3     4     3     4     0
  Juan Batton           bottom        30   12    9     4     2     0     2     1
  Bodpegn Mandlik       seconds_second  1    3    2     0     0     0     0     0
  ──────────────────────────────────────────────────────────────────────────
  Total spells: 8


pbp_text:
  ────────────────────────────────────────────────────────────
  BOTTOM HALF | Chennai Baseball Club batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Walid Toumi ---
  [0 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [0 outs | 0-1 | empty] BALL
    Ball 1. Count: 1-1.
  [0 outs | 1-1 | empty] BALL
    Ball 2. Count: 2-1.
  [0 outs | 2-1 | empty] BALL IN PLAY
    Walid Toumi runs → ground out.
    Walid Toumi is out.
  --- Now batting: Simon Aurier ---
  [1 outs | 0-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [1 outs | 0-1 | empty] FOUL
    Foul ball. Count: 0-2.
  [1 outs | 0-2 | empty] BALL IN PLAY
    Simon Aurier runs → double.
  --- Now batting: Amayas Belhaj ---
  [1 outs | 0-0 | 2B] BALL IN PLAY
    Amayas Belhaj runs → double.
    Runner scores from 2B.
  --- Now batting: Mwaniki Wachira ---
  [1 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [1 outs | 0-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [1 outs | 0-2 | 2B] FOUL
    Foul ball. Count: 0-2.
  [1 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [1 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [1 outs | 2-2 | 2B] FOUL
    Foul ball. Count: 2-2.
  [1 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [1 outs | 3-2 | 2B] BALL IN PLAY
    Mwaniki Wachira runs → single.
    Runner advances from 2B to 3B.
  [1 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Chennai Baseball Club sends in joker Laros Cruz for an extra plate appearance (joker #1).
  [1 outs | 0-0 | 1B, 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    Runner advances from 1B to 2B.
    1 run(s) score.
  --- Now batting: Laros Cruz ---
  [1 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [1 outs | 2-0 | 2B] BALL
    Ball 3. Count: 3-0.
  [1 outs | 3-0 | 2B] CALLED STRIKE
    Strike (called). Count: 3-1.
  [1 outs | 3-1 | 2B] BALL
    WALK — Laros Cruz awarded 1B.
  [1 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Chennai Baseball Club sends in joker Mustapha Toumi for an extra plate appearance (joker #2).
  --- Now batting: Mustapha Toumi ---
  [1 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [1 outs | 0-1 | 1B, 2B] FOUL
    Foul ball. Count: 0-2.
  [1 outs | 0-2 | 1B, 2B] FOUL
    Foul ball. Count: 0-2.
  [1 outs | 0-2 | 1B, 2B] FOUL OUT
    Foul ball. Count: 0-0.
  [2 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Chennai Baseball Club sends in joker Benjaloud Ngamaleu for an extra plate appearance (joker #3).
  --- Now batting: Benjaloud Ngamaleu ---
  [2 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Benjaloud Ngamaleu runs → single.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Badou Ngadeu-Ngadjui [P] ---
  [2 outs | 0-0 | 1B, 2B, 3B] SAC BUNT
  [3 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Tabraiz Botha pinch-runs for Mwaniki Wachira at 3B.
  --- Now batting: Siriné Nchout ---
  [3 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Siriné Nchout runs → triple.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner scores from 1B.
  --- Now batting: Ebrima Kgatlana ---
  [3 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [3 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [3 outs | 1-1 | 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [3 outs | 1-2 | 3B] FOUL
    Foul ball. Count: 1-2.
  [3 outs | 1-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Wassim Bentaleb ---
  [4 outs | 0-0 | 3B] BALL IN PLAY
    Wassim Bentaleb runs → single.
  --- Now batting: Christian Ngadeu-Ngadjui ---
  [4 outs | 0-0 | 1B, 3B] BALL IN PLAY
    Christian Ngadeu-Ngadjui runs → single.
    Runner scores from 3B.
    Runner advances from 1B to 2B.
  [4 outs | 0-0 | 1B, 2B] PITCHING CHANGE
    PITCHING CHANGE: Karen Bobrov exits (11 BF this spell).
  --- Now batting: Walid Toumi ---
  [4 outs | 0-0 | 1B, 2B] FOUL
    Foul ball. Count: 0-1.
  [4 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [4 outs | 1-1 | 1B, 2B] BALL IN PLAY
    Walid Toumi runs → error.
    Runner advances from 2B to 3B.
    Runner at 1B thrown out.
  --- Now batting: Simon Aurier ---
  [5 outs | 0-0 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [5 outs | 0-1 | 1B, 3B] BALL
    Ball 1. Count: 1-1.
  [5 outs | 1-1 | 1B, 3B] FOUL
    Foul ball. Count: 1-2.
  [5 outs | 1-2 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [6 outs | 0-0 | 1B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  --- Now batting: Amayas Belhaj ---
  [7 outs | 0-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [7 outs | 0-1 | 3B] FOUL
    Foul ball. Count: 0-2.
  [7 outs | 0-2 | 3B] BALL IN PLAY
    Amayas Belhaj runs → single.
  --- Now batting: Tabraiz Botha ---
  [7 outs | 0-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [7 outs | 0-1 | 1B, 3B] FOUL
    Foul ball. Count: 0-2.
  [7 outs | 0-2 | 1B, 3B] HIT BY PITCH
    HBP — Tabraiz Botha awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Badou Ngadeu-Ngadjui [P] ---
  [7 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [7 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [7 outs | 2-0 | 1B, 2B, 3B] BALL IN PLAY
    Badou Ngadeu-Ngadjui takes a SECOND CHANCE at the plate.
    Hit credited (second chance). Total this AB: 1.
    Second chance — fresh 0-0 count.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [7 outs | 2-1 | 2B, 3B] BALL IN PLAY
    Badou Ngadeu-Ngadjui runs → single.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
  --- Now batting: Siriné Nchout ---
  [7 outs | 0-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [7 outs | 0-1 | 1B, 3B] BALL
    Ball 1. Count: 1-1.
  [7 outs | 1-1 | 1B, 3B] BALL
    Ball 2. Count: 2-1.
  [7 outs | 2-1 | 1B, 3B] FOUL
    Foul ball. Count: 2-2.
  [7 outs | 2-2 | 1B, 3B] FOUL
    Foul ball. Count: 2-2.
  [7 outs | 2-2 | 1B, 3B] BALL
    Ball 3. Count: 3-2.
  [7 outs | 3-2 | 1B, 3B] BALL
    WALK — Siriné Nchout awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Ebrima Kgatlana ---
  [7 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [7 outs | 0-1 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [7 outs | 0-2 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-2.
  [7 outs | 1-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [7 outs | 1-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [7 outs | 1-2 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Wassim Bentaleb ---
  [8 outs | 0-0 | 1B, 2B, 3B] HIT BY PITCH
    HBP — Wassim Bentaleb awarded 1B.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Christian Ngadeu-Ngadjui ---
  [8 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [8 outs | 1-1 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [8 outs | 1-2 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
    Cricket order flips (joker-free trip) — Christian Ngadeu-Ngadjui now leads off.
  [9 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [9 outs | 0-1 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [9 outs | 1-1 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [9 outs | 2-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 2-2.
  [9 outs | 2-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 2-2.
  [9 outs | 2-2 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-2.
  [9 outs | 3-2 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Wassim Bentaleb ---
  [10 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [10 outs | 1-0 | 1B, 2B, 3B] BALL IN PLAY
    Wassim Bentaleb runs → single.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Ebrima Kgatlana ---
  [10 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
    Runner advances from 2B to 1B.
    Runner advances from 1B to 2B.
  [10 outs | 1-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [10 outs | 1-1 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-1.
    Runner advances from 2B to 1B.
    Runner advances from 1B to 2B.
  [10 outs | 2-1 | 1B, 2B, 3B] BALL IN PLAY
    Ebrima Kgatlana runs → single.
    Runner at 2B thrown out.
    Runner advances from 1B to 2B.
  --- Now batting: Siriné Nchout ---
  [11 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [11 outs | 0-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [11 outs | 0-2 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Badou Ngadeu-Ngadjui [P] ---
  [12 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [12 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [12 outs | 2-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 2-1.
  [12 outs | 2-1 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [12 outs | 3-1 | 1B, 2B, 3B] BALL
    WALK — Badou Ngadeu-Ngadjui awarded 1B.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [12 outs | 0-0 | 1B, 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Makell Washington exits (14 BF this spell).
  --- Now batting: Tabraiz Botha ---
  [12 outs | 0-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [12 outs | 0-1 | 1B, 2B, 3B] BALL IN PLAY
    Tabraiz Botha runs → fly out.
    Tabraiz Botha is out.
  --- Now batting: Amayas Belhaj ---
  [13 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [13 outs | 1-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-1.
  [13 outs | 1-1 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [13 outs | 1-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [13 outs | 1-2 | 1B, 2B, 3B] BALL IN PLAY
    Amayas Belhaj runs → fly out.
    Amayas Belhaj is out.
    Runner scores from 3B.
  --- Now batting: Simon Aurier ---
  [14 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [14 outs | 0-1 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [14 outs | 0-2 | 1B, 2B] BALL IN PLAY
    Simon Aurier runs → single.
    Runner advances from 2B to 3B.
    Runner at 1B thrown out.
  [15 outs | 0-0 | 1B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  --- Now batting: Walid Toumi ---
  [16 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [16 outs | 0-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [16 outs | 0-2 | 3B] BALL
    Ball 1. Count: 1-2.
  [16 outs | 1-2 | 3B] BALL IN PLAY
    Walid Toumi runs → fly out.
    Walid Toumi is out.
    Runner at 3B thrown out.
    Cricket order flips (joker-free trip) — Walid Toumi now leads off.
  [18 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [18 outs | 0-1 | empty] BALL
    Ball 1. Count: 1-1.
  [18 outs | 1-1 | empty] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [18 outs | 1-2 | empty] BALL IN PLAY
    Walid Toumi runs → line out.
    Walid Toumi is out.
  [19 outs | 0-0 | empty] DEFENSIVE SUB
    Basil McCarn replaces Kemar Robinson at C.
  --- Now batting: Simon Aurier ---
  [19 outs | 0-0 | empty] BALL IN PLAY
    Simon Aurier runs → single.
  --- Now batting: Amayas Belhaj ---
  [19 outs | 0-0 | 1B] BALL IN PLAY
    Amayas Belhaj runs → double.
    Runner advances from 1B to 3B.
  --- Now batting: Tabraiz Botha ---
  [19 outs | 0-0 | 2B, 3B] BALL IN PLAY
    Tabraiz Botha runs → ground out.
    Tabraiz Botha is out.
    Runner scores from 3B.
  [20 outs | 0-0 | 2B] JOKER INSERTION
    Chennai Baseball Club sends in joker Laros Cruz for an extra plate appearance (joker #4).
  --- Now batting: Laros Cruz ---
  [20 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [20 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [20 outs | 2-0 | 2B] FOUL
    Foul ball. Count: 2-1.
  [20 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [20 outs | 3-1 | 2B] BALL
    WALK — Laros Cruz awarded 1B.
  [20 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Chennai Baseball Club sends in joker Mustapha Toumi for an extra plate appearance (joker #5).
  --- Now batting: Mustapha Toumi ---
  [20 outs | 0-0 | 1B, 2B] FOUL
    Foul ball. Count: 0-1.
  [20 outs | 0-1 | 1B, 2B] BALL IN PLAY
    Mustapha Toumi runs → single.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Badou Ngadeu-Ngadjui [P] ---
  [20 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [20 outs | 1-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [20 outs | 1-1 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [20 outs | 2-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 2-2.
  [20 outs | 2-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 2-2.
  [20 outs | 2-2 | 1B, 2B, 3B] BALL IN PLAY
    Badou Ngadeu-Ngadjui runs → fly out.
    Badou Ngadeu-Ngadjui is out.
  --- Now batting: Siriné Nchout ---
  [21 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Siriné Nchout runs → double.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner scores from 1B.
  --- Now batting: Ebrima Kgatlana ---
  [21 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [21 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [21 outs | 1-1 | 2B] FOUL
    Foul ball. Count: 1-2.
  [21 outs | 1-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Wassim Bentaleb ---
  [22 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [22 outs | 0-1 | 2B] FOUL
    Foul ball. Count: 0-2.
  [22 outs | 0-2 | 2B] BALL IN PLAY
    Wassim Bentaleb runs → double.
    Runner advances from 2B to 3B.
  [22 outs | 0-0 | 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Deiton Bruckler exits (14 BF this spell).
  --- Now batting: Christian Ngadeu-Ngadjui ---
  [22 outs | 0-0 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [22 outs | 0-1 | 2B, 3B] BALL IN PLAY
    Christian Ngadeu-Ngadjui runs → ground out.
    Christian Ngadeu-Ngadjui is out.
  --- Now batting: Walid Toumi ---
  [23 outs | 0-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [23 outs | 0-1 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [23 outs | 0-2 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Simon Aurier ---
  [24 outs | 0-0 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [24 outs | 0-1 | 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [24 outs | 1-1 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [24 outs | 1-2 | 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [24 outs | 1-2 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [25 outs | 0-0 | 2B, 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    1 run(s) score.
  --- Now batting: Amayas Belhaj ---
  [25 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [25 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [25 outs | 1-1 | 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [25 outs | 1-2 | 3B] BALL
    Ball 2. Count: 2-2.
  [25 outs | 2-2 | 3B] BALL
    Ball 3. Count: 3-2.
  [25 outs | 3-2 | 3B] FOUL
    Foul ball. Count: 3-2.
  [25 outs | 3-2 | 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Tabraiz Botha ---
  [26 outs | 0-0 | 3B] BALL IN PLAY
    Tabraiz Botha runs → line out.
    Tabraiz Botha is out.

  End of bottom half — Chennai Baseball Club: 17 run(s), 18 hit(s), 27 out(s) | Run rate: 0.630
  ============================================================
  HALFTIME
    Tubmangrad Foundry: 0 run(s)
    Chennai Baseball Club need 1 run(s) to win
    Required run rate: 0.037 R/out
  ============================================================

  ────────────────────────────────────────────────────────────
  TOP HALF | Tubmangrad Foundry batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Alex Betova ---
  [0 outs | 0-0 | empty] BALL IN PLAY
    Alex Betova runs → single.
  --- Now batting: Hemant Banerjee ---
  [0 outs | 0-0 | 1B] BALL IN PLAY
    Hemant Banerjee runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Hemant Banerjee retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Jolt Cola.]
  --- Now batting: Basil McCarn ---
  [0 outs | 0-0 | 3B] BALL IN PLAY
    Basil McCarn runs → single.
    Runner scores from 3B.
  --- Now batting: Maksim Kovaleva ---
  [0 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [0 outs | 0-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [0 outs | 0-2 | 1B] FOUL
    Foul ball. Count: 0-2.
  [0 outs | 0-2 | 1B] FOUL
    Foul ball. Count: 0-2.
  [0 outs | 0-2 | 1B] BALL
    Ball 1. Count: 1-2.
  [0 outs | 1-2 | 1B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Pranav Chatterjee ---
  [1 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [1 outs | 0-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [1 outs | 0-2 | 1B] BALL IN PLAY
    Pranav Chatterjee runs → triple.
    Runner scores from 1B.
  [1 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Badou Ngadeu-Ngadjui exits (5 BF this spell).
  --- Now batting: Orien Friedler ---
  [1 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [1 outs | 0-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [1 outs | 0-2 | 3B] FOUL
    Foul ball. Count: 0-2.
  [1 outs | 0-2 | 3B] FOUL
    Foul ball. Count: 0-2.
  [1 outs | 0-2 | 3B] BALL IN PLAY
    Orien Friedler runs → single.
    Runner scores from 3B.
  --- Now batting: Jurrien Kruah ---
  [1 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [1 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [1 outs | 1-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [1 outs | 1-2 | 1B] FOUL
    Foul ball. Count: 1-2.
  [1 outs | 1-2 | 1B] BALL IN PLAY
    Jurrien Kruah runs → ground out.
    Jurrien Kruah is out.
    Runner advances from 1B to 2B.
  [2 outs | 0-0 | 2B] PICKOFF ATTEMPT
    Pickoff — runner out at 2B!
  --- Now batting: Karen Bobrov [P] ---
  [3 outs | 0-0 | empty] BALL IN PLAY
    Karen Bobrov runs → double.
  --- Now batting: Sandy Jones ---
  [3 outs | 0-0 | 2B] BALL IN PLAY
    Sandy Jones runs → single.
    Runner scores from 2B.
  [3 outs | 0-0 | 1B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 2B.
  [3 outs | 0-0 | 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  --- Now batting: Alex Betova ---
  [3 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [3 outs | 0-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [3 outs | 0-2 | 3B] BALL
    Ball 1. Count: 1-2.
  [3 outs | 1-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Hemant Banerjee ---
  [4 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [4 outs | 0-1 | 3B] FOUL
    Foul ball. Count: 0-2.
  [4 outs | 0-2 | 3B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Basil McCarn ---
  [5 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [5 outs | 1-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [5 outs | 1-1 | 3B] FOUL
    Foul ball. Count: 1-2.
  [5 outs | 1-2 | 3B] BALL IN PLAY
    Basil McCarn runs → fly out.
    Basil McCarn is out.
    Runner scores from 3B.
  --- Now batting: Maksim Kovaleva ---
  [6 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [6 outs | 0-1 | empty] BALL IN PLAY
    Maksim Kovaleva runs → line out.
    Maksim Kovaleva is out.
  --- Now batting: Pranav Chatterjee ---
  [7 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [7 outs | 1-0 | empty] BALL IN PLAY
    Pranav Chatterjee runs → single.
  [7 outs | 0-0 | 1B] PITCHING CHANGE
    PITCHING CHANGE: Jérémy Mahinmi exits (9 BF this spell).
  --- Now batting: Orien Friedler ---
  [7 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [7 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [7 outs | 1-1 | 1B] BALL
    Ball 2. Count: 2-1.
  [7 outs | 2-1 | 1B] CALLED STRIKE
    Strike (called). Count: 2-2.
  [7 outs | 2-2 | 1B] FOUL
    Foul ball. Count: 2-2.
  [7 outs | 2-2 | 1B] FOUL
    Foul ball. Count: 2-2.
  [7 outs | 2-2 | 1B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Jurrien Kruah ---
  [8 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [8 outs | 2-0 | 1B] BALL IN PLAY
    Jurrien Kruah runs → double.
    Runner scores from 1B.
  --- Now batting: Karen Bobrov [P] ---
  [8 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [8 outs | 0-1 | 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [8 outs | 0-2 | 2B] FOUL
    Foul ball. Count: 0-2.
  [8 outs | 0-2 | 2B] FOUL
    Foul ball. Count: 0-2.
  [8 outs | 0-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Sandy Jones ---
  [9 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [9 outs | 1-0 | 2B] BALL IN PLAY
    Sandy Jones runs → ground out.
    Sandy Jones is out.
    Runner at 2B thrown out.
  --- Now batting: Alex Betova ---
  [11 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | empty] CALLED STRIKE
    Strike (called). Count: 1-1.
  [11 outs | 1-1 | empty] FOUL
    Foul ball. Count: 1-2.
  [11 outs | 1-2 | empty] BALL IN PLAY
    Alex Betova runs → double.
  --- Now batting: Hemant Banerjee ---
  [11 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [11 outs | 0-1 | 2B] BALL IN PLAY
    Hemant Banerjee runs → double.
    Runner scores from 2B.
  --- Now batting: Basil McCarn ---
  [11 outs | 0-0 | 2B] BALL IN PLAY
    Basil McCarn runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Basil McCarn retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Pan American World Airways.]
  [11 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Mehdi Feghouli exits (7 BF this spell).
  --- Now batting: Maksim Kovaleva ---
  [11 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 3B] FOUL
    Foul ball. Count: 1-1.
  [11 outs | 1-1 | 3B] BALL
    Ball 2. Count: 2-1.
  [11 outs | 2-1 | 3B] BALL IN PLAY
    Maksim Kovaleva runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Maksim Kovaleva retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Pontiac.]
  [11 outs | 0-0 | 3B] JOKER INSERTION
    Tubmangrad Foundry sends in joker Samson Kunkelov for an extra plate appearance (joker #1).
  --- Now batting: Samson Kunkelov ---
  [11 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [11 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [11 outs | 0-2 | 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Pranav Chatterjee ---
  [12 outs | 0-0 | 3B] INTENTIONAL WALK
    INTENTIONAL WALK — Pranav Chatterjee given a free pass.
  --- Now batting: Orien Friedler ---
  [12 outs | 0-0 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [12 outs | 0-1 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [12 outs | 0-2 | 1B, 3B] FOUL
    Foul ball. Count: 0-2.
  [12 outs | 0-2 | 1B, 3B] BALL
    Ball 1. Count: 1-2.
  [12 outs | 1-2 | 1B, 3B] FOUL
    Foul ball. Count: 1-2.
  [12 outs | 1-2 | 1B, 3B] BALL
    Ball 2. Count: 2-2.
  [12 outs | 2-2 | 1B, 3B] BALL
    Ball 3. Count: 3-2.
  [12 outs | 3-2 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Jurrien Kruah ---
  [13 outs | 0-0 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [13 outs | 0-1 | 1B, 3B] FOUL
    Foul ball. Count: 0-2.
  [13 outs | 0-2 | 1B, 3B] FOUL
    Foul ball. Count: 0-2.
  [13 outs | 0-2 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Karen Bobrov [P] ---
  [14 outs | 0-0 | 1B, 3B] BALL IN PLAY
    Karen Bobrov runs → single.
    Runner scores from 3B.
    Runner advances from 1B to 2B.
  [14 outs | 0-0 | 1B, 2B] PITCHING CHANGE
    PITCHING CHANGE: Meles Bekele exits (6 BF this spell).
  [14 outs | 0-0 | 1B, 2B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  --- Now batting: Sandy Jones ---
  [15 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [15 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [15 outs | 1-1 | 2B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [15 outs | 1-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [16 outs | 0-0 | 2B] JOKER INSERTION
    Tubmangrad Foundry sends in joker Wes Ngo for an extra plate appearance (joker #2).
  --- Now batting: Wes Ngo ---
  [16 outs | 0-0 | 2B] INTENTIONAL WALK
    INTENTIONAL WALK — Wes Ngo given a free pass.
  --- Now batting: Alex Betova ---
  [16 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [16 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [16 outs | 1-1 | 1B, 2B] BALL IN PLAY
    Alex Betova runs → single.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  [16 outs | 0-0 | 1B, 2B] DEFENSIVE SUB
    Brendan Madondo replaces Wassim Bentaleb at C.
  --- Now batting: Hemant Banerjee ---
  [16 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Hemant Banerjee runs → double.
    Runner scores from 2B.
    Runner scores from 1B.
  [16 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Kamaldeen Parreira exits (4 BF this spell).
  [16 outs | 0-0 | 2B] DEFENSIVE SUB
    Karl Attah replaces Siriné Nchout at 2B.
  --- Now batting: Basil McCarn ---
  [16 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [16 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [16 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [16 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [16 outs | 3-1 | 2B] BALL
    WALK — Basil McCarn awarded 1B.
  [16 outs | 0-0 | 1B, 2B] PINCH HITTER
    Jon Scroggins pinch-hits for Maksim Kovaleva.
  [16 outs | 0-0 | 1B, 2B] DEFENSIVE SUB
    Mengistu Reshid replaces Walid Toumi at SS.
  --- Now batting: Jon Scroggins ---
  [16 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [16 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [16 outs | 1-1 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [16 outs | 1-2 | 1B, 2B] FOUL
    Foul ball. Count: 1-2.
  [16 outs | 1-2 | 1B, 2B] BALL IN PLAY
    Jon Scroggins runs → single.
    Runner scores from 2B.
    Runner advances from 1B to 3B.

  End of top half — Tubmangrad Foundry: 18 run(s), 17 hit(s), 16 out(s) | Run rate: 1.125

  ============================================================
  GAME OVER: TUBMANGRAD FOUNDRY WIN 18–17
  ============================================================
  Final score: Tubmangrad Foundry 18, Chennai Baseball Club 17
  ============================================================
  LINE SCORE
                          1      R
  Tubmangrad Foundry     18     18
  Chennai Baseball Club     17     17

  ============================================================
  TUBMANGRAD FOUNDRY BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Karen Bobrov            3    3    1    2    1    0    0     1    0    1    0    0     0    0
  Geoff Mondeville        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Joel Dawin              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Orien Friedler          3    3    0    1    0    0    0     1    0    1    0    0     0    0
  Yacoub Otayf            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Alex Betova             4    4    3    3    1    0    0     1    0    1    0    0     0    0
  Deandre Rastall         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kobe Gin                0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kemar Robinson          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Wes Ngo                 1    0    1    0    0    0    0     0    1    0    0    0     0    0
  Samson Kunkelov         1    1    0    0    0    0    0     0    0    1    0    0     0    0
  Jabari Blocher          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Maksim Kovaleva         3    3    2    1    0    0    1     2    0    1    0    0     0    0
  Shaq Moore              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Coen DeSimonin          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Noel Ferguson-Reynoldsov    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jurrien Kruah           3    3    0    1    1    0    0     1    0    1    0    0     0    0
  Basil McCarn            4    3    3    2    0    0    1     4    1    0    0    0     0    0
  Cliff Goosbin           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Lamar Bartkowicz        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Scott Allen             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Davion Wiesnerov        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Bruce Woeller           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jon Scroggins           1    1    0    1    0    0    0     1    0    0    0    0     0    0
  Hemant Banerjee         4    4    4    3    2    0    1     5    0    0    0    0     0    0
  Percy Pachecin          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Gaurav Rai              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Elijah Washingtonov     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Armistead Mitchellov    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Taylor Patrick          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Won-jun Chu             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ford Andrada            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Lenoir Parker           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Deiton Bruckler         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Genki Shibata           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Basil Kessinger         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kaheem Schell           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Makell Washington       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Brian Thompson          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Floyd Crowe             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Lake Dabekov            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Pranav Chatterjee       3    2    3    2    0    1    0     1    1    0    0    0     0    0
  Sandy Jones             3    3    1    1    0    0    0     1    0    1    0    0     0    0
  Reese Martin            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 33   30   18   17    5    1    3    18    3    7    0    0     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Karen Bobrov           11    4    7    6    1    1    0
  Makell Washington      14    8    5    5    2    5    2
  Deiton Bruckler        14   10    6    5    1    1    0
  Taylor Patrick          5    5    0    1    0    3    0

  ============================================================
  CHENNAI BASEBALL CLUB BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Badou Ngadeu-Ngadjui    4    3    1    2    0    0    0     3    1    0    0    1     1    1
  Tabraiz Botha           4    3    2    0    0    0    0     1    0    0    1    0     0    0
  Wassim Bentaleb         4    3    2    3    1    0    0     2    0    0    1    0     0    0
  Amayas Belhaj           5    5    3    3    2    0    0     2    0    1    0    0     0    0
  Brendan Madondo         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ebrima Kgatlana         4    4    0    1    0    0    0     0    0    3    0    0     0    0
  Karl Attah              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Zira Thuram             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mengistu Reshid         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mustapha Toumi          2    2    1    1    0    0    0     0    0    0    0    0     0    0
  Benjaloud Ngamaleu      1    1    1    1    0    0    0     0    0    0    0    0     0    0
  Laros Cruz              2    0    2    0    0    0    0     0    2    0    0    0     0    0
  Simon Aurier            5    5    2    3    1    0    0     0    0    2    0    0     0    0
  Walid Toumi             5    5    0    0    0    0    0     0    0    1    0    0     0    0
  Siriné Nchout           4    3    3    2    1    1    0     6    1    1    0    0     0    0
  Hugh Khimji             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Christian Ngadeu-Ngadjui    4    4    0    1    0    0    0     1    0    2    0    0     0    0
  Hardus Chetty           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mwaniki Wachira         1    1    0    1    0    0    0     0    0    0    0    0     0    0
  Karim Fathy             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Itumeleng Ben Boina     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dickson Mbemba          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Surprise Yili           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Thanduyise Buthelezi    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Nnamdi Aurier           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sintayehu Tesfaye       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Bezabeh Alemu           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Haile Megersa           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Collin Darko            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kialonda Nkoudou        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Meles Bekele            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jérémy Mahinmi          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mehdi Feghouli          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Galal Marei             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hany Shawky             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yihun Sowah             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hassane Mordi           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kamaldeen Parreira      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jean Shitembi           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Denzil Venter           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Asrat Reshid            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tafara Legesse          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Chetan Roy              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Fran Mitchell           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Abdallah Jobe           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 45   39   17   18    5    1    0    15    4   10    2    1     1    1

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Badou Ngadeu-Ngadjui    5    1    4    4    0    1    0
  Jérémy Mahinmi          9    6    4    3    0    1    0
  Mehdi Feghouli          7    4    4    4    0    1    0
  Meles Bekele            6    3    2    3    1    3    0
  Kamaldeen Parreira      4    2    2    3    1    1    0
  Collin Darko            2    0    1    1    1    0    0

  ============================================================
  Run rate:  Tubmangrad Foundry  0.667    Chennai Baseball Club  0.630
  Second-Chance ABs:  Tubmangrad Foundry  0    Chennai Baseball Club  1
  IBB (Tubmangrad Foundry): Wes Ngo; Pranav Chatterjee.
  Required run rate (Chennai Baseball Club): 0.037 R/out (needed 1 runs in 27 outs)
  Powerplays: Tubmangrad Foundry — Reese Martin NF (O2-5), Chennai Baseball Club — Karim Fathy NF (O17-17)
  ============================================================
  ============================================================
  PARTNERSHIP LOG
  Batter 1              Batter 2                Runs  Half
  ──────────────────────────────────────────────────────────────────
  Walid Toumi           Mustapha Toumi             2  bottom
  Mustapha Toumi        Badou Ngadeu-Ngadjui       0  bottom
  Badou Ngadeu-Ngadjui  Ebrima Kgatlana            3  bottom
  Ebrima Kgatlana       Christian Ngadeu-Ngadjui   1  bottom
  Christian Ngadeu-NgadjuiSimon Aurier               0  bottom
  Simon Aurier          Walid Toumi                0  bottom
  Walid Toumi           Ebrima Kgatlana            2  bottom
  Ebrima Kgatlana       Christian Ngadeu-Ngadjui   1  bottom
  Christian Ngadeu-NgadjuiChristian Ngadeu-Ngadjui   0  bottom
  Christian Ngadeu-NgadjuiWassim Bentaleb            1  bottom
  Wassim Bentaleb       Siriné Nchout              0  bottom
  Siriné Nchout         Tabraiz Botha              1  bottom
  Tabraiz Botha         Amayas Belhaj              1  bottom
  Amayas Belhaj         Badou Ngadeu-Ngadjui       0  bottom
  Badou Ngadeu-Ngadjui  Simon Aurier               0  bottom
  Simon Aurier          Ebrima Kgatlana            0  bottom
  Ebrima Kgatlana       Walid Toumi                0  bottom
  Walid Toumi           Walid Toumi                0  bottom
  Walid Toumi           Tabraiz Botha              1  bottom
  Tabraiz Botha         Badou Ngadeu-Ngadjui       0  bottom
  Badou Ngadeu-Ngadjui  Ebrima Kgatlana            3  bottom
  Ebrima Kgatlana       Christian Ngadeu-Ngadjui   0  bottom
  Christian Ngadeu-NgadjuiWalid Toumi                0  bottom
  Walid Toumi           Simon Aurier               0  bottom
  Simon Aurier          Amayas Belhaj              1  bottom
  Amayas Belhaj         Tabraiz Botha              0  bottom
  Maksim Kovaleva       Jurrien Kruah              5  top
  Jurrien Kruah         Orien Friedler             0  top
  Orien Friedler        Alex Betova                1  top
  Alex Betova           Hemant Banerjee            0  top
  Hemant Banerjee       Basil McCarn               1  top
  Basil McCarn          Maksim Kovaleva            0  top
  Maksim Kovaleva       Orien Friedler             0  top
  Orien Friedler        Karen Bobrov               1  top
  Karen Bobrov          Jurrien Kruah              0  top
  Jurrien Kruah         Sandy Jones                0  top
  Sandy Jones           Samson Kunkelov            5  top
  Samson Kunkelov       Orien Friedler             0  top
  Orien Friedler        Jurrien Kruah              0  top
  Jurrien Kruah         Karen Bobrov               1  top
  Karen Bobrov          Sandy Jones                0  top
  ──────────────────────────────────────────────────────────────────
  Total partnerships: 41  |  Avg runs/partnership: 0.76
  ============================================================
  PITCHER SPELL LOG
  Pitcher               Half         PA#   BF  OUT    R    H   BB    K  HBP
  ──────────────────────────────────────────────────────────────────────────
  Karen Bobrov          bottom         1   11    4     6     7     1     1     0
  Makell Washington     bottom        13   14    8     5     5     2     5     2
  Deiton Bruckler       bottom        27   14   10     5     6     1     1     0
  Taylor Patrick        bottom        41    5    5     1     0     0     3     0
  Badou Ngadeu-Ngadjui  top            1    5    1     4     4     0     1     0
  Jérémy Mahinmi        top            6    9    6     3     4     0     1     0
  Mehdi Feghouli        top           15    7    4     4     4     0     1     0
  Meles Bekele          top           22    6    3     3     2     1     3     0
  Kamaldeen Parreira    top           28    4    2     3     2     1     1     0
  Collin Darko          top           32    2    0     1     1     1     0     0
  ──────────────────────────────────────────────────────────────────────────
  Total spells: 10


pbp_text:
  ────────────────────────────────────────────────────────────
  TOP HALF | Daejeon Ginseng Traders batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Shinji Hasegawa ---
  [0 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | empty] BALL IN PLAY
    Shinji Hasegawa runs → triple.
  --- Now batting: Shota Hosoki ---
  [0 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | 3B] BALL IN PLAY
    Shota Hosoki runs → double.
    Runner scores from 3B.
  [0 outs | 0-0 | 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  --- Now batting: Huy Luong ---
  [0 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | 3B] BALL IN PLAY
    Huy Luong runs → double play.
    Huy Luong is out.
    Runner at 3B thrown out.
  --- Now batting: Kemar Newton ---
  [2 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [2 outs | 0-1 | empty] BALL IN PLAY
    Kemar Newton runs → line out.
    Kemar Newton is out.
  --- Now batting: Ferdinand Alapag ---
  [3 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [3 outs | 1-0 | empty] BALL IN PLAY
    Ferdinand Alapag runs → single.
  --- Now batting: Chia-hao Yang ---
  [3 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [3 outs | 0-1 | 1B] BALL IN PLAY
    Chia-hao Yang runs → single.
    Runner at 1B thrown out.
  --- Now batting: Adi Pranoto ---
  [4 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [4 outs | 0-1 | 1B] HIT BY PITCH
    HBP — Adi Pranoto awarded 1B.
    Runner advances from 1B to 2B.
  [4 outs | 0-0 | 1B, 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Min-soo Won ---
  [4 outs | 0-0 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [4 outs | 0-1 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [4 outs | 0-2 | 2B, 3B] BALL IN PLAY
    Min-soo Won runs → single.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
  [4 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Daejeon Ginseng Traders sends in joker Yuxuan Chen for an extra plate appearance (joker #1).
  --- Now batting: Yuxuan Chen ---
  [4 outs | 0-0 | 1B, 3B] BALL IN PLAY
    Yuxuan Chen takes a SECOND CHANCE — but is OUT (2-strike contact or caught fly).
    Runner advances from 1B to 2B.
  [5 outs | 0-0 | 2B, 3B] JOKER INSERTION
    Daejeon Ginseng Traders sends in joker Jong-ho Choi for an extra plate appearance (joker #2).
  --- Now batting: Jong-ho Choi ---
  [5 outs | 0-0 | 2B, 3B] INTENTIONAL WALK
    INTENTIONAL WALK — Jong-ho Choi given a free pass.
  [5 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Tae-jun Ki pinch-runs for Min-soo Won at 2B.
  --- Now batting: Woo-sung Yeo [P] ---
  [5 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [5 outs | 1-0 | 1B, 2B, 3B] BALL IN PLAY
    Woo-sung Yeo runs → double play.
    Woo-sung Yeo is out.
    Runner scores from 2B.
    Runner at 1B thrown out.
  --- Now batting: Shinji Hasegawa ---
  [9 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [9 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [9 outs | 0-2 | 3B] BALL IN PLAY
    Shinji Hasegawa runs → double.
    Runner scores from 3B.
  --- Now batting: Shota Hosoki ---
  [9 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [9 outs | 1-0 | 2B] BALL IN PLAY
    Shota Hosoki runs → fly out.
    Shota Hosoki is out.
  --- Now batting: Huy Luong ---
  [10 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [10 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [10 outs | 1-1 | 2B] BALL IN PLAY
    Huy Luong runs → single.
    Runner advances from 2B to 3B.
  --- Now batting: Kemar Newton ---
  [10 outs | 0-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [10 outs | 0-1 | 1B, 3B] BALL IN PLAY
    Kemar Newton runs → ground out.
    Kemar Newton is out.
    Runner advances from 1B to 2B.
  --- Now batting: Ferdinand Alapag ---
  [11 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [11 outs | 2-0 | 2B, 3B] BALL
    Ball 3. Count: 3-0.
  [11 outs | 3-0 | 2B, 3B] BALL
    WALK — Ferdinand Alapag awarded 1B.
  [11 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Daejeon Ginseng Traders sends in joker Jun-seok Byun for an extra plate appearance (joker #3).
  [11 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Jun-ho Yook pinch-runs for Huy Luong at 2B.
  --- Now batting: Jun-seok Byun ---
  [11 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [11 outs | 2-0 | 1B, 2B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 2B!
  [12 outs | 2-0 | 1B, 3B] BALL
    Ball 3. Count: 3-0.
  [12 outs | 3-0 | 1B, 3B] BALL
    WALK — Jun-seok Byun awarded 1B.
    Runner advances from 1B to 2B.
  [12 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Mike Malonzo pinch-runs for Ferdinand Alapag at 2B.
  --- Now batting: Chia-hao Yang ---
  [12 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [12 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [12 outs | 2-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 2-1.
  [12 outs | 2-1 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 2-2.
  [12 outs | 2-2 | 1B, 2B, 3B] BALL IN PLAY
    Chia-hao Yang runs → line out.
    Chia-hao Yang is out.
  --- Now batting: Adi Pranoto ---
  [13 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [13 outs | 1-0 | 1B, 2B, 3B] BALL IN PLAY
    Adi Pranoto runs → single.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [13 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Daejeon Ginseng Traders sends in joker Yuxuan Chen for an extra plate appearance (joker #4).
  [13 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Ganbold Khalkh pinch-runs for Adi Pranoto at 1B.
  --- Now batting: Yuxuan Chen ---
  [13 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Yuxuan Chen runs → single.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  [13 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Daejeon Ginseng Traders sends in joker Jong-ho Choi for an extra plate appearance (joker #5).
  --- Now batting: Jong-ho Choi ---
  [13 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [13 outs | 0-1 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [13 outs | 1-1 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [13 outs | 1-2 | 1B, 2B, 3B] BALL IN PLAY
    Jong-ho Choi runs → double.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner scores from 1B.
  --- Now batting: Tae-jun Ki ---
  [13 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [13 outs | 1-0 | 2B] FOUL
    Foul ball. Count: 1-1.
  [13 outs | 1-1 | 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  [13 outs | 1-1 | 3B] BALL
    Ball 2. Count: 2-1.
  [13 outs | 2-1 | 3B] BALL
    Ball 3. Count: 3-1.
  [13 outs | 3-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 3-2.
  [13 outs | 3-2 | 3B] BALL
    WALK — Tae-jun Ki awarded 1B.
  --- Now batting: Woo-sung Yeo [P] ---
  [13 outs | 0-0 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [13 outs | 0-1 | 1B, 3B] BALL IN PLAY
    Woo-sung Yeo runs → double play.
    Woo-sung Yeo is out.
    Runner at 1B thrown out.
  --- Now batting: Shinji Hasegawa ---
  [15 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [15 outs | 1-0 | 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    1 run(s) score.
  [15 outs | 1-0 | empty] BALL IN PLAY
    Shinji Hasegawa runs → single.
  [15 outs | 0-0 | 1B] PITCHING CHANGE
    PITCHING CHANGE: Sandy Brevardov exits (24 BF this spell).
  --- Now batting: Shota Hosoki ---
  [15 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [15 outs | 0-1 | 1B] BALL IN PLAY
    Shota Hosoki runs → fly out.
    Shota Hosoki is out.
  --- Now batting: Jun-ho Yook ---
  [16 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [16 outs | 0-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [16 outs | 0-2 | 1B] BALL
    Ball 1. Count: 1-2.
  [16 outs | 1-2 | 1B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 1B to 2B.
  [16 outs | 1-2 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Kemar Newton ---
  [17 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [17 outs | 0-1 | 2B] BALL IN PLAY
    Kemar Newton runs → fly out.
    Kemar Newton is out.
  [18 outs | 0-0 | 2B] JOKER INSERTION
    Daejeon Ginseng Traders sends in joker Jun-seok Byun for an extra plate appearance (joker #6).
  --- Now batting: Jun-seok Byun ---
  [18 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [18 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [18 outs | 1-1 | 2B] BALL IN PLAY
    Jun-seok Byun runs → single.
    Runner advances from 2B to 3B.
  [18 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Daejeon Ginseng Traders sends in joker Yuxuan Chen for an extra plate appearance (joker #7).
  --- Now batting: Yuxuan Chen ---
  [18 outs | 0-0 | 1B, 3B] FOUL
    Foul ball. Count: 0-1.
  [18 outs | 0-1 | 1B, 3B] BALL
    Ball 1. Count: 1-1.
  [18 outs | 1-1 | 1B, 3B] BALL IN PLAY
    Yuxuan Chen runs → line out.
    Yuxuan Chen is out.
  [19 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Daejeon Ginseng Traders sends in joker Jong-ho Choi for an extra plate appearance (joker #8).
  [19 outs | 0-0 | 1B, 3B] DEFENSIVE SUB
    Matthew Hauser replaces Michihisa Inamoto at RF.
  --- Now batting: Jong-ho Choi ---
  [19 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | 1B, 3B] BALL
    Ball 2. Count: 2-0.
  [19 outs | 2-0 | 1B, 3B] BALL
    Ball 3. Count: 3-0.
  [19 outs | 3-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 3-1.
  [19 outs | 3-1 | 1B, 3B] FOUL
    Foul ball. Count: 3-2.
  [19 outs | 3-2 | 1B, 3B] BALL IN PLAY
    Jong-ho Choi runs → double play.
    Jong-ho Choi is out.
    Runner at 1B thrown out.
  --- Now batting: Mike Malonzo ---
  [21 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [21 outs | 0-1 | 3B] FOUL
    Foul ball. Count: 0-2.
  [21 outs | 0-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Chia-hao Yang ---
  [22 outs | 0-0 | 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [22 outs | 0-1 | 3B] FOUL
    Foul ball. Count: 0-2.
  [22 outs | 0-2 | 3B] BALL IN PLAY
    Chia-hao Yang runs → fly out.
    Chia-hao Yang is out.
    Runner at 3B thrown out.
  --- Now batting: Ganbold Khalkh ---
  [24 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [24 outs | 0-1 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [24 outs | 0-2 | empty] BALL IN PLAY
    Ganbold Khalkh runs → line out.
    Ganbold Khalkh is out.
  --- Now batting: Tae-jun Ki ---
  [25 outs | 0-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [25 outs | 0-1 | empty] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | empty] BALL IN PLAY
    Tae-jun Ki runs → single.
  --- Now batting: Woo-sung Yeo [P] ---
  [25 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [25 outs | 0-1 | 1B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 1B] BALL
    Ball 1. Count: 1-2.
  [25 outs | 1-2 | 1B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Shinji Hasegawa ---
  [26 outs | 0-0 | 1B] BALL IN PLAY
    Shinji Hasegawa runs → single.
    Runner advances from 1B to 2B.
  --- Now batting: Shota Hosoki ---
  [26 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [26 outs | 0-1 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [26 outs | 0-2 | 1B, 2B] FOUL
    Foul ball. Count: 0-2.
  [26 outs | 0-2 | 1B, 2B] FOUL
    Foul ball. Count: 0-2.
  [26 outs | 0-2 | 1B, 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  [26 outs | 0-2 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.

  End of top half — Daejeon Ginseng Traders: 9 run(s), 14 hit(s), 27 out(s) | Run rate: 0.333
  ============================================================
  HALFTIME
    Daejeon Ginseng Traders: 9 run(s)
    Kobe Baseball Club need 10 run(s) to win
    Required run rate: 0.370 R/out
  ============================================================

  ────────────────────────────────────────────────────────────
  BOTTOM HALF | Kobe Baseball Club batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Aaron Sureephong ---
  [0 outs | 0-0 | empty] BALL IN PLAY
    Aaron Sureephong runs → fly out.
    Aaron Sureephong is out.
  --- Now batting: Darwin Buchnerov ---
  [1 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | empty] BALL
    Ball 2. Count: 2-0.
  [1 outs | 2-0 | empty] BALL
    Ball 3. Count: 3-0.
  [1 outs | 3-0 | empty] BALL
    WALK — Darwin Buchnerov awarded 1B.
  --- Now batting: Matthew Hauser ---
  [1 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [1 outs | 0-1 | 1B] BALL IN PLAY
    Matthew Hauser runs → fly out.
    Matthew Hauser is out.
  --- Now batting: Sung-ho Ko ---
  [2 outs | 0-0 | 1B] BALL IN PLAY
    Sung-ho Ko runs → fielder's choice.
    Runner at 1B thrown out.
  --- Now batting: Do-hyun Ahn ---
  [3 outs | 0-0 | 1B] BALL IN PLAY
    Do-hyun Ahn runs → double.
    Runner scores from 1B.
  --- Now batting: Takeru Imanishi ---
  [3 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [3 outs | 0-1 | 2B] FOUL
    Foul ball. Count: 0-2.
  [3 outs | 0-2 | 2B] FOUL
    Foul ball. Count: 0-2.
  [3 outs | 0-2 | 2B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Yoichiro Hachimura ---
  [4 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [4 outs | 0-1 | 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [4 outs | 0-2 | 2B] BALL IN PLAY
    Yoichiro Hachimura runs → double.
    Runner scores from 2B.
  --- Now batting: Stuart Yaacob ---
  [4 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [4 outs | 0-1 | 2B] BALL IN PLAY
    Stuart Yaacob runs → double.
    Runner scores from 2B.
  [4 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Woo-sung Yeo exits (8 BF this spell).
  [4 outs | 0-0 | 2B] JOKER INSERTION
    Kobe Baseball Club sends in joker Shigeyuki Hosoki for an extra plate appearance (joker #1).
  --- Now batting: Shigeyuki Hosoki ---
  [4 outs | 0-0 | 2B] INTENTIONAL WALK
    INTENTIONAL WALK — Shigeyuki Hosoki given a free pass.
  [4 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Kobe Baseball Club sends in joker Macapaar Ututalum for an extra plate appearance (joker #2).
  --- Now batting: Macapaar Ututalum ---
  [4 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 1B, 2B] FOUL
    Foul ball. Count: 1-1.
  [4 outs | 1-1 | 1B, 2B] FOUL
    Foul ball. Count: 1-2.
  [4 outs | 1-2 | 1B, 2B] FOUL OUT
    Foul ball. Count: 0-0.
  [5 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Kobe Baseball Club sends in joker Rio Sameshima for an extra plate appearance (joker #3).
  --- Now batting: Rio Sameshima ---
  [5 outs | 0-0 | 1B, 2B] SAC BUNT
  [5 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Rio Sameshima takes a SECOND CHANCE at the plate.
    Hit credited (second chance). Total this AB: 1.
    Second chance — fresh 0-0 count.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner scores from 1B.
  [5 outs | 0-1 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [5 outs | 0-2 | empty] BALL
    Ball 1. Count: 1-2.
  [5 outs | 1-2 | empty] BALL
    Ball 2. Count: 2-2.
  [5 outs | 2-2 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Aaron Sureephong ---
  [6 outs | 0-0 | empty] HIT BY PITCH
    HBP — Aaron Sureephong awarded 1B.
  [6 outs | 0-0 | 1B] PITCHING CHANGE
    PITCHING CHANGE: Haoyang Cai exits (4 BF this spell).
  --- Now batting: Darwin Buchnerov ---
  [6 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [6 outs | 0-1 | 1B] BALL IN PLAY
    Darwin Buchnerov runs → line out.
    Darwin Buchnerov is out.
  --- Now batting: Matthew Hauser ---
  [7 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [7 outs | 0-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [7 outs | 0-2 | 1B] BALL
    Ball 1. Count: 1-2.
  [7 outs | 1-2 | 1B] BALL IN PLAY
    Matthew Hauser runs → single.
    Runner advances from 1B to 2B.
  --- Now batting: Sung-ho Ko ---
  [7 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Sung-ho Ko runs → double.
    Runner scores from 2B.
    Runner scores from 1B.
  --- Now batting: Do-hyun Ahn ---
  [7 outs | 0-0 | 2B] INTENTIONAL WALK
    INTENTIONAL WALK — Do-hyun Ahn given a free pass.
  [7 outs | 0-0 | 1B, 2B] PITCHING CHANGE
    PITCHING CHANGE: Jiro Fujiwara exits (4 BF this spell).
  --- Now batting: Takeru Imanishi ---
  [7 outs | 0-0 | 1B, 2B] FOUL
    Foul ball. Count: 0-1.
  [7 outs | 0-1 | 1B, 2B] BALL IN PLAY
    Takeru Imanishi runs → triple.
    Runner scores from 2B.
    Runner scores from 1B.

  End of bottom half — Kobe Baseball Club: 10 run(s), 8 hit(s), 7 out(s) | Run rate: 1.429

  ============================================================
  GAME OVER: KOBE BASEBALL CLUB WIN 10–9
  ============================================================
  Final score: Kobe Baseball Club 10, Daejeon Ginseng Traders 9
  ============================================================
  LINE SCORE
                          1      R
  Daejeon Ginseng Traders      9      9
  Kobe Baseball Club     10     10

  ============================================================
  DAEJEON GINSENG TRADERS BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Woo-sung Yeo            3    3    0    0    0    0    0     0    0    0    0    0     0    0
  Ganbold Khalkh          1    1    1    0    0    0    0     0    0    0    0    0     0    0
  Huy Luong               2    2    0    1    0    0    0     0    0    0    0    0     0    0
  Nyein Lwin              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Maxime Gimin            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kemar Newton            3    3    0    0    0    0    0     0    0    0    0    0     0    0
  Shūichi Nakagawa        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tae-jun Ki              2    1    0    1    0    0    0     0    1    0    0    0     0    0
  Jae-won Joo             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yuxuan Chen             3    3    1    1    0    0    0     1    0    0    0    0     0    0
  Jong-ho Choi            3    2    1    1    1    0    0     3    1    0    0    0     0    0
  Jun-seok Byun           2    1    1    1    0    0    0     0    1    0    0    0     0    0
  Ferdinand Alapag        2    1    0    1    0    0    0     0    1    0    0    0     0    0
  Ferdinand Nalupta       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jun-ho Yook             1    1    0    0    0    0    0     0    0    1    0    0     0    0
  Do-hyun Sunwoo          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Adi Pranoto             2    1    1    1    0    0    0     1    0    0    1    0     0    0
  Jae-min Seol            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Chia-hao Yang           3    3    1    1    0    0    0     0    0    0    0    0     0    0
  Shota Hosoki            4    4    0    1    1    0    0     1    0    1    0    0     0    0
  Htun Htin               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Lance Johnsonov         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Fred Fasse              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mike Malonzo            1    1    1    0    0    0    0     0    0    1    0    0     0    0
  Shinji Hasegawa         4    4    2    4    1    1    0     1    0    0    0    0     0    0
  Ernando Susanto         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yasufumi Hisami         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Bayasgalan Sukhe        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Haoyang Cai             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Korrakot Bunmathan      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Edgar Horn              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Itsuki Mitsui           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Zenzo Yokobori          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yong-jin Seo            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sang-min Jin            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Roger López             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jiro Fujiwara           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kuo-hua Chan            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hin Yeoh                0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Cheng-wei Fan           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hyon-il Kim             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Chih-wei Fang           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Min-soo Won             1    1    0    1    0    0    0     1    0    0    0    0     0    0
  Hideki Sema             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 37   32    9   14    3    1    0     8    4    3    1    0     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Woo-sung Yeo            8    4    3    3    1    0    0
  Haoyang Cai             4    2    1    3    1    1    1
  Jiro Fujiwara           4    1    2    2    1    0    0
  Yong-jin Seo            1    0    1    2    0    0    0

  ============================================================
  KOBE BASEBALL CLUB BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Sandy Brevardov         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Saranon Tedsungnoen     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Supachok Intamee        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Aaron Sureephong        2    1    1    0    0    0    0     0    0    0    1    0     0    0
  Do-hyun Ahn             2    1    2    1    1    0    0     1    1    0    0    0     0    0
  Tsogt Batbayar          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Michihisa Inamoto       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hung-wen Tsai           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Noah Jones              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Shigeyuki Hosoki        1    0    1    0    0    0    0     0    1    0    0    0     0    0
  Rio Sameshima           2    2    1    2    1    0    0     3    0    1    0    1     3    0
  Macapaar Ututalum       1    1    0    0    0    0    0     0    0    0    0    0     0    0
  Edgardo Reyes           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Javier Cañete           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Chang-min Chae          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jomar Fontanilla        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Stuart Yaacob           1    1    1    1    1    0    0     1    0    0    0    0     0    0
  Yoichiro Hachimura      1    1    1    1    1    0    0     1    0    0    0    0     0    0
  Tae-bom Chae            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ganerdene Tumed         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Min-bom Pyon-Hwa        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Luca Gonzalez           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Matthew Hauser          2    2    1    1    0    0    0     0    0    0    0    0     0    0
  Aljon Mercado           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Darwin Buchnerov        2    1    0    0    0    0    0     0    1    0    0    0     0    0
  Sung-ho Ko              2    2    2    1    1    0    0     2    0    0    0    0     0    0
  Niran Haiprakhon        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rui Qi                  0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Andy Niles              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Toshiro Iida            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tuấn Bui                0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ricardo Bugay           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tsogtsaikhan Sechen     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Amareon Ing             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Takefusa Nakano         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Caleb Voigtov           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hidemasa Taniguchi      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Khuzaimi bin Hussein    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Haruki Hibino           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Desmond Evans           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Raiko Guerrero          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tyrone Berkelin         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Takeru Imanishi         2    2    0    1    0    1    0     2    0    0    0    0     0    0
  Daiya Kawamata          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rizwan Izhan            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 18   14   10    8    5    1    0    10    3    1    1    1     3    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Sandy Brevardov        24   15   11    9    4    0    1
  Andy Niles             13   12    3    0    0    3    0

  ============================================================
  Run rate:  Daejeon Ginseng Traders  0.333    Kobe Baseball Club  0.370
  Second-Chance ABs:  Daejeon Ginseng Traders  0    Kobe Baseball Club  1
  IBB (Daejeon Ginseng Traders): Jong-ho Choi.
  IBB (Kobe Baseball Club): Do-hyun Ahn; Shigeyuki Hosoki.
  Required run rate (Kobe Baseball Club): 0.370 R/out (needed 10 runs in 27 outs)
  ============================================================
  ============================================================
  PARTNERSHIP LOG
  Batter 1              Batter 2                Runs  Half
  ──────────────────────────────────────────────────────────────────
  Shota Hosoki          Huy Luong                  1  top
  Huy Luong             Kemar Newton               0  top
  Kemar Newton          Ferdinand Alapag           0  top
  Ferdinand Alapag      Yuxuan Chen                1  top
  Yuxuan Chen           Jong-ho Choi               0  top
  Jong-ho Choi          Tae-jun Ki                 0  top
  Tae-jun Ki            Jong-ho Choi               0  top
  Jong-ho Choi          Woo-sung Yeo               0  top
  Woo-sung Yeo          Shota Hosoki               1  top
  Shota Hosoki          Kemar Newton               0  top
  Kemar Newton          Jun-ho Yook                0  top
  Jun-ho Yook           Chia-hao Yang              0  top
  Chia-hao Yang         Tae-jun Ki                 5  top
  Tae-jun Ki            Woo-sung Yeo               0  top
  Woo-sung Yeo          Shota Hosoki               1  top
  Shota Hosoki          Jun-ho Yook                0  top
  Jun-ho Yook           Kemar Newton               0  top
  Kemar Newton          Yuxuan Chen                0  top
  Yuxuan Chen           Jun-seok Byun              0  top
  Jun-seok Byun         Jong-ho Choi               0  top
  Jong-ho Choi          Mike Malonzo               0  top
  Mike Malonzo          Shinji Hasegawa            0  top
  Shinji Hasegawa       Chia-hao Yang              0  top
  Chia-hao Yang         Ganbold Khalkh             0  top
  Ganbold Khalkh        Woo-sung Yeo               0  top
  Woo-sung Yeo          Shota Hosoki               0  top
  Aaron Sureephong      Matthew Hauser             0  bottom
  Matthew Hauser        Darwin Buchnerov           0  bottom
  Darwin Buchnerov      Takeru Imanishi            1  bottom
  Takeru Imanishi       Macapaar Ututalum          2  bottom
  Macapaar Ututalum     Rio Sameshima              3  bottom
  Rio Sameshima         Darwin Buchnerov           0  bottom
  ──────────────────────────────────────────────────────────────────
  Total partnerships: 32  |  Avg runs/partnership: 0.47
  ============================================================
  PITCHER SPELL LOG
  Pitcher               Half         PA#   BF  OUT    R    H   BB    K  HBP
  ──────────────────────────────────────────────────────────────────────────
  Sandy Brevardov       top            1   24   15     9    11     4     0     1
  Andy Niles            top           25   13   12     0     3     0     3     0
  Woo-sung Yeo          bottom         1    8    4     3     3     1     0     0
  Haoyang Cai           bottom         9    4    2     3     1     1     1     1
  Jiro Fujiwara         bottom        14    4    1     2     2     1     0     0
  Yong-jin Seo          bottom        18    1    0     2     1     0     0     0
  ──────────────────────────────────────────────────────────────────────────
  Total spells: 6


pbp_text:
  ────────────────────────────────────────────────────────────
  BOTTOM HALF | Cienfuegos Northern Cannery batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Parmly Rulli ---
  [0 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [0 outs | 0-1 | empty] HIT BY PITCH
    HBP — Parmly Rulli awarded 1B.
  --- Now batting: Fritz Kitselman ---
  [0 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | 1B] FOUL
    Foul ball. Count: 1-1.
  [0 outs | 1-1 | 1B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [1 outs | 1-1 | empty] BALL IN PLAY
    Fritz Kitselman runs → line out.
    Fritz Kitselman is out.
  --- Now batting: Adrian Murio ---
  [2 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [2 outs | 1-1 | empty] FOUL
    Foul ball. Count: 1-2.
  [2 outs | 1-2 | empty] FOUL
    Foul ball. Count: 1-2.
  [2 outs | 1-2 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Yoán Puig ---
  [3 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [3 outs | 0-1 | empty] BALL IN PLAY
    Yoán Puig runs → single.
  [3 outs | 0-0 | 1B] JOKER INSERTION
    Cienfuegos Northern Cannery sends in joker Brett Benetti for an extra plate appearance (joker #1).
  --- Now batting: Brett Benetti ---
  [3 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [3 outs | 0-1 | 1B] FOUL
    Foul ball. Count: 0-2.
  [3 outs | 0-2 | 1B] FOUL
    Foul ball. Count: 0-2.
  [3 outs | 0-2 | 1B] FOUL OUT
    Foul ball. Count: 0-0.
  [4 outs | 0-0 | 1B] JOKER INSERTION
    Cienfuegos Northern Cannery sends in joker Shamarius Lambert for an extra plate appearance (joker #2).
  --- Now batting: Shamarius Lambert ---
  [4 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [4 outs | 2-0 | 1B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 1B to 2B.
  [4 outs | 2-0 | 2B] BALL IN PLAY
    Shamarius Lambert runs → double.
    Runner advances from 2B to 3B.
  [4 outs | 0-0 | 2B, 3B] JOKER INSERTION
    Cienfuegos Northern Cannery sends in joker Landon Zink for an extra plate appearance (joker #3).
  --- Now batting: Landon Zink ---
  [4 outs | 0-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [4 outs | 0-1 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [4 outs | 0-2 | 2B, 3B] HIT BY PITCH
    HBP — Landon Zink awarded 1B.
  --- Now batting: Jace Nelson ---
  [4 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Jace Nelson runs → error.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Horace Kiernan ---
  [4 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-1.
  [4 outs | 1-1 | 1B, 2B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [5 outs | 1-1 | 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [5 outs | 2-1 | 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [5 outs | 3-1 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 3-2.
  [5 outs | 3-2 | 2B, 3B] BALL
    WALK — Horace Kiernan awarded 1B.
  --- Now batting: Jan-Michael Fouts ---
  [5 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [5 outs | 0-1 | 1B, 2B, 3B] BALL IN PLAY
    Jan-Michael Fouts runs → fly out.
    Jan-Michael Fouts is out.
  [6 outs | 0-0 | 1B, 2B, 3B] DEFENSIVE SUB
    Patrick Pinell replaces Odrisamer Castillo at SS.
  --- Now batting: Joevin Noel ---
  [6 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [6 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [6 outs | 2-0 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-0.
  [6 outs | 3-0 | 1B, 2B, 3B] BALL
    WALK — Joevin Noel awarded 1B.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [6 outs | 0-0 | 1B, 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Bud Lappin exits (11 BF this spell).
  [6 outs | 0-0 | 1B, 2B, 3B] DEFENSIVE SUB
    Marco Teeguarden replaces Gonzalo Harsanyi at 1B.
  --- Now batting: Tim Vest [P] ---
  [6 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [6 outs | 0-1 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [6 outs | 0-2 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-2.
  [6 outs | 1-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [6 outs | 1-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [6 outs | 1-2 | 1B, 2B, 3B] BALL IN PLAY
    Tim Vest runs → fly out.
    ROBBED! Stefan Sabillón runs it down — a sure extra-base hit erased!
    Tim Vest is out.
  [7 outs | 0-0 | 1B, 2B, 3B] DEFENSIVE SUB
    Phil Brito replaces Myron MacPherson at RF.
  --- Now batting: Parmly Rulli ---
  [7 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [7 outs | 1-0 | 1B, 2B, 3B] BALL IN PLAY
    Parmly Rulli runs → ground out.
    Parmly Rulli is out.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  --- Now batting: Fritz Kitselman ---
  [8 outs | 0-0 | 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [8 outs | 0-1 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [8 outs | 0-2 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [8 outs | 0-2 | 2B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  [9 outs | 0-0 | 2B, 3B] DEFENSIVE SUB
    Angel Joyner replaces Robby Rimando at CF.
  --- Now batting: Adrian Murio ---
  [9 outs | 0-0 | 2B, 3B] BALL IN PLAY
    Adrian Murio runs → single.
    Runner at 2B thrown out.
  --- Now batting: Yoán Puig ---
  [10 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [10 outs | 1-0 | 1B, 3B] FOUL
    Foul ball. Count: 1-1.
  [10 outs | 1-1 | 1B, 3B] BALL
    Ball 2. Count: 2-1.
  [10 outs | 2-1 | 1B, 3B] BALL
    Ball 3. Count: 3-1.
  [10 outs | 3-1 | 1B, 3B] BALL IN PLAY
    Yoán Puig runs → single.
    Runner advances from 1B to 2B.
  [10 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Cienfuegos Northern Cannery sends in joker Brett Benetti for an extra plate appearance (joker #4).
  --- Now batting: Brett Benetti ---
  [10 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [10 outs | 0-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [10 outs | 0-2 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [11 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Cienfuegos Northern Cannery sends in joker Shamarius Lambert for an extra plate appearance (joker #5).
  --- Now batting: Shamarius Lambert ---
  [11 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-1.
  [11 outs | 1-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [11 outs | 1-2 | 1B, 2B, 3B] BALL IN PLAY
    Shamarius Lambert runs → fly out.
    Shamarius Lambert is out.
  [12 outs | 0-0 | 1B, 2B, 3B] DEFENSIVE SUB
    Pero Crowe replaces Stefan Sabillón at 3B.
  --- Now batting: Jace Nelson ---
  [12 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [12 outs | 1-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-1.
  [12 outs | 1-1 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [12 outs | 2-1 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [12 outs | 3-1 | 1B, 2B, 3B] BALL
    WALK — Jace Nelson awarded 1B.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Horace Kiernan ---
  [12 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [12 outs | 1-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [12 outs | 1-1 | 1B, 2B, 3B] BALL IN PLAY
    Horace Kiernan runs → single.
    Runner at 2B thrown out.
    Runner scores from 1B.
  --- Now batting: Jan-Michael Fouts ---
  [14 outs | 0-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [14 outs | 0-1 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [14 outs | 0-2 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [15 outs | 0-0 | 1B, 3B] STOLEN BASE ATTEMPT
    Runner caught stealing at 2B.
  --- Now batting: Joevin Noel ---
  [16 outs | 0-0 | 3B] BALL IN PLAY
    Joevin Noel runs → fly out.
    Joevin Noel is out.
  [17 outs | 0-0 | 3B] JOKER INSERTION
    Cienfuegos Northern Cannery sends in joker Landon Zink for an extra plate appearance (joker #6).
  --- Now batting: Landon Zink ---
  [17 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [17 outs | 1-0 | 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [17 outs | 1-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [17 outs | 1-2 | 3B] BALL
    Ball 2. Count: 2-2.
  [17 outs | 2-2 | 3B] FOUL
    Foul ball. Count: 2-2.
  [17 outs | 2-2 | 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [18 outs | 0-0 | 3B] DEFENSIVE SUB
    Keysher Vega replaces Roshan Sampson at LF.
  --- Now batting: Tim Vest [P] ---
  [18 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [18 outs | 1-0 | 3B] BALL
    Ball 2. Count: 2-0.
  [18 outs | 2-0 | 3B] BALL IN PLAY
    Tim Vest runs → single.
  --- Now batting: Parmly Rulli ---
  [18 outs | 0-0 | 1B, 3B] BALL IN PLAY
    Parmly Rulli runs → ground out.
    Parmly Rulli is out.
    Runner advances from 1B to 2B.
  --- Now batting: Fritz Kitselman ---
  [19 outs | 0-0 | 2B, 3B] INTENTIONAL WALK
    INTENTIONAL WALK — Fritz Kitselman given a free pass.
  [19 outs | 0-0 | 1B, 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Francisco Española exits (15 BF this spell).
  [19 outs | 0-0 | 1B, 2B, 3B] DEFENSIVE SUB
    Yadier Vázquez replaces Sam Billiot at C.
  --- Now batting: Adrian Murio ---
  [19 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [19 outs | 0-1 | 1B, 2B, 3B] BALL IN PLAY
    Adrian Murio runs → fly out.
    Adrian Murio is out.
  [20 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Cienfuegos Northern Cannery sends in joker Brett Benetti for an extra plate appearance (joker #7).
  [20 outs | 0-0 | 1B, 2B, 3B] DEFENSIVE SUB
    Hal Flora replaces Yadier Vázquez at CF.
  --- Now batting: Brett Benetti ---
  [20 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Brett Benetti takes a SECOND CHANCE at the plate.
    Hit credited (second chance). Total this AB: 1.
    Second chance — fresh 0-0 count.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner at 1B thrown out.
  [21 outs | 0-1 | 3B] BALL IN PLAY
    Brett Benetti runs → ground out.
    Brett Benetti is out.
  --- Now batting: Yoán Puig ---
  [22 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [22 outs | 1-0 | 3B] BALL IN PLAY
    Yoán Puig runs → ground out.
    Yoán Puig is out.
  [23 outs | 0-0 | 3B] JOKER INSERTION
    Cienfuegos Northern Cannery sends in joker Shamarius Lambert for an extra plate appearance (joker #8).
  --- Now batting: Shamarius Lambert ---
  [23 outs | 0-0 | 3B] BALL IN PLAY
    Shamarius Lambert runs → line out.
    Shamarius Lambert is out.
  [24 outs | 0-0 | 3B] JOKER INSERTION
    Cienfuegos Northern Cannery sends in joker Landon Zink for an extra plate appearance (joker #9).
  --- Now batting: Landon Zink ---
  [24 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [24 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [24 outs | 0-2 | 3B] BALL IN PLAY
    Landon Zink runs → single.
    Runner at 3B thrown out.
  [25 outs | 0-0 | 1B] DEFENSIVE SUB
    Toby Lord replaces Keysher Vega at 3B.
  --- Now batting: Jace Nelson ---
  [25 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [25 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [25 outs | 1-1 | 1B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 2B.
  [25 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [25 outs | 2-1 | 2B] FOUL
    Foul ball. Count: 2-2.
  [25 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [25 outs | 3-2 | 2B] BALL
    WALK — Jace Nelson awarded 1B.
  [25 outs | 0-0 | 1B, 2B] DEFENSIVE SUB
    Howard Estep replaces Pero Crowe at CF.
  --- Now batting: Horace Kiernan ---
  [25 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [25 outs | 0-1 | 1B, 2B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 1B, 2B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 1B, 2B] BALL
    Ball 1. Count: 1-2.
  [25 outs | 1-2 | 1B, 2B] BALL IN PLAY
    Horace Kiernan runs → error.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [25 outs | 0-0 | 1B, 2B, 3B] DEFENSIVE SUB
    Mitchell McLarty replaces Howard Estep at SS.
  --- Now batting: Jan-Michael Fouts ---
  [25 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [25 outs | 0-1 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [25 outs | 0-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 1B, 2B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  [26 outs | 0-0 | 1B, 2B, 3B] DEFENSIVE SUB
    Phil Kuzuhara replaces Mitchell McLarty at 2B.
  --- Now batting: Joevin Noel ---
  [26 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [26 outs | 0-1 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [26 outs | 0-2 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.

  End of bottom half — Cienfuegos Northern Cannery: 5 run(s), 8 hit(s), 27 out(s) | Run rate: 0.185
  ============================================================
  HALFTIME
    Perth Air Force: 0 run(s)
    Cienfuegos Northern Cannery need 1 run(s) to win
    Required run rate: 0.037 R/out
  ============================================================

  ────────────────────────────────────────────────────────────
  TOP HALF | Perth Air Force batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Toby Lord ---
  [0 outs | 0-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [0 outs | 0-1 | empty] CALLED STRIKE
    Strike (called). Count: 0-2.
  [0 outs | 0-2 | empty] BALL
    Ball 1. Count: 1-2.
  [0 outs | 1-2 | empty] BALL IN PLAY
    Toby Lord runs → fly out.
    Toby Lord is out.
  --- Now batting: Hillel Cerretani ---
  [1 outs | 0-0 | empty] BALL IN PLAY
    Hillel Cerretani runs → single.
  [1 outs | 0-0 | 1B] JOKER INSERTION
    Perth Air Force sends in joker Strong Sulaver for an extra plate appearance (joker #1).
  --- Now batting: Strong Sulaver ---
  [1 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [1 outs | 0-1 | 1B] BALL IN PLAY
    Strong Sulaver runs → single.
    Runner advances from 1B to 3B.
  [1 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Perth Air Force sends in joker Pablo Nelson for an extra plate appearance (joker #2).
  [1 outs | 0-0 | 1B, 3B] PINCH RUNNER
    Jonathan Wernet pinch-runs for Hillel Cerretani at 3B.
  --- Now batting: Pablo Nelson ---
  [1 outs | 0-0 | 1B, 3B] FOUL
    Foul ball. Count: 0-1.
  [1 outs | 0-1 | 1B, 3B] BALL
    Ball 1. Count: 1-1.
  [1 outs | 1-1 | 1B, 3B] BALL
    Ball 2. Count: 2-1.
  [1 outs | 2-1 | 1B, 3B] BALL
    Ball 3. Count: 3-1.
  [1 outs | 3-1 | 1B, 3B] FOUL
    Foul ball. Count: 3-2.
  [1 outs | 3-2 | 1B, 3B] BALL IN PLAY
    Pablo Nelson runs → single.
    Runner advances from 1B to 2B.
  [1 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Perth Air Force sends in joker Brandon Lalwani for an extra plate appearance (joker #3).
  --- Now batting: Brandon Lalwani ---
  [1 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | 1B, 2B, 3B] BALL IN PLAY
    Brandon Lalwani runs → fly out.
    Brandon Lalwani is out.
  [2 outs | 0-0 | 1B, 2B, 3B] PINCH HITTER
    Ashish Ramessar pinch-hits for Phil Kuzuhara.
  --- Now batting: Ashish Ramessar ---
  [2 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 1B, 2B, 3B] BALL IN PLAY
    Ashish Ramessar runs → ground out.
    Ashish Ramessar is out.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  --- Now batting: Angel Joyner ---
  [3 outs | 0-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [3 outs | 0-1 | 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [3 outs | 1-1 | 2B, 3B] BALL IN PLAY
    Angel Joyner takes a SECOND CHANCE at the plate.
    Hit credited (second chance). Total this AB: 1.
    Second chance — fresh 0-0 count.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
  [3 outs | 1-2 | 3B] FOUL
    Foul ball. Count: 1-2.
  [3 outs | 1-2 | 3B] FOUL
    Foul ball. Count: 1-2.
  [3 outs | 1-2 | 3B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Phil Brito ---
  [4 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 3B] FOUL
    Foul ball. Count: 1-1.
  [4 outs | 1-1 | 3B] FOUL
    Foul ball. Count: 1-2.
  [4 outs | 1-2 | 3B] BALL
    Ball 2. Count: 2-2.
  [4 outs | 2-2 | 3B] BALL
    Ball 3. Count: 3-2.
  [4 outs | 3-2 | 3B] BALL
    WALK — Phil Brito awarded 1B.
  [4 outs | 0-0 | 1B, 3B] PINCH RUNNER
    Raz Jensen pinch-runs for Phil Brito at 1B.
  --- Now batting: Patrick Pinell ---
  [4 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 1B, 3B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 2B.
  [4 outs | 1-0 | 2B, 3B] FOUL
    Foul ball. Count: 1-1.
  [4 outs | 1-1 | 2B, 3B] BALL IN PLAY
    Patrick Pinell runs → single.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
  [4 outs | 0-0 | 1B, 3B] PINCH RUNNER
    Wesley Hart pinch-runs for Patrick Pinell at 1B.
  --- Now batting: Hal Flora ---
  [4 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 1B, 3B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 2B.
  [4 outs | 1-0 | 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [4 outs | 2-0 | 2B, 3B] BALL
    Ball 3. Count: 3-0.
  [4 outs | 3-0 | 2B, 3B] BALL
    WALK — Hal Flora awarded 1B.
  --- Now batting: Marco Teeguarden ---
  [4 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [4 outs | 0-1 | 1B, 2B, 3B] BALL IN PLAY
    Marco Teeguarden runs → line out.
    Marco Teeguarden is out.
  --- Now batting: Bud Lappin [P] ---
  [5 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Bud Lappin runs → single.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [5 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Keacy Crandon pinch-runs for Hal Flora at 2B.
  --- Now batting: Toby Lord ---
  [5 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Toby Lord runs → single.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [5 outs | 0-0 | 1B, 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Tim Vest exits (13 BF this spell).
  [5 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Perth Air Force sends in joker Strong Sulaver for an extra plate appearance (joker #4).
  --- Now batting: Strong Sulaver ---
  [5 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [5 outs | 1-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [5 outs | 1-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [5 outs | 1-2 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [6 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Perth Air Force sends in joker Pablo Nelson for an extra plate appearance (joker #5).
  --- Now batting: Pablo Nelson ---
  [6 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [6 outs | 1-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [6 outs | 1-1 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [6 outs | 2-1 | 1B, 2B, 3B] BALL IN PLAY
    Pablo Nelson runs → single.
    Runner at 3B thrown out.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Jonathan Wernet ---
  [7 outs | 0-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [7 outs | 0-1 | 1B, 2B, 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
    1 run(s) score.

  End of top half — Perth Air Force: 6 run(s), 8 hit(s), 7 out(s) | Run rate: 0.857

  ============================================================
  GAME OVER: PERTH AIR FORCE WIN 6–5
  ============================================================
  Final score: Perth Air Force 6, Cienfuegos Northern Cannery 5
  ============================================================
  LINE SCORE
                          1      R
  Perth Air Force         6      6
  Cienfuegos Northern Cannery      5      5

  ============================================================
  PERTH AIR FORCE BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Bud Lappin              1    1    1    1    0    0    0     1    0    0    0    0     0    0
  Pero Crowe              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sam Billiot             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hillel Cerretani        1    1    0    1    0    0    0     0    0    0    0    0     0    0
  Keysher Vega            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Myron MacPherson        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Wesley Hart             0    0    1    0    0    0    0     0    0    0    0    0     0    0
  Gonzalo Harsanyi        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Raz Jensen              0    0    1    0    0    0    0     0    0    0    0    0     0    0
  Strong Sulaver          2    2    1    1    0    0    0     0    0    1    0    0     0    0
  Pablo Nelson            2    2    1    2    0    0    0     0    0    0    0    0     0    0
  Brandon Lalwani         1    1    0    0    0    0    0     0    0    0    0    0     0    0
  Patrick Pinell          1    1    0    1    0    0    0     1    0    0    0    0     0    0
  Angel Joyner            1    1    0    1    0    0    0     1    0    0    0    1     1    0
  Mitchell McLarty        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hal Flora               1    0    0    0    0    0    0     0    1    0    0    0     0    0
  Keacy Crandon           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jonathan Wernet         0    0    1    0    0    0    0     0    0    0    0    0     0    0
  Marco Teeguarden        1    1    0    0    0    0    0     0    0    0    0    0     0    0
  Ashish Ramessar         1    1    0    0    0    0    0     1    0    0    0    0     0    0
  Yadier Vázquez          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Odrisamer Castillo      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Toby Lord               2    2    0    1    0    0    0     1    0    0    0    0     0    0
  Phil Kuzuhara           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Stefan Sabillón         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Roshan Sampson          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Phil Brito              1    0    0    0    0    0    0     0    1    0    0    0     0    0
  Howard Estep            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Danny Soto              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ángelo Gallardo         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Melville Lodge          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kendrys Beltrán         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Godoy Azpilicueta       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Francisco Española      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mitchell O'Bryant       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Andrew Gromley          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mack Munro              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Carlos Pérez            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dylan Yim               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ramesh Hemraj           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ed Garrow               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Doug McElreath          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Watson Francavilla      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Evan Gazzaniga          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Robby Rimando           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 15   13    6    8    0    0    0     5    2    1    0    1     1    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Bud Lappin             11    6    2    2    2    1    2
  Francisco Española     15   13    4    2    2    3    0
  Melville Lodge          9    8    2    1    1    1    0

  ============================================================
  CIENFUEGOS NORTHERN CANNERY BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Tim Vest                2    2    0    1    0    0    0     0    0    0    0    0     0    0
  Yoán Alfonso            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Adrian Murio            3    3    1    1    0    0    0     0    0    1    0    0     0    0
  Derrick Rimando         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Diehl Kielce            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Herb McCluer            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Parmly Rulli            3    2    0    0    0    0    0     1    0    0    1    0     0    0
  Kenyatta Ionescu        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jace Nelson             3    1    0    0    0    0    0     2    2    0    0    0     0    0
  Brett Benetti           3    3    0    1    0    0    0     1    0    1    0    1     1    0
  Shamarius Lambert       3    3    1    1    1    0    0     0    0    0    0    0     0    0
  Landon Zink             3    2    1    1    0    0    0     0    0    1    1    0     0    0
  Fritz Kitselman         3    2    0    0    0    0    0     0    1    0    0    0     0    0
  Hillel Roeske           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jordan Slocum           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rayshawn Daavettila     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jan-Michael Fouts       3    3    0    0    0    0    0     0    0    1    0    0     0    0
  Oscar Redondo           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Malcolm Loukas          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Miiko Rodriguez         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Eddie Cook              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Turner Wambach          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Zaydrius Dabek          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Duke Mbakwe             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yoán Puig               3    3    1    2    0    0    0     0    0    0    0    0     0    0
  Horace Kiernan          3    2    1    1    0    0    0     0    1    0    0    0     0    0
  Greg Barlow             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Christian Daubert       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Marcos Besler           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hillel Vitali           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Shamar Pang             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Durell Blanch           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Liván Hechavarría       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Riley Boston            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Arias Tontz             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jesse Woeller           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jaquan Klitch           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Domingo García          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mylan Basso             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kotkan Rulli            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Leon Kema               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Carl Rogers             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hubertus Dwyer          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Joevin Noel             3    2    0    0    0    0    0     1    1    1    0    0     0    0
  Croix Mulloy            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 35   28    5    8    1    0    0     5    5    5    2    1     1    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Tim Vest               13    5    7    5    2    0    0
  Liván Hechavarría       2    2    1    1    0    1    0

  ============================================================
  Run rate:  Perth Air Force  0.222    Cienfuegos Northern Cannery  0.185
  Second-Chance ABs:  Perth Air Force  1    Cienfuegos Northern Cannery  1
  IBB (Cienfuegos Northern Cannery): Fritz Kitselman.
  Required run rate (Cienfuegos Northern Cannery): 0.037 R/out (needed 1 runs in 27 outs)
  ============================================================
  ============================================================
  PARTNERSHIP LOG
  Batter 1              Batter 2                Runs  Half
  ──────────────────────────────────────────────────────────────────
  Parmly Rulli          Fritz Kitselman            0  bottom
  Fritz Kitselman       Adrian Murio               0  bottom
  Adrian Murio          Brett Benetti              0  bottom
  Brett Benetti         Jace Nelson                1  bottom
  Jace Nelson           Jan-Michael Fouts          0  bottom
  Jan-Michael Fouts     Tim Vest                   1  bottom
  Tim Vest              Parmly Rulli               1  bottom
  Parmly Rulli          Fritz Kitselman            0  bottom
  Fritz Kitselman       Joevin Noel                0  bottom
  Joevin Noel           Brett Benetti              0  bottom
  Brett Benetti         Shamarius Lambert          0  bottom
  Shamarius Lambert     Yoán Puig                  1  bottom
  Yoán Puig             Jace Nelson                0  bottom
  Jace Nelson           Jan-Michael Fouts          0  bottom
  Jan-Michael Fouts     Horace Kiernan             0  bottom
  Horace Kiernan        Joevin Noel                0  bottom
  Joevin Noel           Landon Zink                0  bottom
  Landon Zink           Parmly Rulli               0  bottom
  Parmly Rulli          Adrian Murio               0  bottom
  Adrian Murio          Fritz Kitselman            1  bottom
  Fritz Kitselman       Brett Benetti              0  bottom
  Brett Benetti         Yoán Puig                  0  bottom
  Yoán Puig             Shamarius Lambert          0  bottom
  Shamarius Lambert     Tim Vest                   0  bottom
  Tim Vest              Jan-Michael Fouts          0  bottom
  Jan-Michael Fouts     Joevin Noel                0  bottom
  Toby Lord             Brandon Lalwani            0  top
  Brandon Lalwani       Ashish Ramessar            1  top
  Ashish Ramessar       Angel Joyner               1  top
  Angel Joyner          Marco Teeguarden           1  top
  Marco Teeguarden      Strong Sulaver             2  top
  Strong Sulaver        Keacy Crandon              0  top
  ──────────────────────────────────────────────────────────────────
  Total partnerships: 32  |  Avg runs/partnership: 0.31
  ============================================================
  PITCHER SPELL LOG
  Pitcher               Half         PA#   BF  OUT    R    H   BB    K  HBP
  ──────────────────────────────────────────────────────────────────────────
  Bud Lappin            bottom         1   11    6     2     2     2     1     2
  Francisco Española    bottom        12   15   13     2     4     2     3     0
  Melville Lodge        bottom        27    9    8     1     2     1     1     0
  Tim Vest              top            1   13    5     5     7     2     0     0
  Liván Hechavarría     top           14    2    2     1     1     0     1     0
  ──────────────────────────────────────────────────────────────────────────
  Total spells: 5


pbp_text:
  ────────────────────────────────────────────────────────────
  BOTTOM HALF | Seoul Yagu Club batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Keisei Sasaki ---
  [0 outs | 0-0 | empty] BALL IN PLAY
    Keisei Sasaki runs → double.
  --- Now batting: Hsin-chih Kao ---
  [0 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [0 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [0 outs | 1-1 | 2B] BALL IN PLAY
    Hsin-chih Kao runs → single.
    Runner advances from 2B to 3B.
  --- Now batting: Hyung-jun Jung ---
  [0 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [0 outs | 1-1 | 1B, 3B] BALL IN PLAY
    Hyung-jun Jung runs → line out.
    Hyung-jun Jung is out.
  [1 outs | 0-0 | 1B, 3B] PINCH RUNNER
    Kotaro Machino pinch-runs for Hsin-chih Kao at 1B.
  --- Now batting: Joon-young Heo ---
  [1 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | 1B, 3B] BALL IN PLAY
    Joon-young Heo runs → fly out.
    Joon-young Heo is out.
    Runner at 3B thrown out.
  --- Now batting: Dmitri Sobolev ---
  [3 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [3 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [3 outs | 1-1 | 1B] BALL
    Ball 2. Count: 2-1.
  [3 outs | 2-1 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 2-2.
  [3 outs | 2-2 | 1B] BALL
    Ball 3. Count: 3-2.
  [3 outs | 3-2 | 1B] FOUL
    Foul ball. Count: 3-2.
  [3 outs | 3-2 | 1B] FOUL
    Foul ball. Count: 3-2.
  [3 outs | 3-2 | 1B] BALL
    WALK — Dmitri Sobolev awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Deandre Schneider ---
  [3 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [3 outs | 1-0 | 1B, 2B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [4 outs | 1-0 | 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [4 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [4 outs | 2-1 | 2B] BALL
    Ball 3. Count: 3-1.
  [4 outs | 3-1 | 2B] BALL
    WALK — Deandre Schneider awarded 1B.
  [4 outs | 0-0 | 1B, 2B] PINCH RUNNER
    Dong-gun Song pinch-runs for Deandre Schneider at 1B.
  --- Now batting: Maikel Jusino ---
  [4 outs | 0-0 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [4 outs | 0-1 | 1B, 2B] FOUL
    Foul ball. Count: 0-2.
  [4 outs | 0-2 | 1B, 2B] FOUL
    Foul ball. Count: 0-2.
  [4 outs | 0-2 | 1B, 2B] BALL
    Ball 1. Count: 1-2.
  [4 outs | 1-2 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [5 outs | 0-0 | 1B, 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  --- Now batting: Nam-joon Gong ---
  [5 outs | 0-0 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [5 outs | 0-1 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [5 outs | 0-2 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [6 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Seoul Yagu Club sends in joker Khaltmaa Gobi for an extra plate appearance (joker #1).
  [6 outs | 0-0 | 1B, 3B] DEFENSIVE SUB
    Wuilker Huenteo replaces Yūichi Sugeno at 2B.
  --- Now batting: Khaltmaa Gobi ---
  [6 outs | 0-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [6 outs | 0-1 | 1B, 3B] FOUL
    Foul ball. Count: 0-2.
  [6 outs | 0-2 | 1B, 3B] BALL
    Ball 1. Count: 1-2.
  [6 outs | 1-2 | 1B, 3B] BALL IN PLAY
    Khaltmaa Gobi runs → line out.
    Khaltmaa Gobi is out.
  [7 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Seoul Yagu Club sends in joker Somchai Sarachat for an extra plate appearance (joker #2).
  [7 outs | 0-0 | 1B, 3B] DEFENSIVE SUB
    Thai-Son Hudkins replaces Davaakhuu Orkhon at 1B.
  --- Now batting: Somchai Sarachat ---
  [7 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [7 outs | 1-0 | 1B, 3B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 2B.
  [7 outs | 1-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [7 outs | 1-1 | 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [7 outs | 2-1 | 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [7 outs | 3-1 | 2B, 3B] FOUL
    Foul ball. Count: 3-2.
  [7 outs | 3-2 | 2B, 3B] BALL IN PLAY
    Somchai Sarachat runs → double.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
  [7 outs | 0-0 | 2B, 3B] DEFENSIVE SUB
    Jun-ho Kwak replaces Min-jae Hong at SS.
  --- Now batting: Harold Ortwerth [P] ---
  [7 outs | 0-0 | 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [7 outs | 0-1 | 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [7 outs | 1-1 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [7 outs | 1-2 | 2B, 3B] BALL
    Ball 2. Count: 2-2.
  [7 outs | 2-2 | 2B, 3B] BALL
    Ball 3. Count: 3-2.
  [7 outs | 3-2 | 2B, 3B] BALL
    WALK — Harold Ortwerth awarded 1B.
  [7 outs | 0-0 | 1B, 2B, 3B] JOKER INSERTION
    Seoul Yagu Club sends in joker Khaltmaa Gobi for an extra plate appearance (joker #3).
  [7 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Seok-jin Hong pinch-runs for Harold Ortwerth at 1B.
  --- Now batting: Khaltmaa Gobi ---
  [7 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Khaltmaa Gobi runs → single.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Keisei Sasaki ---
  [7 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [7 outs | 0-1 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [7 outs | 1-1 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [7 outs | 2-1 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [7 outs | 3-1 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 3-2.
  [7 outs | 3-2 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [8 outs | 0-0 | 1B, 2B, 3B] PINCH HITTER
    Junjie Xie pinch-hits for Kotaro Machino.
  --- Now batting: Junjie Xie ---
  [8 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [8 outs | 2-0 | 1B, 2B, 3B] BALL IN PLAY
    Junjie Xie runs → single.
    Runner scores from 2B.
    Runner advances from 1B to 2B.
  [8 outs | 0-0 | 1B, 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Song-chol Pak exits (14 BF this spell).
  [8 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Chi Cheng pinch-runs for Junjie Xie at 1B.
  --- Now batting: Hyung-jun Jung ---
  [8 outs | 0-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [8 outs | 0-1 | 1B, 2B, 3B] BALL IN PLAY
    Hyung-jun Jung runs → fly out.
    Hyung-jun Jung is out.
  --- Now batting: Joon-young Heo ---
  [9 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [9 outs | 0-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [9 outs | 0-2 | 1B, 2B, 3B] BALL IN PLAY
    Joon-young Heo runs → single.
    Runner at 2B thrown out.
    Runner advances from 1B to 2B.
  [10 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Yasuyuki Taguchi pinch-runs for Joon-young Heo at 1B.
  [10 outs | 0-0 | 1B, 2B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  --- Now batting: Dmitri Sobolev ---
  [11 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [11 outs | 2-0 | 2B, 3B] BALL IN PLAY
    Dmitri Sobolev takes a SECOND CHANCE at the plate.
    Hit credited (second chance). Total this AB: 1.
    Second chance — fresh 0-0 count.
    Runner at 3B thrown out.
    Runner advances from 2B to 3B.
  [12 outs | 2-1 | 3B] BALL IN PLAY
    Dmitri Sobolev runs → fly out.
    Dmitri Sobolev is out.
  --- Now batting: Dong-gun Song ---
  [13 outs | 0-0 | 3B] BALL IN PLAY
    Dong-gun Song takes a SECOND CHANCE at the plate.
    Second chance — fresh 0-0 count.
    Runner at 3B thrown out.
  [14 outs | 0-1 | empty] CALLED STRIKE
    Strike (called). Count: 0-2.
  [14 outs | 0-2 | empty] FOUL
    Foul ball. Count: 0-2.
  [14 outs | 0-2 | empty] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Maikel Jusino ---
  [15 outs | 0-0 | empty] BALL IN PLAY
    Maikel Jusino runs → single.
  --- Now batting: Nam-joon Gong ---
  [15 outs | 0-0 | 1B] SAC BUNT
  --- Now batting: Seok-jin Hong ---
  [16 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [16 outs | 1-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [16 outs | 1-1 | 2B] FOUL
    Foul ball. Count: 1-2.
  [16 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [16 outs | 2-2 | 2B] FOUL
    Foul ball. Count: 2-2.
  [16 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [16 outs | 3-2 | 2B] BALL IN PLAY
    Seok-jin Hong runs → line out.
    Seok-jin Hong is out.
  --- Now batting: Keisei Sasaki ---
  [17 outs | 0-0 | 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [17 outs | 0-1 | 2B] FOUL
    Foul ball. Count: 0-2.
  [17 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [17 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [17 outs | 2-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [18 outs | 0-0 | 2B] JOKER INSERTION
    Seoul Yagu Club sends in joker Somchai Sarachat for an extra plate appearance (joker #4).
  [18 outs | 0-0 | 2B] PHASE TRANSITION
    Seoul Yagu Club switches to its defensive lineup: Reggie McNeillov, Chia-ming Hsia in for Dmitri Sobolev, Chi Cheng.
  --- Now batting: Somchai Sarachat ---
  [18 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [18 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [18 outs | 1-1 | 2B] BALL
    Ball 2. Count: 2-1.
  [18 outs | 2-1 | 2B] HIT BY PITCH
    HBP — Somchai Sarachat awarded 1B.
  [18 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Seoul Yagu Club sends in joker Khaltmaa Gobi for an extra plate appearance (joker #5).
  [18 outs | 0-0 | 1B, 2B] DEFENSIVE SWAP
    Galih Suharto comes in for Khaltmaa Gobi (defensive swap).
  [18 outs | 0-0 | 1B, 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  --- Now batting: Khaltmaa Gobi ---
  [18 outs | 0-0 | 1B, 3B] BALL IN PLAY
    Khaltmaa Gobi runs → double.
    Runner scores from 3B.
    Runner advances from 1B to 3B.
  --- Now batting: Galih Suharto ---
  [18 outs | 0-0 | 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [18 outs | 0-1 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [18 outs | 0-2 | 2B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  [19 outs | 0-0 | 2B, 3B] DEFENSIVE SUB
    Teddy Dowland replaces Saúl Fontes at C.
  --- Now batting: Hyung-jun Jung ---
  [19 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | 2B, 3B] FOUL
    Foul ball. Count: 1-1.
  [19 outs | 1-1 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [19 outs | 1-2 | 2B, 3B] BALL IN PLAY
    Hyung-jun Jung runs → double.
    Runner scores from 3B.
    Runner scores from 2B.
  [19 outs | 0-0 | 2B] DEFENSIVE SUB
    Daiji Fuda replaces Teddy Dowland at CF.
  --- Now batting: Yasuyuki Taguchi ---
  [19 outs | 0-0 | 2B] HIT BY PITCH
    HBP — Yasuyuki Taguchi awarded 1B.
  [19 outs | 0-0 | 1B, 2B] STOLEN BASE ATTEMPT
    Runner caught stealing at 3B.
  --- Now batting: Reggie McNeillov ---
  [20 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [20 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [20 outs | 2-0 | 1B] BALL
    Ball 3. Count: 3-0.
  [20 outs | 3-0 | 1B] BALL
    WALK — Reggie McNeillov awarded 1B.
    Runner advances from 1B to 2B.
  [20 outs | 0-0 | 1B, 2B] PITCHING CHANGE
    PITCHING CHANGE: Cristhian Ocampo exits (13 BF this spell).
  [20 outs | 0-0 | 1B, 2B] PINCH HITTER
    Teodoro Velasco pinch-hits for Dong-gun Song.
  [20 outs | 0-0 | 1B, 2B] PINCH RUNNER
    Su-ryon Paek pinch-runs for Reggie McNeillov at 1B.
  --- Now batting: Teodoro Velasco ---
  [20 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [20 outs | 1-0 | 1B, 2B] BALL
    Ball 2. Count: 2-0.
  [20 outs | 2-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [20 outs | 2-1 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 2-2.
  [20 outs | 2-2 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Maikel Jusino ---
  [21 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [21 outs | 0-1 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [21 outs | 0-2 | 1B, 2B] STOLEN BASE ATTEMPT
    Runner caught stealing at 3B.
  [22 outs | 0-2 | 1B] FOUL
    Foul ball. Count: 0-2.
  [22 outs | 0-2 | 1B] FOUL
    Foul ball. Count: 0-2.
  [22 outs | 0-2 | 1B] BALL IN PLAY
    Maikel Jusino runs → single.
    Runner advances from 1B to 3B.
  --- Now batting: Nam-joon Gong ---
  [22 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [22 outs | 1-0 | 1B, 3B] BALL
    Ball 2. Count: 2-0.
  [22 outs | 2-0 | 1B, 3B] BALL
    Ball 3. Count: 3-0.
  [22 outs | 3-0 | 1B, 3B] FOUL
    Foul ball. Count: 3-1.
  [22 outs | 3-1 | 1B, 3B] BALL
    WALK — Nam-joon Gong awarded 1B.
    Runner advances from 1B to 2B.
  [22 outs | 0-0 | 1B, 2B, 3B] PINCH HITTER
    Kuan-ting Tu pinch-hits for Seok-jin Hong.
  [22 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Nathanael Gokongwei pinch-runs for Nam-joon Gong at 1B.
  --- Now batting: Kuan-ting Tu ---
  [22 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [22 outs | 0-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [22 outs | 0-2 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-2.
  [22 outs | 1-2 | 1B, 2B, 3B] BALL IN PLAY
    Kuan-ting Tu runs → double play.
    Kuan-ting Tu is out.
    Runner at 1B thrown out.
  --- Now batting: Keisei Sasaki ---
  [24 outs | 0-0 | 2B, 3B] BALL IN PLAY
    Keisei Sasaki runs → double.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
  [24 outs | 0-0 | 2B, 3B] JOKER INSERTION
    Seoul Yagu Club sends in joker Somchai Sarachat for an extra plate appearance (joker #6).
  --- Now batting: Somchai Sarachat ---
  [24 outs | 0-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [24 outs | 0-1 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [24 outs | 0-2 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [24 outs | 0-2 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [25 outs | 0-0 | 2B, 3B] JOKER INSERTION
    Seoul Yagu Club sends in joker Khaltmaa Gobi for an extra plate appearance (joker #7).
  --- Now batting: Khaltmaa Gobi ---
  [25 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [25 outs | 1-0 | 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [25 outs | 2-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [25 outs | 2-1 | 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [25 outs | 3-1 | 2B, 3B] BALL
    WALK — Khaltmaa Gobi awarded 1B.
  --- Now batting: Galih Suharto ---
  [25 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [25 outs | 0-1 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [25 outs | 0-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-2.
  [25 outs | 1-2 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [26 outs | 0-0 | 1B, 2B, 3B] PINCH RUNNER
    Ryan Al-Rashdan pinch-runs for Keisei Sasaki at 2B.
  --- Now batting: Hyung-jun Jung ---
  [26 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [26 outs | 0-1 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [26 outs | 0-2 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.

  End of bottom half — Seoul Yagu Club: 7 run(s), 12 hit(s), 27 out(s) | Run rate: 0.259
  ============================================================
  HALFTIME
    Kia Hawks: 0 run(s)
    Seoul Yagu Club need 1 run(s) to win
    Required run rate: 0.037 R/out
  ============================================================

  ────────────────────────────────────────────────────────────
  TOP HALF | Kia Hawks batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Vladimir Soto ---
  [0 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [0 outs | 0-1 | empty] CALLED STRIKE
    Strike (called). Count: 0-2.
  [0 outs | 0-2 | empty] FOUL
    Foul ball. Count: 0-2.
  [0 outs | 0-2 | empty] FOUL
    Foul ball. Count: 0-2.
  [0 outs | 0-2 | empty] BALL
    Ball 1. Count: 1-2.
  [0 outs | 1-2 | empty] FOUL OUT
    Foul ball. Count: 0-0.
  [1 outs | 0-0 | empty] JOKER INSERTION
    Kia Hawks sends in joker Takuma Terachi for an extra plate appearance (joker #1).
  --- Now batting: Takuma Terachi ---
  [1 outs | 0-0 | empty] BALL IN PLAY
    Takuma Terachi runs → fly out.
    Takuma Terachi is out.
  --- Now batting: Daiji Fuda ---
  [2 outs | 0-0 | empty] BALL IN PLAY
    Daiji Fuda runs → ground out.
    Daiji Fuda is out.
  --- Now batting: Jun-ho Kwak ---
  [3 outs | 0-0 | empty] CALLED STRIKE
    Strike (called). Count: 0-1.
  [3 outs | 0-1 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [3 outs | 0-2 | empty] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Seong-min Ko ---
  [4 outs | 0-0 | empty] BALL IN PLAY
    Seong-min Ko runs → single.
  --- Now batting: Tae-jun Ma ---
  [4 outs | 0-0 | 1B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [4 outs | 0-1 | 1B] FOUL
    Foul ball. Count: 0-2.
  [4 outs | 0-2 | 1B] BALL IN PLAY
    Tae-jun Ma runs → double.
    Runner scores from 1B.
  --- Now batting: Craig Kirk ---
  [4 outs | 0-0 | 2B] BALL IN PLAY
    Craig Kirk runs → ground out.
    Craig Kirk is out.
    Runner advances from 2B to 3B.
  --- Now batting: Wuilker Huenteo ---
  [5 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [5 outs | 1-0 | 3B] BALL
    Ball 2. Count: 2-0.
  [5 outs | 2-0 | 3B] FOUL
    Foul ball. Count: 2-1.
  [5 outs | 2-1 | 3B] BALL
    Ball 3. Count: 3-1.
  [5 outs | 3-1 | 3B] BALL IN PLAY
    Wuilker Huenteo runs → fly out.
    Wuilker Huenteo is out.
    Runner scores from 3B.
  --- Now batting: Thai-Son Hudkins ---
  [6 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [6 outs | 0-1 | empty] BALL IN PLAY
    Thai-Son Hudkins runs → triple.
  --- Now batting: Song-chol Pak [P] ---
  [6 outs | 0-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [6 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [6 outs | 1-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [6 outs | 1-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Vladimir Soto ---
  [7 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [7 outs | 0-1 | 3B] BALL IN PLAY
    Vladimir Soto runs → fly out.
    Vladimir Soto is out.
    Runner scores from 3B.
  [8 outs | 0-0 | empty] JOKER INSERTION
    Kia Hawks sends in joker Nam-joon Jeong for an extra plate appearance (joker #2).
  --- Now batting: Nam-joon Jeong ---
  [8 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | empty] CALLED STRIKE
    Strike (called). Count: 1-1.
  [8 outs | 1-1 | empty] FOUL
    Foul ball. Count: 1-2.
  [8 outs | 1-2 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [9 outs | 0-0 | empty] JOKER INSERTION
    Kia Hawks sends in joker Ye-jun Hong for an extra plate appearance (joker #3).
  --- Now batting: Ye-jun Hong ---
  [9 outs | 0-0 | empty] BALL IN PLAY
    Ye-jun Hong runs → HOME RUN.
    Batter scores (HR).
    [Walk-Back — Ye-jun Hong retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Montgomery Ward.]
  [9 outs | 0-0 | 3B] PITCHING CHANGE
    PITCHING CHANGE: Harold Ortwerth exits (13 BF this spell).
  [9 outs | 0-0 | 3B] JOKER INSERTION
    Kia Hawks sends in joker Takuma Terachi for an extra plate appearance (joker #4).
  --- Now batting: Takuma Terachi ---
  [9 outs | 0-0 | 3B] BALL IN PLAY
    Takuma Terachi runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Takuma Terachi retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Beatrice Foods.]
  [9 outs | 0-0 | 3B] PINCH HITTER
    Byung-ho Ju pinch-hits for Daiji Fuda.
  --- Now batting: Byung-ho Ju ---
  [9 outs | 0-0 | 3B] BALL IN PLAY
    Byung-ho Ju runs → single.
    Runner scores from 3B.
  [9 outs | 0-0 | 1B] PINCH RUNNER
    Sang-woo Koo pinch-runs for Byung-ho Ju at 1B.
  --- Now batting: Jun-ho Kwak ---
  [9 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [9 outs | 1-0 | 1B] BALL
    Ball 2. Count: 2-0.
  [9 outs | 2-0 | 1B] BALL
    Ball 3. Count: 3-0.
  [9 outs | 3-0 | 1B] BALL
    WALK — Jun-ho Kwak awarded 1B.
    Runner advances from 1B to 2B.
  [9 outs | 0-0 | 1B, 2B] PINCH RUNNER
    Hyun-ki Gu pinch-runs for Jun-ho Kwak at 1B.
  --- Now batting: Seong-min Ko ---
  [9 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [9 outs | 1-0 | 1B, 2B] STOLEN BASE ATTEMPT
    Stolen base — runner advances to 3B.
  [9 outs | 1-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [9 outs | 1-1 | 1B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [10 outs | 1-1 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [10 outs | 1-2 | 3B] BALL
    Ball 2. Count: 2-2.
  [10 outs | 2-2 | 3B] FOUL
    Foul ball. Count: 2-2.
  [10 outs | 2-2 | 3B] BALL
    Ball 3. Count: 3-2.
  [10 outs | 3-2 | 3B] BALL IN PLAY
    Seong-min Ko runs → infield single.
    Runner scores from 3B.

  End of top half — Kia Hawks: 8 run(s), 7 hit(s), 10 out(s) | Run rate: 0.800

  ============================================================
  GAME OVER: KIA HAWKS WIN 8–7
  ============================================================
  Final score: Kia Hawks 8, Seoul Yagu Club 7
  ============================================================
  LINE SCORE
                          1      R
  Kia Hawks               8      8
  Seoul Yagu Club         7      7

  ============================================================
  KIA HAWKS BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Song-chol Pak           1    1    0    0    0    0    0     0    0    1    0    0     0    0
  Wuilker Huenteo         1    1    0    0    0    0    0     1    0    0    0    0     0    0
  Seung-woo Moon          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Thai-Son Hudkins        1    1    1    1    0    1    0     0    0    0    0    0     0    0
  Seong-min Ko            2    2    1    2    0    0    0     1    0    0    0    0     0    0
  Masaki Inamoto          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Min-jae Hong            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yūichi Sugeno           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Saúl Fontes             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ye-jun Hong             1    1    2    1    0    0    1     1    0    0    0    0     0    0
  Takuma Terachi          2    2    2    1    0    0    1     2    0    0    0    0     0    0
  Nam-joon Jeong          1    1    0    0    0    0    0     0    0    1    0    0     0    0
  Teddy Dowland           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ji-hwan Joo             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Daiji Fuda              1    1    0    0    0    0    0     0    0    0    0    0     0    0
  Cesar Cesar             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Harry Dossov            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Davaakhuu Orkhon        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hyun-ki Gu              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kōki Shimabukuro        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Craig Kirk              1    1    0    0    0    0    0     0    0    0    0    0     0    0
  Jun-ho Kwak             2    1    0    0    0    0    0     0    1    1    0    0     0    0
  Sang-woo Koo            0    0    1    0    0    0    0     0    0    0    0    0     0    0
  Vladimir Soto           2    2    0    0    0    0    0     1    0    0    0    0     0    0
  Tae-jun Ma              1    1    1    1    1    0    0     1    0    0    0    0     0    0
  Hyun-ki Heo             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Phairot Sornpao         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Byung-ho Ju             1    1    0    1    0    0    0     1    0    0    0    0     0    0
  Kervin Thompson         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ryota Kinoshita         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Treston Roddick         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Cesar Ramirez           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kenneth Marchesín       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Đoàn My                 0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hal Stokes              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Fakhrul Gan             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Junichi Kashio          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ho-seok Eom             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rizky Yudhoyono         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Cristhian Ocampo        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Bayasgalan Altai        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jae-ho Choi             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Daizen Ikeda            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Michael David           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 17   16    8    7    1    1    2     8    1    3    0    0     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Song-chol Pak          14    8    5    3    3    3    0
  Cristhian Ocampo       13   12    5    3    1    2    2
  Treston Roddick         9    7    2    1    2    4    0

  ============================================================
  SEOUL YAGU CLUB BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Harold Ortwerth         1    0    0    0    0    0    0     0    1    0    0    0     0    0
  Dong-gun Song           1    1    1    0    0    0    0     0    0    1    0    1     0    0
  Keisei Sasaki           4    4    0    2    2    0    0     1    0    2    0    0     0    0
  Hsin-chih Kao           1    1    0    1    0    0    0     0    0    0    0    0     0    0
  Chi Cheng               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Hyung-jun Jung          4    4    0    1    1    0    0     2    0    1    0    0     0    0
  Yasuyuki Taguchi        1    0    0    0    0    0    0     0    0    0    1    0     0    0
  Reggie McNeillov        1    0    0    0    0    0    0     0    1    0    0    0     0    0
  Kuan-ting Tu            1    1    0    0    0    0    0     0    0    0    0    0     0    0
  Khaltmaa Gobi           4    3    1    2    1    0    0     2    1    0    0    0     0    0
  Somchai Sarachat        3    2    1    1    1    0    0     1    0    1    1    0     0    0
  Naomichi Hisamatsu      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Junjie Xie              1    1    0    1    0    0    0     1    0    0    0    0     0    0
  Chia-ming Hsia          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Deandre Schneider       1    0    0    0    0    0    0     0    1    0    0    0     0    0
  Sang Ryang              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Galih Suharto           2    2    0    0    0    0    0     0    0    1    0    0     0    0
  Dmitri Sobolev          2    1    0    1    0    0    0     0    1    0    0    1     0    0
  Kotaro Machino          0    0    1    0    0    0    0     0    0    0    0    0     0    0
  Nam-joon Gong           3    2    0    0    0    0    0     0    1    1    0    0     0    0
  Maikel Jusino           3    3    1    2    0    0    0     0    0    1    0    0     0    0
  Seok-jin Hong           1    1    1    0    0    0    0     0    0    0    0    0     0    0
  Su-ryon Paek            0    0    1    0    0    0    0     0    0    0    0    0     0    0
  Teodoro Velasco         1    1    0    0    0    0    0     0    0    1    0    0     0    0
  Joon-young Heo          2    2    0    1    0    0    0     0    0    0    0    0     0    0
  Nam-joon Cho            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Daisuke Inoha           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ryota Goto              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sang-hyun Lee           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kei Yamaguchi           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Joc Elie                0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Byung-hoon Park         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kokoro Kojima           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Shao-ching Chiang       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ji-sung Jeon            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Seung-min Ma            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Vladislav Kafelnikov    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Arnel Tamayo            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jun-ho Ok               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Otgonbat Batbayar       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ryan Al-Rashdan         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Keisei Shibuya          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Kento Ohtani            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Nathanael Gokongwei     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 37   29    7   12    5    0    0     7    6    9    2    2     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Harold Ortwerth        13    9    4    4    0    3    0
  Vladislav Kafelnikov    4    1    3    4    1    0    0

  ============================================================
  Run rate:  Kia Hawks  0.296    Seoul Yagu Club  0.259
  Second-Chance ABs:  Kia Hawks  0    Seoul Yagu Club  2
  Required run rate (Seoul Yagu Club): 0.037 R/out (needed 1 runs in 27 outs)
  ============================================================
  ============================================================
  PARTNERSHIP LOG
  Batter 1              Batter 2                Runs  Half
  ──────────────────────────────────────────────────────────────────
  Hyung-jun Jung        Keisei Sasaki              0  bottom
  Keisei Sasaki         Joon-young Heo             0  bottom
  Joon-young Heo        Dmitri Sobolev             0  bottom
  Dmitri Sobolev        Maikel Jusino              0  bottom
  Maikel Jusino         Nam-joon Gong              0  bottom
  Nam-joon Gong         Khaltmaa Gobi              0  bottom
  Khaltmaa Gobi         Keisei Sasaki              2  bottom
  Keisei Sasaki         Hyung-jun Jung             1  bottom
  Hyung-jun Jung        Khaltmaa Gobi              0  bottom
  Khaltmaa Gobi         Yasuyuki Taguchi           0  bottom
  Yasuyuki Taguchi      Somchai Sarachat           0  bottom
  Somchai Sarachat      Dmitri Sobolev             0  bottom
  Dmitri Sobolev        Chi Cheng                  0  bottom
  Chi Cheng             Dong-gun Song              0  bottom
  Dong-gun Song         Nam-joon Gong              0  bottom
  Nam-joon Gong         Seok-jin Hong              0  bottom
  Seok-jin Hong         Keisei Sasaki              0  bottom
  Keisei Sasaki         Galih Suharto              1  bottom
  Galih Suharto         Hyung-jun Jung             2  bottom
  Hyung-jun Jung        Teodoro Velasco            0  bottom
  Teodoro Velasco       Yasuyuki Taguchi           0  bottom
  Yasuyuki Taguchi      Nathanael Gokongwei        0  bottom
  Nathanael Gokongwei   Kuan-ting Tu               0  bottom
  Kuan-ting Tu          Somchai Sarachat           1  bottom
  Somchai Sarachat      Galih Suharto              0  bottom
  Galih Suharto         Hyung-jun Jung             0  bottom
  Vladimir Soto         Takuma Terachi             0  top
  Takuma Terachi        Daiji Fuda                 0  top
  Daiji Fuda            Jun-ho Kwak                0  top
  Jun-ho Kwak           Craig Kirk                 1  top
  Craig Kirk            Wuilker Huenteo            1  top
  Wuilker Huenteo       Song-chol Pak              0  top
  Song-chol Pak         Vladimir Soto              1  top
  Vladimir Soto         Nam-joon Jeong             0  top
  Nam-joon Jeong        Hyun-ki Gu                 4  top
  ──────────────────────────────────────────────────────────────────
  Total partnerships: 35  |  Avg runs/partnership: 0.40
  ============================================================
  PITCHER SPELL LOG
  Pitcher               Half         PA#   BF  OUT    R    H   BB    K  HBP
  ──────────────────────────────────────────────────────────────────────────
  Song-chol Pak         bottom         1   14    8     3     5     3     3     0
  Cristhian Ocampo      bottom        15   13   12     3     5     1     2     2
  Treston Roddick       bottom        29    9    7     1     2     2     4     0
  Harold Ortwerth       top            1   13    9     4     4     0     3     0
  Vladislav Kafelnikov  top           14    4    1     4     3     1     0     0
  ──────────────────────────────────────────────────────────────────────────
  Total spells: 5


pbp_text:
  ────────────────────────────────────────────────────────────
  TOP HALF | Žilina Sharks batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Naina Guérin ---
  [0 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [0 outs | 1-0 | empty] BALL
    Ball 2. Count: 2-0.
  [0 outs | 2-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 2-1.
  [0 outs | 2-1 | empty] BALL
    Ball 3. Count: 3-1.
  [0 outs | 3-1 | empty] FOUL
    Foul ball. Count: 3-2.
  [0 outs | 3-2 | empty] FOUL
    Foul ball. Count: 3-2.
  [0 outs | 3-2 | empty] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Abel Bogale ---
  [1 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | empty] CALLED STRIKE
    Strike (called). Count: 1-1.
  [1 outs | 1-1 | empty] BALL
    Ball 2. Count: 2-1.
  [1 outs | 2-1 | empty] BALL IN PLAY
    Abel Bogale runs → double.
  --- Now batting: Dhiya Malien ---
  [1 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [1 outs | 0-1 | 2B] FOUL
    Foul ball. Count: 0-2.
  [1 outs | 0-2 | 2B] BALL
    Ball 1. Count: 1-2.
  [1 outs | 1-2 | 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Efe Johnson ---
  [2 outs | 0-0 | 2B] INTENTIONAL WALK
    INTENTIONAL WALK — Efe Johnson given a free pass.
  --- Now batting: Martin Mbia [P] ---
  [2 outs | 0-0 | 1B, 2B] SAC BUNT
  --- Now batting: Bamba Biteghé ---
  [2 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [2 outs | 0-1 | 1B, 2B, 3B] BALL IN PLAY
    Bamba Biteghé runs → fly out.
    Bamba Biteghé is out.
  --- Now batting: João Silva ---
  [3 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [3 outs | 0-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [3 outs | 0-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [3 outs | 0-2 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-2.
  [3 outs | 1-2 | 1B, 2B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Felipe Andrade ---
  [4 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Felipe Andrade takes a SECOND CHANCE — but is OUT (2-strike contact or caught fly).
  --- Now batting: Benjamin Maledon ---
  [5 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [5 outs | 1-0 | 1B, 2B, 3B] BALL IN PLAY
    Benjamin Maledon runs → line out.
    Benjamin Maledon is out.
    Cricket order flips (joker-free trip) — Benjamin Maledon now leads off.
  [6 outs | 0-0 | 1B, 2B, 3B] DEFENSIVE SUB
    Seko Uzoho replaces Noé Dieng at 2B.
  [6 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [6 outs | 0-1 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [6 outs | 1-1 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [6 outs | 2-1 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [6 outs | 3-1 | 1B, 2B, 3B] BALL
    WALK — Benjamin Maledon awarded 1B.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Felipe Andrade ---
  [6 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [6 outs | 1-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-1.
  [6 outs | 1-1 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-1.
  [6 outs | 2-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 2-2.
  [6 outs | 2-2 | 1B, 2B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: João Silva ---
  [7 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [7 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [7 outs | 2-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 2-1.
  [7 outs | 2-1 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [7 outs | 3-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 3-2.
  [7 outs | 3-2 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 3-2.
  [7 outs | 3-2 | 1B, 2B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  --- Now batting: Bamba Biteghé ---
  [8 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [8 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [8 outs | 2-0 | 1B, 2B, 3B] BALL IN PLAY
    Bamba Biteghé runs → double.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner advances from 1B to 3B.
  [8 outs | 0-0 | 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Ifeanyi Soumah exits (12 BF this spell).
  --- Now batting: Martin Mbia [P] ---
  [8 outs | 0-0 | 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [8 outs | 0-1 | 2B, 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    1 run(s) score.
  [8 outs | 0-1 | 3B] BALL IN PLAY
    Martin Mbia runs → single.
  --- Now batting: Efe Johnson ---
  [8 outs | 0-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [8 outs | 0-1 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [8 outs | 0-2 | 1B, 3B] FOUL
    Foul ball. Count: 0-2.
  [8 outs | 0-2 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Dhiya Malien ---
  [9 outs | 0-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [9 outs | 0-1 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-2.
  [9 outs | 0-2 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Abel Bogale ---
  [10 outs | 0-0 | 1B, 3B] BALL IN PLAY
    Abel Bogale runs → fly out.
    Abel Bogale is out.
  --- Now batting: Naina Guérin ---
  [11 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [11 outs | 1-0 | 1B, 3B] BALL IN PLAY
    Naina Guérin runs → double.
    Runner scores from 3B.
    Runner advances from 1B to 3B.
    Cricket order flips (joker-free trip) — Naina Guérin now leads off.
  [11 outs | 0-0 | 2B, 3B] BALL IN PLAY
    Naina Guérin runs → fly out.
    Naina Guérin is out.
  --- Now batting: Abel Bogale ---
  [12 outs | 0-0 | 2B, 3B] INTENTIONAL WALK
    INTENTIONAL WALK — Abel Bogale given a free pass.
  --- Now batting: Dhiya Malien ---
  [12 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [12 outs | 0-1 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [12 outs | 1-1 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [12 outs | 1-2 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Efe Johnson ---
  [13 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [13 outs | 0-1 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [13 outs | 1-1 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 1-2.
  [13 outs | 1-2 | 1B, 2B, 3B] BALL IN PLAY
    Efe Johnson runs → double.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner advances from 1B to 3B.
  [13 outs | 0-0 | 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Nabil Taarabt exits (9 BF this spell).
  --- Now batting: Martin Mbia [P] ---
  [13 outs | 0-0 | 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [13 outs | 1-0 | 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [13 outs | 2-0 | 2B, 3B] FOUL
    Foul ball. Count: 2-1.
  [13 outs | 2-1 | 2B, 3B] BALL
    Ball 3. Count: 3-1.
  [13 outs | 3-1 | 2B, 3B] FOUL
    Foul ball. Count: 3-2.
  [13 outs | 3-2 | 2B, 3B] BALL IN PLAY
    Martin Mbia runs → fly out.
    Martin Mbia is out.
  --- Now batting: Bamba Biteghé ---
  [14 outs | 0-0 | 2B, 3B] BALL IN PLAY
    Bamba Biteghé takes a SECOND CHANCE at the plate.
    Hit credited (second chance). Total this AB: 1.
    Second chance — fresh 0-0 count.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
  [14 outs | 0-1 | 3B] BALL IN PLAY
    Bamba Biteghé runs → single.
  --- Now batting: João Silva ---
  [14 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [14 outs | 1-0 | 1B, 3B] BALL
    Ball 2. Count: 2-0.
  [14 outs | 2-0 | 1B, 3B] FOUL
    Foul ball. Count: 2-1.
  [14 outs | 2-1 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 2-2.
  [14 outs | 2-2 | 1B, 3B] BALL IN PLAY
    João Silva runs → single.
    Runner advances from 1B to 2B.
  --- Now batting: Felipe Andrade ---
  [14 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Felipe Andrade runs → fly out.
    Felipe Andrade is out.
  --- Now batting: Benjamin Maledon ---
  [15 outs | 0-0 | 1B, 2B, 3B] BALL IN PLAY
    Benjamin Maledon takes a SECOND CHANCE at the plate.
    Hit credited (second chance). Total this AB: 1.
    Second chance — fresh 0-0 count.
    Runner scores from 3B.
    Runner scores from 2B.
    Runner advances from 1B to 3B.
  [15 outs | 0-1 | 3B] BALL
    Ball 1. Count: 1-1.
  [15 outs | 1-1 | 3B] BALL IN PLAY
    Benjamin Maledon runs → single.
  [15 outs | 0-0 | 1B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Thulani Sibanyoni exits (5 BF this spell).
  --- Now batting: Naina Guérin ---
  [15 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [15 outs | 1-0 | 1B, 3B] BALL
    Ball 2. Count: 2-0.
  [15 outs | 2-0 | 1B, 3B] BALL
    Ball 3. Count: 3-0.
  [15 outs | 3-0 | 1B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  [16 outs | 3-0 | 3B] BALL IN PLAY
    Naina Guérin runs → fly out.
    Naina Guérin is out.
  --- Now batting: Abel Bogale ---
  [17 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [17 outs | 1-0 | 3B] FOUL
    Foul ball. Count: 1-1.
  [17 outs | 1-1 | 3B] BALL IN PLAY
    Abel Bogale runs → infield single.
    Runner scores from 3B.
  --- Now batting: Dhiya Malien ---
  [17 outs | 0-0 | empty] FOUL
    Foul ball. Count: 0-1.
  [17 outs | 0-1 | empty] CALLED STRIKE
    Strike (called). Count: 0-2.
  [17 outs | 0-2 | empty] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Efe Johnson ---
  [18 outs | 0-0 | empty] BALL IN PLAY
    Efe Johnson runs → fly out.
    Efe Johnson is out.
  [19 outs | 0-0 | empty] DEFENSIVE SUB
    Pa Camara replaces Ashwin Golui at C.
  --- Now batting: Martin Mbia [P] ---
  [19 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | empty] BALL
    Ball 2. Count: 2-0.
  [19 outs | 2-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 2-1.
  [19 outs | 2-1 | empty] BALL
    Ball 3. Count: 3-1.
  [19 outs | 3-1 | empty] BALL
    WALK — Martin Mbia awarded 1B.
  --- Now batting: Bamba Biteghé ---
  [19 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | 1B] BALL IN PLAY
    Bamba Biteghé runs → single.
    Runner advances from 1B to 2B.
  --- Now batting: João Silva ---
  [19 outs | 0-0 | 1B, 2B] BALL IN PLAY
    João Silva runs → line out.
    João Silva is out.
  --- Now batting: Felipe Andrade ---
  [20 outs | 0-0 | 1B, 2B] BALL IN PLAY
    Felipe Andrade runs → line out.
    Felipe Andrade is out.
  --- Now batting: Benjamin Maledon ---
  [21 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [21 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [21 outs | 1-1 | 1B, 2B] BALL IN PLAY
    Benjamin Maledon runs → single.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
    Cricket order flips (joker-free trip) — Benjamin Maledon now leads off.
  [21 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [21 outs | 1-0 | 1B, 2B, 3B] BALL IN PLAY
    Benjamin Maledon runs → single.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [21 outs | 0-0 | 1B, 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Brahim Hamdi exits (10 BF this spell).
  --- Now batting: Felipe Andrade ---
  [21 outs | 0-0 | 1B, 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [21 outs | 0-1 | 1B, 2B, 3B] BALL IN PLAY
    Felipe Andrade runs → double.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 3B.
  --- Now batting: João Silva ---
  [21 outs | 0-0 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [21 outs | 0-1 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [21 outs | 0-2 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [21 outs | 0-2 | 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  [22 outs | 0-0 | 2B, 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    1 run(s) score.
  --- Now batting: Bamba Biteghé ---
  [22 outs | 0-0 | 3B] BALL IN PLAY
    Bamba Biteghé runs → fly out.
    Bamba Biteghé is out.
  --- Now batting: Martin Mbia [P] ---
  [23 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [23 outs | 0-1 | 3B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [23 outs | 0-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Efe Johnson ---
  [24 outs | 0-0 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [24 outs | 0-1 | 3B] FOUL
    Foul ball. Count: 0-2.
  [24 outs | 0-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Dhiya Malien ---
  [25 outs | 0-0 | 3B] FOUL
    Foul ball. Count: 0-1.
  [25 outs | 0-1 | 3B] FOUL
    Foul ball. Count: 0-2.
  [25 outs | 0-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Abel Bogale ---
  [26 outs | 0-0 | 3B] BALL
    Ball 1. Count: 1-0.
  [26 outs | 1-0 | 3B] BALL IN PLAY
    Abel Bogale runs → fly out.
    Abel Bogale is out.

  End of top half — Žilina Sharks: 15 run(s), 16 hit(s), 27 out(s) | Run rate: 0.556
  ============================================================
  HALFTIME
    Žilina Sharks: 15 run(s)
    Oslo Hawks need 16 run(s) to win
    Required run rate: 0.593 R/out
  ============================================================

  ────────────────────────────────────────────────────────────
  BOTTOM HALF | Oslo Hawks batting
  ────────────────────────────────────────────────────────────
  --- Now batting: Nélson Bango ---
  [0 outs | 0-0 | empty] BALL IN PLAY
    Nélson Bango runs → fly out.
    ROBBED! Mudathir Bukari runs it down — a sure extra-base hit erased!
    Nélson Bango is out.
  --- Now batting: Seko Uzoho ---
  [1 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [1 outs | 1-0 | empty] CALLED STRIKE
    Strike (called). Count: 1-1.
  [1 outs | 1-1 | empty] BALL
    Ball 2. Count: 2-1.
  [1 outs | 2-1 | empty] FOUL
    Foul ball. Count: 2-2.
  [1 outs | 2-2 | empty] BALL
    Ball 3. Count: 3-2.
  [1 outs | 3-2 | empty] BALL IN PLAY
    Seko Uzoho runs → triple.
  --- Now batting: Amir Modiba ---
  [1 outs | 0-0 | 3B] BALL IN PLAY
    Amir Modiba runs → single.
  --- Now batting: Pa Camara ---
  [1 outs | 0-0 | 1B, 3B] FOUL
    Foul ball. Count: 0-1.
  [1 outs | 0-1 | 1B, 3B] FOUL
    Foul ball. Count: 0-2.
  [1 outs | 0-2 | 1B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
  [2 outs | 0-0 | 1B, 3B] JOKER INSERTION
    Oslo Hawks sends in joker Glofate Okolie for an extra plate appearance (joker #1).
  --- Now batting: Glofate Okolie ---
  [2 outs | 0-0 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [2 outs | 0-1 | 1B, 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    Runner advances from 1B to 2B.
    1 run(s) score.
  [2 outs | 0-1 | 2B] BALL
    Ball 1. Count: 1-1.
  [2 outs | 1-1 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [2 outs | 1-2 | 2B] BALL
    Ball 2. Count: 2-2.
  [2 outs | 2-2 | 2B] FOUL
    Foul ball. Count: 2-2.
  [2 outs | 2-2 | 2B] BALL
    Ball 3. Count: 3-2.
  [2 outs | 3-2 | 2B] BALL
    WALK — Glofate Okolie awarded 1B.
  [2 outs | 0-0 | 1B, 2B] JOKER INSERTION
    Oslo Hawks sends in joker Ricardo Mahlangu for an extra plate appearance (joker #2).
  --- Now batting: Ricardo Mahlangu ---
  [2 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [2 outs | 1-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 1-1.
  [2 outs | 1-1 | 1B, 2B] BALL
    Ball 2. Count: 2-1.
  [2 outs | 2-1 | 1B, 2B] FOUL
    Foul ball. Count: 2-2.
  [2 outs | 2-2 | 1B, 2B] BALL
    Ball 3. Count: 3-2.
  [2 outs | 3-2 | 1B, 2B] BALL IN PLAY
    Ricardo Mahlangu runs → single.
    Runner at 2B thrown out.
    Runner scores from 1B.
  [4 outs | 0-0 | 1B] JOKER INSERTION
    Oslo Hawks sends in joker Nakibou Mugisha for an extra plate appearance (joker #3).
  --- Now batting: Nakibou Mugisha ---
  [4 outs | 0-0 | 1B] FOUL
    Foul ball. Count: 0-1.
  [4 outs | 0-1 | 1B] BALL
    Ball 1. Count: 1-1.
  [4 outs | 1-1 | 1B] BALL IN PLAY
    Nakibou Mugisha runs → single.
    Runner advances from 1B to 2B.
  --- Now batting: Ifeanyi Soumah [P] ---
  [4 outs | 0-0 | 1B, 2B] SAC BUNT
  --- Now batting: Njoroge Mwaniki ---
  [4 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [4 outs | 1-0 | 1B, 2B, 3B] BALL
    Ball 2. Count: 2-0.
  [4 outs | 2-0 | 1B, 2B, 3B] BALL
    Ball 3. Count: 3-0.
  [4 outs | 3-0 | 1B, 2B, 3B] BALL
    WALK — Njoroge Mwaniki awarded 1B.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [4 outs | 0-0 | 1B, 2B, 3B] PICKOFF ATTEMPT
    Pickoff — runner out at 1B!
  --- Now batting: Quentin François ---
  [5 outs | 0-0 | 2B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [5 outs | 0-1 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [5 outs | 0-2 | 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [5 outs | 0-2 | 2B, 3B] WILD PITCH
    Wild pitch — runners advance.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    1 run(s) score.
  [5 outs | 0-2 | 3B] BALL
    Ball 1. Count: 1-2.
  [5 outs | 1-2 | 3B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Bayo Ceesay ---
  [6 outs | 0-0 | 3B] BALL IN PLAY
    Bayo Ceesay runs → single.
    Runner scores from 3B.
  --- Now batting: Feno Ranivoson ---
  [6 outs | 0-0 | 1B] BALL
    Ball 1. Count: 1-0.
  [6 outs | 1-0 | 1B] BALL IN PLAY
    Feno Ranivoson runs → single.
    Runner advances from 1B to 2B.
  --- Now batting: Nélson Bango ---
  [6 outs | 0-0 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [6 outs | 0-1 | 1B, 2B] BALL
    Ball 1. Count: 1-1.
  [6 outs | 1-1 | 1B, 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [6 outs | 1-2 | 1B, 2B] BALL
    Ball 2. Count: 2-2.
  [6 outs | 2-2 | 1B, 2B] CALLED STRIKE
    Strike (called). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Seko Uzoho ---
  [7 outs | 0-0 | 1B, 2B] BALL
    Ball 1. Count: 1-0.
  [7 outs | 1-0 | 1B, 2B] BALL IN PLAY
    Seko Uzoho runs → double.
    Runner scores from 2B.
    Runner at 1B thrown out.
  --- Now batting: Amir Modiba ---
  [8 outs | 0-0 | 2B] FOUL
    Foul ball. Count: 0-1.
  [8 outs | 0-1 | 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
  [8 outs | 0-1 | 3B] FOUL
    Foul ball. Count: 0-2.
  [8 outs | 0-2 | 3B] BALL
    Ball 1. Count: 1-2.
  [8 outs | 1-2 | 3B] BALL IN PLAY
    Amir Modiba runs → single.
    Runner scores from 3B.
  --- Now batting: Pa Camara ---
  [8 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [8 outs | 0-1 | 1B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [8 outs | 0-2 | 1B] FOUL
    Foul ball. Count: 0-2.
  [8 outs | 0-2 | 1B] BALL
    Ball 1. Count: 1-2.
  [8 outs | 1-2 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  --- Now batting: Ifeanyi Soumah [P] ---
  [9 outs | 0-0 | 1B] SAC BUNT
  --- Now batting: Njoroge Mwaniki ---
  [10 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [10 outs | 1-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [10 outs | 1-1 | 2B] BALL IN PLAY
    Njoroge Mwaniki runs → single.
    Runner advances from 2B to 3B.
  --- Now batting: Quentin François ---
  [10 outs | 0-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [10 outs | 0-1 | 1B, 3B] BALL
    Ball 1. Count: 1-1.
  [10 outs | 1-1 | 1B, 3B] SWINGING STRIKE
    Strike (swinging). Count: 1-2.
  [10 outs | 1-2 | 1B, 3B] BALL
    Ball 2. Count: 2-2.
  [10 outs | 2-2 | 1B, 3B] BALL
    Ball 3. Count: 3-2.
  [10 outs | 3-2 | 1B, 3B] BALL
    WALK — Quentin François awarded 1B.
    Runner advances from 1B to 2B.
  --- Now batting: Bayo Ceesay ---
  [10 outs | 0-0 | 1B, 2B, 3B] CALLED STRIKE
    Strike (called). Count: 0-1.
  [10 outs | 0-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-2.
  [10 outs | 0-2 | 1B, 2B, 3B] HIT BY PITCH
    HBP — Bayo Ceesay awarded 1B.
    Runner scores from 3B.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  [10 outs | 0-0 | 1B, 2B, 3B] PITCHING CHANGE
    PITCHING CHANGE: Martin Mbia exits (18 BF this spell).
  --- Now batting: Feno Ranivoson ---
  [10 outs | 0-0 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-0.
  [10 outs | 1-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-1.
  [10 outs | 1-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [10 outs | 1-2 | 1B, 2B, 3B] FOUL OUT
    Foul ball. Count: 0-0.
    Cricket order flips (joker-free trip) — Feno Ranivoson now leads off.
  [11 outs | 0-0 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 0-1.
  [11 outs | 0-1 | 1B, 2B, 3B] BALL
    Ball 1. Count: 1-1.
  [11 outs | 1-1 | 1B, 2B, 3B] FOUL
    Foul ball. Count: 1-2.
  [11 outs | 1-2 | 1B, 2B, 3B] BALL IN PLAY
    Feno Ranivoson runs → single.
    Runner at 3B thrown out.
    Runner scores from 2B.
    Runner advances from 1B to 3B.
  --- Now batting: Bayo Ceesay ---
  [12 outs | 0-0 | 1B, 3B] BALL IN PLAY
    Bayo Ceesay runs → double.
    Runner advances from 3B to 2B.
    Runner scores from 1B.
  --- Now batting: Quentin François ---
  [12 outs | 0-0 | 2B] BALL IN PLAY
    Quentin François runs → single.
    Runner scores from 2B.
  --- Now batting: Njoroge Mwaniki ---
  [12 outs | 0-0 | 1B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [12 outs | 0-1 | 1B] BALL IN PLAY
    Njoroge Mwaniki runs → double.
    Runner scores from 1B.
  [12 outs | 0-0 | 2B] PITCHING CHANGE
    PITCHING CHANGE: Tó Makuza exits (5 BF this spell).
  [12 outs | 0-0 | 2B] JOKER INSERTION
    Oslo Hawks sends in joker Glofate Okolie for an extra plate appearance (joker #4).
  --- Now batting: Glofate Okolie ---
  [12 outs | 0-0 | 2B] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [12 outs | 0-1 | 2B] CALLED STRIKE
    Strike (called). Count: 0-2.
  [12 outs | 0-2 | 2B] BALL IN PLAY
    Glofate Okolie runs → HOME RUN.
    Runner scores.
    Batter scores (HR).
    [Walk-Back — Glofate Okolie retreats to 3B as the bonus runner.]
    [The Walk-Back is brought to you by Pan American World Airways.]
  [12 outs | 0-0 | 3B] JOKER INSERTION
    Oslo Hawks sends in joker Ricardo Mahlangu for an extra plate appearance (joker #5).
  --- Now batting: Ricardo Mahlangu ---
  [12 outs | 0-0 | 3B] BALL IN PLAY
    Ricardo Mahlangu takes a SECOND CHANCE at the plate.
    Second chance — fresh 0-0 count.
    Runner at 3B thrown out.
  [13 outs | 0-1 | empty] CALLED STRIKE
    Strike (called). Count: 0-2.
  [13 outs | 0-2 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-0.
    STRIKEOUT.
  [14 outs | 0-0 | empty] JOKER INSERTION
    Oslo Hawks sends in joker Nakibou Mugisha for an extra plate appearance (joker #6).
  --- Now batting: Nakibou Mugisha ---
  [14 outs | 0-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 0-1.
  [14 outs | 0-1 | empty] CALLED STRIKE
    Strike (called). Count: 0-2.
  [14 outs | 0-2 | empty] BALL
    Ball 1. Count: 1-2.
  [14 outs | 1-2 | empty] BALL IN PLAY
    Nakibou Mugisha runs → line out.
    Nakibou Mugisha is out.
  --- Now batting: Ifeanyi Soumah [P] ---
  [15 outs | 0-0 | empty] BALL IN PLAY
    Ifeanyi Soumah runs → ground out.
    Ifeanyi Soumah is out.
  --- Now batting: Pa Camara ---
  [16 outs | 0-0 | empty] BALL
    Ball 1. Count: 1-0.
  [16 outs | 1-0 | empty] SWINGING STRIKE
    Strike (swinging). Count: 1-1.
  [16 outs | 1-1 | empty] BALL IN PLAY
    Pa Camara runs → double.
  --- Now batting: Amir Modiba ---
  [16 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [16 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [16 outs | 2-0 | 2B] BALL
    Ball 3. Count: 3-0.
  [16 outs | 3-0 | 2B] BALL
    WALK — Amir Modiba awarded 1B.
  [16 outs | 0-0 | 1B, 2B] PINCH HITTER
    Siboniso Madlala pinch-hits for Seko Uzoho.
  [16 outs | 0-0 | 1B, 2B] PINCH RUNNER
    Adil Haddad pinch-runs for Amir Modiba at 1B.
  [16 outs | 0-0 | 1B, 2B] WILD PITCH
    Wild pitch — runners advance.
    Runner advances from 2B to 3B.
    Runner advances from 1B to 2B.
  --- Now batting: Siboniso Madlala ---
  [16 outs | 0-0 | 2B, 3B] BALL IN PLAY
    Siboniso Madlala runs → single.
    Runner scores from 2B.
  [16 outs | 0-0 | 1B, 3B] PINCH RUNNER
    Hélio Konan pinch-runs for Siboniso Madlala at 1B.
  --- Now batting: Nélson Bango ---
  [16 outs | 0-0 | 1B, 3B] BALL
    Ball 1. Count: 1-0.
  [16 outs | 1-0 | 1B, 3B] BALL
    Ball 2. Count: 2-0.
  [16 outs | 2-0 | 1B, 3B] BALL
    Ball 3. Count: 3-0.
  [16 outs | 3-0 | 1B, 3B] CALLED STRIKE
    Strike (called). Count: 3-1.
  [16 outs | 3-1 | 1B, 3B] BALL IN PLAY
    Nélson Bango runs → line out.
    ROBBED! Sintayehu Kassa lays out for the diving grab — a hit turned into an out!
    Nélson Bango is out.
  [17 outs | 0-0 | 1B, 3B] PINCH RUNNER
    Dwight Colley pinch-runs for Hélio Konan at 1B.
  --- Now batting: Feno Ranivoson ---
  [17 outs | 0-0 | 1B, 3B] BALL IN PLAY
    Feno Ranivoson runs → ground out.
    Feno Ranivoson is out.
    Runner at 3B thrown out.
    Runner advances from 1B to 2B.
  [19 outs | 0-0 | 2B] DEFENSIVE SUB
    Reeza Benkarth replaces Naina Guérin at CF.
  --- Now batting: Bayo Ceesay ---
  [19 outs | 0-0 | 2B] BALL
    Ball 1. Count: 1-0.
  [19 outs | 1-0 | 2B] BALL
    Ball 2. Count: 2-0.
  [19 outs | 2-0 | 2B] BALL IN PLAY
    Bayo Ceesay runs → triple.
    Runner scores from 2B.

  End of bottom half — Oslo Hawks: 16 run(s), 18 hit(s), 19 out(s) | Run rate: 0.842

  ============================================================
  GAME OVER: OSLO HAWKS WIN 16–15
  ============================================================
  Final score: Oslo Hawks 16, Žilina Sharks 15
  ============================================================
  LINE SCORE
                          1      R
  Žilina Sharks          15     15
  Oslo Hawks             16     16

  ============================================================
  ŽILINA SHARKS BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Martin Mbia             5    4    3    2    0    0    0     0    1    1    0    0     0    0
  Naina Guérin            4    4    1    1    1    0    0     1    0    0    0    0     0    0
  Bamba Biteghé           5    5    3    4    1    0    0     3    0    0    0    1     1    1
  João Silva              5    5    1    1    0    0    0     0    0    1    0    0     0    0
  Azubuike Nikiema        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Benjamin Maledon        5    4    3    4    0    0    0     4    1    0    0    1     2    1
  Tarryn Mubanga          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ben Boucher             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dhiya Malien            5    5    0    0    0    0    0     0    0    5    0    0     0    0
  Kudakwashe Nouma        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Samuel Sunzu            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Alemayehu Adane         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sintayehu Kassa         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Efe Johnson             5    4    2    1    1    0    0     2    1    2    0    0     0    0
  Anis Mansouri           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Steven Maharaj          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Aiden van Wyk           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tyreese Le Guen         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Toni Mensah             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mudathir Bukari         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mouhammad Plumptre      0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Reeza Benkarth          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Percy Hlongwane         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Elias Mkhwanazi         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Felipe Andrade          5    5    0    1    1    0    0     2    0    0    0    0     0    0
  Abel Bogale             5    4    2    2    1    0    0     1    1    0    0    0     0    0
  Miloš Siby              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Esteban Essien          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Christopher Bahoken     0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Rayshaun Khumalo        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jone Carvalho           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Shimeket Teferi         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Lance Wilson            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Scott Davis             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Fousseni Djoumoi        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Aymen Belkacem          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Walid Mahrez            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Valdelício Silva        0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tó Makuza               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Aaron Tutu              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Lourens van Zyl         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Jean Razanajatovo       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Yahya Chakraborty       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Olisa Nuamah            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Bernard Shittu          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 44   40   15   16    5    0    0    13    4    9    0    2     3    2

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Martin Mbia            18   10    9    7    3    3    1
  Tó Makuza               5    2    4    5    0    0    0
  Rayshaun Khumalo       10    7    4    4    1    1    0

  ============================================================
  OSLO HAWKS BATTING
  Player                PA   AB    R    H   2B   3B   HR    RBI   BB    K  HBP   2C  2C-R   MH
  ────────────────────────────────────────────────────────────────────────────────────────────────
  Ifeanyi Soumah          3    2    1    1    0    0    0     0    0    0    0    0     0    0
  Jhye Green              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Bayo Ceesay             4    3    3    3    1    1    0     5    0    0    1    0     0    0
  Noé Dieng               0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Anja Ranivoson          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Mehdi Amrabat           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ashwin Golui            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Amir Modiba             3    2    1    2    0    0    0     1    1    0    0    0     0    0
  Siboniso Madlala        1    1    0    1    0    0    0     1    0    0    0    0     0    0
  Glofate Okolie          2    1    1    1    0    0    1     2    1    0    0    0     0    0
  Nakibou Mugisha         2    2    1    1    0    0    0     0    0    0    0    0     0    0
  Ricardo Mahlangu        2    2    1    1    0    0    0     0    0    1    0    1     0    0
  Seko Uzoho              2    2    2    2    1    1    0     1    0    0    0    0     0    0
  Olímpio Biyana          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Nisre Eguavoen          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Luol Desabre            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Quentin François        3    2    1    1    0    0    0     1    1    1    0    0     0    0
  Adil Haddad             0    0    1    0    0    0    0     0    0    0    0    0     0    0
  Samir Mansouri          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Njoroge Mwaniki         3    2    2    2    1    0    0     2    1    0    0    0     0    0
  Hélio Konan             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sean Klusener           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Pa Camara               3    3    0    1    1    0    0     0    0    1    0    0     0    0
  Beni Pogba              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Nélson Bango            3    3    0    0    0    0    0     0    0    1    0    0     0    0
  Feno Ranivoson          4    4    1    2    0    0    0     1    0    0    0    0     0    0
  Jaco Janse van Rensburg    0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Moses Ahamada           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Laros Henry             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Vusumuzi Mkhize         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Ernst Markram           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Paul Boucher            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Nabil Taarabt           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Leon Häcken             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Brahim Hamdi            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Thulani Sibanyoni       0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Thabani Mokoena         0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Adil Cherif             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Sayed Salah             0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Stefan Linde            0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Thabang Ngculu          0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Tonderai Dube           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Dwight Colley           0    0    1    0    0    0    0     0    0    0    0    0     0    0
  Beni Bango              0    0    0    0    0    0    0     0    0    0    0    0     0    0
  Brown Afolabi           0    0    0    0    0    0    0     0    0    0    0    0     0    0
  ────────────────────────────────────────────────────────────────────────────────────────────────
  TOTALS                 35   29   16   18    4    2    1    14    4    4    1    1     0    0

  Pitcher                BF  OUT    H    R   BB    K  HBP
  ──────────────────────────────────────────────────────
  Ifeanyi Soumah         12    8    2    3    2    1    0
  Nabil Taarabt           9    5    3    4    1    3    0
  Thulani Sibanyoni       5    2    5    3    0    0    0
  Brahim Hamdi           10    6    4    2    1    1    0
  Leon Häcken             7    6    1    3    0    4    0

  ============================================================
  Run rate:  Žilina Sharks  0.556    Oslo Hawks  0.593
  Second-Chance ABs:  Žilina Sharks  2    Oslo Hawks  1
  IBB (Žilina Sharks): Efe Johnson; Abel Bogale.
  Required run rate (Oslo Hawks): 0.593 R/out (needed 16 runs in 27 outs)
  Powerplays: Oslo Hawks — Jhye Green NF (O15-18, 2 PO), Žilina Sharks — Reeza Benkarth NF (O13-16)
  ============================================================
  ============================================================
  PARTNERSHIP LOG
  Batter 1              Batter 2                Runs  Half
  ──────────────────────────────────────────────────────────────────
  Naina Guérin          Dhiya Malien               0  top
  Dhiya Malien          Bamba Biteghé              0  top
  Bamba Biteghé         João Silva                 0  top
  João Silva            Felipe Andrade             0  top
  Felipe Andrade        Benjamin Maledon           0  top
  Benjamin Maledon      Felipe Andrade             1  top
  Felipe Andrade        João Silva                 0  top
  João Silva            Efe Johnson                3  top
  Efe Johnson           Dhiya Malien               0  top
  Dhiya Malien          Abel Bogale                0  top
  Abel Bogale           Naina Guérin               1  top
  Naina Guérin          Dhiya Malien               0  top
  Dhiya Malien          Martin Mbia                2  top
  Martin Mbia           Felipe Andrade             1  top
  Felipe Andrade        Benjamin Maledon           2  top
  Benjamin Maledon      Naina Guérin               0  top
  Naina Guérin          Dhiya Malien               1  top
  Dhiya Malien          Efe Johnson                0  top
  Efe Johnson           João Silva                 0  top
  João Silva            Felipe Andrade             0  top
  Felipe Andrade        João Silva                 3  top
  João Silva            Bamba Biteghé              1  top
  Bamba Biteghé         Martin Mbia                0  top
  Martin Mbia           Efe Johnson                0  top
  Efe Johnson           Dhiya Malien               0  top
  Dhiya Malien          Abel Bogale                0  top
  Nélson Bango          Pa Camara                  0  bottom
  Pa Camara             Amir Modiba                1  bottom
  Amir Modiba           Glofate Okolie             0  bottom
  Glofate Okolie        Njoroge Mwaniki            1  bottom
  Njoroge Mwaniki       Quentin François           1  bottom
  Quentin François      Nélson Bango               1  bottom
  Nélson Bango          Feno Ranivoson             1  bottom
  Feno Ranivoson        Pa Camara                  1  bottom
  Pa Camara             Ifeanyi Soumah             0  bottom
  Ifeanyi Soumah        Feno Ranivoson             1  bottom
  Feno Ranivoson        Njoroge Mwaniki            1  bottom
  Njoroge Mwaniki       Glofate Okolie             6  bottom
  Glofate Okolie        Ricardo Mahlangu           0  bottom
  Ricardo Mahlangu      Nakibou Mugisha            0  bottom
  Nakibou Mugisha       Ifeanyi Soumah             0  bottom
  Ifeanyi Soumah        Nélson Bango               1  bottom
  Nélson Bango          Pa Camara                  0  bottom
  Pa Camara             Feno Ranivoson             0  bottom
  ──────────────────────────────────────────────────────────────────
  Total partnerships: 44  |  Avg runs/partnership: 0.68
  ============================================================
  PITCHER SPELL LOG
  Pitcher               Half         PA#   BF  OUT    R    H   BB    K  HBP
  ──────────────────────────────────────────────────────────────────────────
  Ifeanyi Soumah        top            1   12    8     3     2     2     1     0
  Nabil Taarabt         top           14    9    5     4     3     1     3     0
  Thulani Sibanyoni     top           23    5    2     3     5     0     0     0
  Brahim Hamdi          top           28   10    6     2     4     1     1     0
  Leon Häcken           top           38    7    6     3     1     0     4     0
  Martin Mbia           bottom         1   18   10     7     9     3     3     1
  Tó Makuza             bottom        21    5    2     5     4     0     0     0
  Rayshaun Khumalo      bottom        26   10    7     4     4     1     1     0
  ──────────────────────────────────────────────────────────────────────────
  Total spells: 8


