private void createNewItems(ServerJson[] pServers)
    {
        Array.Sort(pServers, delegate(ServerJson pX, ServerJson pY) { return(pX.playerCount.CompareTo(pY.playerCount)); });
        Array.Reverse(pServers);
        foreach (ServerJson server in pServers)
        {
            bool serverIsprivate = false;
            for (int i = 0; i < server.customData.Length; i++)
            {
                if (server.customData[i].key == "private" &&
                    server.customData[i].value.ToUpper() == "true".ToUpper())
                {
                    serverIsprivate = true;
                    break;
                }
            }

            if (serverIsprivate)
            {
                continue;
            }

            TTServerListUIItem clone = Instantiate(_listItemPrefab, _listItemParent);
            clone.GetComponent <Button>().onClick.AddListener(() => highlightItem(clone));
            clone.Setup(server);
            _items.Add(clone);
        }
    }
    private void highlightItem(TTServerListUIItem pItem)
    {
        GameObject targetGO = pItem.gameObject;

        foreach (TTServerListUIItem item in _items)
        {
            item.HighlightServer(targetGO);
        }
    }