void SelectUsers() { usersListOfDic = new List <Dictionary <string, string> >(); GetMethods.GetUsersByFilter(AppManeger.instance.wantToMeet, AppManeger.instance.wantAge, AppManeger.instance.userID, (listResults) => { if (listResults[0].ContainsKey("Error")) { Debug.Log(listResults[0]["Error"]); isUsersNotOver = false; // === Clean info Panel=== nameText.text = "Nome"; ageText.text = ""; //========================= } else { GetMethods.SelectWhoSelectMe(AppManeger.instance.wantToMeet, AppManeger.instance.wantAge, AppManeger.instance.userID, (listResultsSelectMe) => { if (listResultsSelectMe[0].ContainsKey("Error")) { Debug.Log(listResultsSelectMe[0]["Error"] + ". No one selected me"); // Show other users usersListOfDic = listResults; DisplayUsers(); } else { // Remove users from listResults that are also in listResultsSelectMe //ps: ListResultsSelectMe is always <= listResults foreach (Dictionary <string, string> dic in listResultsSelectMe) { int i = 0; foreach (Dictionary <string, string> dic2 in listResults) { if (dic["ID"] == dic2["ID"]) // same id remove from he listResults { listResults.RemoveAt(i); break; } i++; } } listResults.AddRange(listResultsSelectMe); //Add the users back usersListOfDic = listResults; DisplayUsers(); } } );// End of GetMethods.SelectWhoSelectMe } } ); // End of GetMethods.GetUsersByFilter }