finished first, kludgy cut at character case handling