Refactoring + new specs