changing class hierarchy (code is broken)