switching types to *Type and make initializers for all Types