moving all types to use parent object