unify exists methods
add spec