template-struct updated [2]