public virtual void                    RemoveStartItemByValue(string strValue)
    {
        int i = StartArray.FindIndex(x => x.Value.ToLower() == strValue.ToLower());

        if (i >= 0)
        {
            RemoveStartItemByIndex(i);
        }
    }
    public virtual void                    RemoveStartItemByText(string strText)
    {
        int i = StartArray.FindIndex(x => x.Text.ToLower() == strText.ToLower());

        if (i >= 0)
        {
            RemoveStartItemByIndex(i);
        }
    }
    // -- ADD ITEM TO STARTING LIST
    public virtual void                    AddStartItem(string strValue, string strText, Sprite sprIcon = null, string strSub = "")
    {
        int i = StartArray.FindIndex(x => x.Value.ToLower() == strValue.ToLower() || x.Text.ToLower() == strText.ToLower());

        if (i >= 0)
        {
            // OVERWRITE EXISTING ITEM
            StartArray[i].Value   = strValue;
            StartArray[i].Text    = strText;
            StartArray[i].Icon    = sprIcon;
            StartArray[i].SubText = strSub;
            StartArray[i].Index   = i;
        }
        else
        {
            StartArray.Add(new StartingListItem(strValue, strText, sprIcon, strSub));
            StartArray[StartArray.Count - 1].Index = StartArray.Count - 1;
        }
    }