renamed tokenAt to first since it was ignoring the argument