Refactor further including specs