@ needed for the constructor