30 w/o upper bound
now with upper bounds and enumerations