// private methods

    private void SetupDeck()
    {
        _deckModel                 = new DeckModel();
        _facePanelPresenters       = new List <CharacterFacePanelPresenter>();
        _selectIndicatorPresenters = new List <CharacterSelectIndicatorPresenter>();

        for (int i = 0; i < _deckFacePanels.Length; i++)
        {
            _deckFacePanels[i].Setup();

            var presenter = new CharacterFacePanelPresenter(_deckFacePanels[i], _deckModel);
            presenter.Setup(i);
            _facePanelPresenters.Add(presenter);
        }

        for (int i = 0; i < _selectIndicators.Length; i++)
        {
            _selectIndicators[i].Setup();

            var presenter = new CharacterSelectIndicatorPresenter(_selectIndicators[i], _deckModel);
            presenter.Setup(i);
            _selectIndicatorPresenters.Add(presenter);
        }

        _deckModel.Reset();
    }