add upper bound and lower bound