func parseResult(twitr twitter.Twitter, tab result) Result { var out Result out.Source = tab.source fn := func(dest *[]User, source []int) { for _, id := range source { var user User bUser, err := twitr.ShowId(id) handleError(err) err = json.Unmarshal(bUser, &user) handleError(err) *dest = append(*dest, user) } } if len(tab.lose) < 15 { fn(&out.Lose, tab.lose) } else { out.LoseMessage += "Too many users lost." } if len(tab.win) < 15 { fn(&out.Win, tab.win) } else { out.WinMessage += "Too many users won." } return out }