do these handle subclasses correctly?