protected override void DidActivate(bool firstActivation, ActivationType activationType)
        {
            _logger = LogManager.GetCurrentClassLogger();
            _logger.Debug("QueueController Activate.");
            _ui = TwitchIntegrationUi.Instance;

            _songListTableCellInstance = Resources.FindObjectsOfTypeAll <StandardLevelListTableCell>().First(x => (x.name == "SongListTableCell"));
            _queuedSongs = StaticData.QueueList.OfType <QueuedSong>().ToList();
            _top5Queued  = (List <QueuedSong>)_queuedSongs.Take(5);

            if (_titleText == null)
            {
                _titleText           = _ui.CreateText(rectTransform, "REQUEST QUEUE", new Vector2(0f, -6f));
                _titleText.alignment = TextAlignmentOptions.Top;
                _titleText.fontSize  = 8;
            }

            if (_queuedSongsTableView == null)
            {
                _queuedSongsTableView = new GameObject().AddComponent <TableView>();

                _queuedSongsTableView.transform.SetParent(rectTransform, false);

                _queuedSongsTableView.dataSource = this;

                ((RectTransform)_queuedSongsTableView.transform).anchorMin        = new Vector2(0.3f, 0.5f);
                ((RectTransform)_queuedSongsTableView.transform).anchorMax        = new Vector2(0.7f, 0.5f);
                ((RectTransform)_queuedSongsTableView.transform).sizeDelta        = new Vector2(0f, 60f);
                ((RectTransform)_queuedSongsTableView.transform).anchoredPosition = new Vector3(0f, -3f);

                _queuedSongsTableView.didSelectRowEvent += _queuedSongsTableView_DidSelectRowEvent;
            }
        }