reworking classes