otherwise you can't have a common trait (i.e. has.declaredtype)