Refactoring some implementation's parts