in addition it solves some equalities