   return true if pos is 0 # match is FIRST char ( place a virtual token separator before first char of string)
   curr_s = subject[pos]
   prev_s = subject[pos - 1]
-  return isSeparator(curr_s) or isSeparator(prev_s) or # match IS or FOLLOW a separator
+  return isSeparator(prev_s) or # match FOLLOW a separator
       (  curr_s isnt subject_lw[pos] and prev_s is subject_lw[pos - 1] ) # match is Capital in camelCase (preceded by lowercase)
 
 

  #Acronym are scored as start of word, but not full word
  score = scorePattern(count, n, sameCase, true, false) # wordStart = true, wordEnd = false

  return new AcronymResult(score, pos / count, count)


#----------------------------------------------------------------------

  return true if  pos is len - 1 # last char of string
  curr_s = subject[pos]
  next_s = subject[pos + 1]
  return isSeparator(next_s) or # match IS FOLLOWED BY a separator
      ( curr_s is subject_lw[pos] and next_s isnt subject_lw[pos + 1] ) # match is lowercase, followed by uppercase


