added private methods in game_state