module NC_stf160templates { //good ones template (value) type1 cs_template1 := { } template (value) type1 cs_template2 (charstring cs) := { } template (value) type1 cs_template3 (template (value) charstring cs) := { } template (omit) type1 cs_template4 (template (value) charstring cs) := { } template (value) type1 cs_template5 (template (omit) charstring cs) := { } template type1 cr_template1 := { } template (present) type1 cr_template2 (charstring cs) := { } template type1 cr_template3 (template (value) charstring cs) := { } template (present) type1 cr_template4 (template (value) charstring cs) := { } template type1 cr_template5 (template (omit) charstring cs) := { } //bad ones template type1 cs_badtemplate1 := { } template (present) type1 cs_badtemplate2 (template (omit) charstring cs) := { } template (value) type1 cr_badtemplate3 (template (value) charstring cs) := { } //inconclusive or bad? template (omit) type1 cs_badtemplate4 (template charstring cs) := { } template (omit) type1 cs_badtemplate5 (template (present) charstring cs) := { } //derived templates //good template (present) type1 dcr_template4 (template (value) charstring cs) modifies cr_template4 := { } template type1 dcr_template5 (template (omit) charstring cs) modifies dcr_template5 := { } //bad template (present) type1 cr_badtemplate4d (template (value) charstring cs) modifies cr_template4 := { } template (value) type1 cs_badtemplate3 (template (value) charstring cs) modifies cs_template3:= { } template (value) type1 dcr_badtemplate5 (template (omit) charstring cs) modifies cr_template5 := { } }