perfect hash functions, to help write parsers
