added extended type with template parameters