   unless userToSchool
     return console.log('Done.') or process.exit() unless [userToSchool, suggestions] = findUserToSchool users
   question ?= formatSuggestions userToSchool, suggestions
+  openTSV userToSchool, suggestions
   prompt question, (answer) ->
     answer = answer.trim()
     return console.log('Bye.') or process.exit() if answer in ['q', 'quit']

log = require 'winston'
async = require 'async'
moment = require 'moment'

### SET UP ###
do (setupLodash = this) ->

      console.log "Incorrect number #{number} higher than max: #{max}"
  numbers

formatUser = (user, relativeToUser, separator='  ') ->
  values = []
  for key in ['name', 'emailLower', 'ageRange', 'dateCreated', 'lastLevel', 'points', 'referrer', 'hourOfCode']
    val = user[key]
    if key is 'dateCreated'
      val = if relativeToUser then moment(val).from(relativeToUser.dateCreated) else moment(val).fromNow()
    values.push val
  values.join separator

formatSuggestions = (userToSchool, suggestions) ->
  suggestionPrompts = ("#{_.str.rpad(i + 1, 3)}  #{_.str.rpad(s.schoolName, 50)} #{s.reasons.length} #{if s.reasons.length > 1 then 'Matches' else 'Match'}: #{s.reasons.join(', ')}\tfrom user: #{formatUser(s.user, userToSchool)}" for s, i in suggestions).join('\n')
