Apply mana drain effects to this state, attach a mana drain EOT
        and return the mana drain EOT.

def _simulated_mana_drain(self, mana_drain_state):
        """Apply mana drain effects to this state, attach a mana drain EOT
        and return the mana drain EOT."""
        # clear all mana
        mana_drain_state.player.apply_mana_drain()
        mana_drain_state.opponent.apply_mana_drain()
        # force change of turn
        mana_drain_state.actions_remaining = 0
        # randomize the board if this game uses random fill
        if self.random_fill:
            random_start_board = mana_drain_state.board.random_start_board()
            mana_drain_state.board = random_start_board
        # attach the mana drain EOT
        mana_drain = EOT(True)
        mana_drain_state.graft_child(mana_drain)
        return mana_drain