decided to stop doing FOUR memcmp's per each input character. I should have fixed this much earlier...