regen using constants instead of strings