with the interfaces it does not matter the type we return. Added note about return