A littel refactoring of the interface