Last commit before big refactoring according to proper specifications