It's a pity to do this repeatedly (once per lookup). It would be more efficient if it were pre-parsed.