minor upsate. Still doesn't work on concrete classes.