def METHOD_NAME(): 
    game = get_game_turn()
    team = game.get_agent_team(game.actor)
    opp_team = game.get_opp_team(team)
    game.clear_board()
    blocker = team.players[0]
    blocker.extra_skills = [Skill.STRIP_BALL]
    game.put(blocker, Square(5, 6))
    victim = opp_team.players[0]
    game.put(victim, Square(5, 5))
    game.get_ball().move_to(victim.position)
    game.get_ball().is_carried = True
    # Setup chain push
    game.put(opp_team.players[1], Square(5, 4))
    game.put(opp_team.players[2], Square(4, 4))
    game.put(opp_team.players[3], Square(6, 4))
    game.set_available_actions()
    game.state.reports.clear() 
    BBDie.clear_fixes()
    BBDie.fix(BBDieResult.PUSH)
    BBDie.fix(BBDieResult.PUSH)
    D8.fix(7) # scatter to blocker
    D6.fix(6) # blocker's catch roll success
    game.step(Action(ActionType.START_BLOCK, player=blocker))
    game.step(Action(ActionType.BLOCK, position=victim.position ))
    game.step(Action(ActionType.SELECT_PUSH ))
    game.step(Action(ActionType.PUSH, position=Square(5,4)))
    game.step(Action(ActionType.PUSH, position=Square(5,3)))
    game.step(Action(ActionType.FOLLOW_UP, position=Square(5,5))) 
    assert game.has_report_of_type(OutcomeType.FUMBLE)
    assert game.has_report_of_type(OutcomeType.SUCCESSFUL_CATCH)
    assert game.get_ball().position == Square(5,5)
    assert blocker.position == Square(5,5)