refactoring

removed rendundant abstractions