def _read_objects(cls, soup, game):
        """
        read objects
        :param soup: Beautifulsoup object
        :param game: MLBAM Game object
        :return: pitchpx.game.players.Players object
        """
        players = Players()
        players.game = Players.Game()
        # game data
        players.game.venue = soup.game['venue']
        players.game.date = soup.game['date']
        # players & team data
        for team in soup.find_all('team'):
            team_object = cls._get_team(team)
            if team['type'] == Game.TEAM_TYPE_HOME:
                # team data(home)
                players.home_team = team_object
            elif team['type'] == Game.TEAM_TYPE_AWAY:
                # team data(away)
                players.away_team = team_object
            # player data
            players.rosters.update(
                    {player['id']: cls.Player(player, game.retro_game_id) for player in team.find_all('player')}
            )
            # coach data
            players.coaches.update(
                    {coach['id']: cls.Coach(coach, game.retro_game_id, team_object) for coach in team.find_all('coach')}
            )
        # umpire data
        umpires = soup.find('umpires')
        players.umpires.update(
                {umpire['id']: cls.Umpire(umpire, game.retro_game_id) for umpire in umpires.find_all('umpire')}
        )
        return players
def _read_objects ( cls , soup , game ) : players = Players ( ) players . game = Players . Game ( ) players . game . venue = soup . game [ 'venue' ] players . game . date = soup . game [ 'date' ] for team in soup . find_all ( 'team' ) : team_object = cls . _get_team ( team ) if team [ 'type' ] == Game . TEAM_TYPE_HOME : players . home_team = team_object elif team [ 'type' ] == Game . TEAM_TYPE_AWAY : players . away_team = team_object players . rosters . update ( { player [ 'id' ] : cls . Player ( player , game . retro_game_id ) for player in team . find_all ( 'player' ) } ) players . coaches . update ( { coach [ 'id' ] : cls . Coach ( coach , game . retro_game_id , team_object ) for coach in team . find_all ( 'coach' ) } ) umpires = soup . find ( 'umpires' ) players . umpires . update ( { umpire [ 'id' ] : cls . Umpire ( umpire , game . retro_game_id ) for umpire in umpires . find_all ( 'umpire' ) } ) return players
read objects
        :param soup: Beautifulsoup object
        :param game: MLBAM Game object
        :return: pitchpx.game.players.Players object