end of refactoring of the library