Currently when you write `regex("a{1,3}")` irrec represents this as `a|aa|aaa`. This gets really out of hand if you use a large number as the upper-bound.