avoid bug where two modules may not use the same type name