reafactoring similarities;