         console.error "Ran into error doing the save:", err
         return finalizePrompt userToSchool, suggestions, schoolName, users
       console.log "Updated users' schoolNames. Result:", result
+      # Take these users out of the pool to make suggestions about before going on to next suggestions.
       remainingUsers = _.without users, targets...
       nextPrompt remainingUsers
+
+findNumbers = (answer, max) ->
+  numbers = (parseInt(d, 10) for d in (' ' + answer + ' ').match(/ (\d+) /g) ? [])
+  ranges = answer.match(/(\d+-\d+)/g) or []
+  for range in ranges
+    bounds = (parseInt(d, 10) for d in range.split('-'))
+    for number in [bounds[0] .. bounds[1]]
+      numbers.push number
+  for number in numbers
+    if number > max
+      console.log "Incorrect number #{number} higher than max: #{max}"
+  numbers
 
 formatUser = (user) ->
   # TODO: replace date string with relative time since signup compared to target user

  return [bestTarget, bestTargetSuggestions]

findSuggestions = (target) ->
  suggestions = []
  if target.lastIP
    for otherUser in userCategories.lastIP[target.lastIP] when otherUser isnt target

  > """

findUserToSchool = (users) ->
  # We find the top user from the top group that we can make the most reasoned suggestions about what the school name would be.
  # TODO: don't show users where everyone in the suggestion already has the same school (because we have already done this group)
  [bestTarget, bestTargetSuggestions, mostReasons] = [null, [], 0]
  for field, groups of topGroups
