handles now constant terms
refactoring: should be faster and return bound