added Unif (unification) with updated interface