added CompositeType stuff