diff --git a/libasn1compiler/asn1c_C.c b/libasn1compiler/asn1c_C.c
index 15616ea..3ebd417 100644
--- a/libasn1compiler/asn1c_C.c
+++ b/libasn1compiler/asn1c_C.c
@@ -79,9 +79,9 @@
 #define	DEPENDENCIES	do {						\
 	emit_include_dependencies(arg);					\
 	if(expr->expr_type == ASN_CONSTR_SET_OF)			\
-		GEN_INCLUDE("asn_SET_OF");				\
+		GEN_INCLUDE_STD("asn_SET_OF");				\
 	if(expr->expr_type == ASN_CONSTR_SEQUENCE_OF)			\
-		GEN_INCLUDE("asn_SEQUENCE_OF");				\
+		GEN_INCLUDE_STD("asn_SEQUENCE_OF");			\
 } while(0)
 
 /* MKID_safe() without checking for reserved keywords */
@@ -328,7 +328,7 @@
 		return -1;
 	}
 
-	GEN_INCLUDE("constr_SEQUENCE");
+	GEN_INCLUDE_STD("constr_SEQUENCE");
 	if(!arg->embed)
 		GEN_DECLARE(expr);	/* asn_DEF_xxx */
 
@@ -568,7 +568,7 @@
 		tag2el_cxer = 0;
 	}
 
-	GEN_INCLUDE("constr_SET");
+	GEN_INCLUDE_STD("constr_SET");
 	if(!arg->embed)
 		GEN_DECLARE(expr);	/* asn_DEF_xxx */
 
@@ -770,9 +770,9 @@
 	 * Print out the table according to which parsing is performed.
 	 */
 	if(seq_of) {
-		GEN_INCLUDE("constr_SEQUENCE_OF");
+		GEN_INCLUDE_STD("constr_SEQUENCE_OF");
 	} else {
-		GEN_INCLUDE("constr_SET_OF");
+		GEN_INCLUDE_STD("constr_SET_OF");
 	}
 	if(!arg->embed)
 		GEN_DECLARE(expr);	/* asn_DEF_xxx */
@@ -921,7 +921,7 @@
 		return -1;
 	}
 
-	GEN_INCLUDE("constr_CHOICE");
+	GEN_INCLUDE_STD("constr_CHOICE");
 	if(!arg->embed)
 		GEN_DECLARE(expr);	/* asn_DEF_xxx */
 
diff --git a/libasn1compiler/asn1c_misc.c b/libasn1compiler/asn1c_misc.c
index 742c02a..c8adce6 100644
--- a/libasn1compiler/asn1c_misc.c
+++ b/libasn1compiler/asn1c_misc.c
@@ -109,7 +109,7 @@
 			continue;
 		}
 
-		if(str != first && !nodelimiter)
+		if(str != first && !nodelimiter && !(flags & AMI_NODELIMITER))
 			*p++ = '_';	/* Delimiter between tokens */
 		nodelimiter = 0;
 
@@ -150,6 +150,7 @@
 	asn1p_expr_t *exprid = 0;
 	asn1p_expr_t *top_parent;
 	asn1p_expr_t *terminal;
+	int stdname = 0;
 	char *typename;
 
 	/* Rewind to the topmost parent expression */
@@ -215,16 +216,25 @@
 					return "double";
 				else
 					return "long";
-			default: break;
+			default:
+				typename = 0;
+				switch(expr->expr_type) {
+				case ASN_BASIC_INTEGER:
+					typename = "NativeInteger"; break;
+				case ASN_BASIC_ENUMERATED:
+					typename = "NativeEnumerated"; break;
+				case ASN_BASIC_REAL:
+					typename = "NativeReal"; break;
+				default:
+					break;
+				}
+				break;
 			}
-			switch(expr->expr_type) {
-			case ASN_BASIC_INTEGER:
-				return "NativeInteger";
-			case ASN_BASIC_ENUMERATED:
-				return "NativeEnumerated";
-			case ASN_BASIC_REAL:
-				return "NativeReal";
-			default: break;
+			if(typename) {
+				if(_format != TNF_INCLUDE)
+					return typename;
+				stdname = 1;
+				break;
 			}
 		}
 		/* Fall through */
@@ -233,6 +243,7 @@
 		& (ASN_CONSTR_MASK | ASN_BASIC_MASK | ASN_STRING_MASK)) {
 			if(_format == TNF_RSAFE)
 				_format = TNF_CTYPE;
+			stdname = 1;
 			typename = ASN_EXPR_TYPE2STR(expr->expr_type);
 		} else {
 			_format = TNF_RSAFE;
@@ -242,9 +253,14 @@
 
 	switch(_format) {
 	case TNF_UNMODIFIED:
-	case TNF_INCLUDE:
 		return asn1c_make_identifier(AMI_MASK_ONLY_SPACES,
 			0, exprid ? exprid->Identifier : typename, 0);
+	case TNF_INCLUDE:
+		return asn1c_make_identifier(
+			AMI_MASK_ONLY_SPACES | AMI_NODELIMITER,
+			0, stdname ? "<" : "\"",
+			exprid ? exprid->Identifier : typename,
+			stdname ? ".h>" : ".h\"", 0);
 	case TNF_SAFE:
 		return asn1c_make_identifier(0, exprid, typename, 0);
 	case TNF_CTYPE:	/* C type */
diff --git a/libasn1compiler/asn1c_misc.h b/libasn1compiler/asn1c_misc.h
index 23693a0..b14a155 100644
--- a/libasn1compiler/asn1c_misc.h
+++ b/libasn1compiler/asn1c_misc.h
@@ -9,6 +9,7 @@
 enum ami_flags_e {
   AMI_MASK_ONLY_SPACES	= 1,	/* Mask only spaces, everything else's safe */
   AMI_CHECK_RESERVED	= 2,	/* Check against reserved keywords */
+  AMI_NODELIMITER       = 4,	/* Do not put delimiter, just concatenate */
 };
 char *asn1c_make_identifier(enum ami_flags_e, asn1p_expr_t *expr, ...);
 
diff --git a/libasn1compiler/asn1c_out.h b/libasn1compiler/asn1c_out.h
index fb986cb..3b1f055 100644
--- a/libasn1compiler/asn1c_out.h
+++ b/libasn1compiler/asn1c_out.h
@@ -82,18 +82,19 @@
 	} while(0)
 
 /* Generate #include line */
+#define	GEN_INCLUDE_STD(typename)	GEN_INCLUDE("<" typename ".h>")
 #define	GEN_INCLUDE(filename)	do {				\
 	int saved_target = arg->target->target;			\
 	if(!filename) break;					\
 	REDIR(OT_INCLUDES);					\
-	OUT_NOINDENT("#include <%s.h>\n", filename);		\
+	OUT_NOINDENT("#include %s\n", filename);		\
 	REDIR(saved_target);					\
 } while(0)
 #define	GEN_POSTINCLUDE(filename)	do {			\
 	int saved_target = arg->target->target;			\
 	if(!filename) break;					\
 	REDIR(OT_POST_INCLUDE);					\
-	OUT_NOINDENT("#include <%s.h>\n", filename);		\
+	OUT_NOINDENT("#include %s\n", filename);		\
 	REDIR(saved_target);					\
 } while(0)
 
diff --git a/tests/104-param-1-OK.asn1.-P b/tests/104-param-1-OK.asn1.-P
index 2b7a50a..24f4a64 100644
--- a/tests/104-param-1-OK.asn1.-P
+++ b/tests/104-param-1-OK.asn1.-P
@@ -117,7 +117,7 @@
 
 /*** <<< INCLUDES [Bunch] >>> ***/
 
-#include <Collection.h>
+#include "Collection.h"
 #include <constr_SEQUENCE.h>
 
 /*** <<< TYPE-DECLS [Bunch] >>> ***/
diff --git a/tests/105-param-2-OK.asn1.-P b/tests/105-param-2-OK.asn1.-P
index 96de062..8a9b9f8 100644
--- a/tests/105-param-2-OK.asn1.-P
+++ b/tests/105-param-2-OK.asn1.-P
@@ -206,7 +206,7 @@
 
 /*** <<< INCLUDES [SignedREAL] >>> ***/
 
-#include <SIGNED.h>
+#include "SIGNED.h"
 
 /*** <<< TYPE-DECLS [SignedREAL] >>> ***/
 
@@ -330,7 +330,7 @@
 
 /*** <<< INCLUDES [SignedSET] >>> ***/
 
-#include <SIGNED.h>
+#include "SIGNED.h"
 
 /*** <<< TYPE-DECLS [SignedSET] >>> ***/
 
diff --git a/tests/106-param-constr-OK.asn1.-P b/tests/106-param-constr-OK.asn1.-P
index 5910cfb..1bca959 100644
--- a/tests/106-param-constr-OK.asn1.-P
+++ b/tests/106-param-constr-OK.asn1.-P
@@ -190,7 +190,7 @@
 
 /*** <<< INCLUDES [NarrowInteger] >>> ***/
 
-#include <Narrow.h>
+#include "Narrow.h"
 
 /*** <<< TYPE-DECLS [NarrowInteger] >>> ***/
 
diff --git a/tests/108-param-constr-3-OK.asn1.-P b/tests/108-param-constr-3-OK.asn1.-P
index 33e3fd5..b090300 100644
--- a/tests/108-param-constr-3-OK.asn1.-P
+++ b/tests/108-param-constr-3-OK.asn1.-P
@@ -148,7 +148,7 @@
 
 /*** <<< INCLUDES [ThreePlus] >>> ***/
 
-#include <MinMax.h>
+#include "MinMax.h"
 
 /*** <<< TYPE-DECLS [ThreePlus] >>> ***/
 
diff --git a/tests/110-param-3-OK.asn1.-P b/tests/110-param-3-OK.asn1.-P
index 154e8da..3cb1058 100644
--- a/tests/110-param-3-OK.asn1.-P
+++ b/tests/110-param-3-OK.asn1.-P
@@ -304,7 +304,7 @@
 
 /*** <<< INCLUDES [IntegerColorFlag] >>> ***/
 
-#include <Flag.h>
+#include "Flag.h"
 
 /*** <<< TYPE-DECLS [IntegerColorFlag] >>> ***/
 
@@ -428,7 +428,7 @@
 
 /*** <<< INCLUDES [EnumeratedColorFlag] >>> ***/
 
-#include <Flag.h>
+#include "Flag.h"
 
 /*** <<< TYPE-DECLS [EnumeratedColorFlag] >>> ***/
 
diff --git a/tests/19-param-OK.asn1.-P b/tests/19-param-OK.asn1.-P
index a7f8e7b..24b1313 100644
--- a/tests/19-param-OK.asn1.-P
+++ b/tests/19-param-OK.asn1.-P
@@ -4,7 +4,7 @@
 #include <OBJECT_IDENTIFIER.h>
 #include <BIT_STRING.h>
 #include <INTEGER.h>
-#include <Name.h>
+#include "Name.h"
 #include <constr_SEQUENCE.h>
 
 /*** <<< TYPE-DECLS [SIGNED] >>> ***/
@@ -209,7 +209,7 @@
 
 /*** <<< INCLUDES [Certificate] >>> ***/
 
-#include <SIGNED.h>
+#include "SIGNED.h"
 
 /*** <<< TYPE-DECLS [Certificate] >>> ***/
 
@@ -355,7 +355,7 @@
 
 /*** <<< POST-INCLUDE [Name] >>> ***/
 
-#include <RelativeDistinguishedName.h>
+#include "RelativeDistinguishedName.h"
 
 /*** <<< STAT-DEFS [Name] >>> ***/
 
diff --git a/tests/31-set-of-OK.asn1.-P b/tests/31-set-of-OK.asn1.-P
index 38a76bd..3a8cb1b 100644
--- a/tests/31-set-of-OK.asn1.-P
+++ b/tests/31-set-of-OK.asn1.-P
@@ -23,7 +23,7 @@
 
 /*** <<< POST-INCLUDE [Forest] >>> ***/
 
-#include <Tree.h>
+#include "Tree.h"
 
 /*** <<< STAT-DEFS [Forest] >>> ***/
 
@@ -237,7 +237,7 @@
 
 /*** <<< POST-INCLUDE [Stuff] >>> ***/
 
-#include <Forest.h>
+#include "Forest.h"
 
 /*** <<< STAT-DEFS [Stuff] >>> ***/
 
diff --git a/tests/32-sequence-of-OK.asn1.-P b/tests/32-sequence-of-OK.asn1.-P
index 5061e77..84f0ce0 100644
--- a/tests/32-sequence-of-OK.asn1.-P
+++ b/tests/32-sequence-of-OK.asn1.-P
@@ -23,7 +23,7 @@
 
 /*** <<< POST-INCLUDE [Programming] >>> ***/
 
-#include <Fault.h>
+#include "Fault.h"
 
 /*** <<< STAT-DEFS [Programming] >>> ***/
 
@@ -95,7 +95,7 @@
 
 /*** <<< POST-INCLUDE [Fault] >>> ***/
 
-#include <Error.h>
+#include "Error.h"
 
 /*** <<< STAT-DEFS [Fault] >>> ***/
 
@@ -233,7 +233,7 @@
 
 /*** <<< POST-INCLUDE [SeqWithMandatory] >>> ***/
 
-#include <Error.h>
+#include "Error.h"
 
 /*** <<< STAT-DEFS [SeqWithMandatory] >>> ***/
 
@@ -375,7 +375,7 @@
 
 /*** <<< POST-INCLUDE [SeqWithOptional] >>> ***/
 
-#include <Error.h>
+#include "Error.h"
 
 /*** <<< STAT-DEFS [SeqWithOptional] >>> ***/
 
diff --git a/tests/39-sequence-of-OK.asn1.-P b/tests/39-sequence-of-OK.asn1.-P
index 6bddb71..4e6ed8c 100644
--- a/tests/39-sequence-of-OK.asn1.-P
+++ b/tests/39-sequence-of-OK.asn1.-P
@@ -31,7 +31,7 @@
 
 /*** <<< POST-INCLUDE [T] >>> ***/
 
-#include <T2.h>
+#include "T2.h"
 
 /*** <<< STAT-DEFS [T] >>> ***/
 
diff --git a/tests/42-real-life-OK.asn1.-PR b/tests/42-real-life-OK.asn1.-PR
index 1c99d1a..898d941 100644
--- a/tests/42-real-life-OK.asn1.-PR
+++ b/tests/42-real-life-OK.asn1.-PR
@@ -35,7 +35,7 @@
 
 /*** <<< POST-INCLUDE [LogLine] >>> ***/
 
-#include <VariablePartSet.h>
+#include "VariablePartSet.h"
 
 /*** <<< CODE [LogLine] >>> ***/
 
@@ -175,7 +175,7 @@
 
 /*** <<< INCLUDES [VariablePartSet] >>> ***/
 
-#include <ActionItem.h>
+#include "ActionItem.h"
 #include <asn_SEQUENCE_OF.h>
 #include <constr_SEQUENCE_OF.h>
 #include <constr_SEQUENCE.h>
@@ -209,7 +209,7 @@
 
 /*** <<< POST-INCLUDE [VariablePartSet] >>> ***/
 
-#include <VariablePart.h>
+#include "VariablePart.h"
 
 /*** <<< CODE [VariablePartSet] >>> ***/
 
diff --git a/tests/43-recursion-OK.asn1.-P b/tests/43-recursion-OK.asn1.-P
index 7da8b2e..7a0b0d3 100644
--- a/tests/43-recursion-OK.asn1.-P
+++ b/tests/43-recursion-OK.asn1.-P
@@ -40,7 +40,7 @@
 
 /*** <<< POST-INCLUDE [Test-structure-1] >>> ***/
 
-#include <Test-structure-1.h>
+#include "Test-structure-1.h"
 
 /*** <<< STAT-DEFS [Test-structure-1] >>> ***/
 
@@ -260,7 +260,7 @@
 
 /*** <<< POST-INCLUDE [Choice-1] >>> ***/
 
-#include <Choice-1.h>
+#include "Choice-1.h"
 
 /*** <<< STAT-DEFS [Choice-1] >>> ***/
 
@@ -423,7 +423,7 @@
 
 /*** <<< POST-INCLUDE [Test-structure-2] >>> ***/
 
-#include <Test-structure-3.h>
+#include "Test-structure-3.h"
 
 /*** <<< STAT-DEFS [Test-structure-2] >>> ***/
 
@@ -520,7 +520,7 @@
 
 /*** <<< POST-INCLUDE [Test-structure-3] >>> ***/
 
-#include <Test-structure-2.h>
+#include "Test-structure-2.h"
 
 /*** <<< STAT-DEFS [Test-structure-3] >>> ***/
 
diff --git a/tests/46-redefine-OK.asn1.-PR b/tests/46-redefine-OK.asn1.-PR
index 0dc9674..3dc4a06 100644
--- a/tests/46-redefine-OK.asn1.-PR
+++ b/tests/46-redefine-OK.asn1.-PR
@@ -125,7 +125,7 @@
 
 /*** <<< INCLUDES [ConstructedType] >>> ***/
 
-#include <PrimitiveType.h>
+#include "PrimitiveType.h"
 #include <constr_SEQUENCE.h>
 
 /*** <<< TYPE-DECLS [ConstructedType] >>> ***/
@@ -196,7 +196,7 @@
 
 /*** <<< INCLUDES [T] >>> ***/
 
-#include <ConstructedType.h>
+#include "ConstructedType.h"
 
 /*** <<< TYPE-DECLS [T] >>> ***/
 
diff --git a/tests/50-constraint-OK.asn1.-P b/tests/50-constraint-OK.asn1.-P
index 3e3bd6c..3cdcb3b 100644
--- a/tests/50-constraint-OK.asn1.-P
+++ b/tests/50-constraint-OK.asn1.-P
@@ -125,7 +125,7 @@
 
 /*** <<< INCLUDES [Int2] >>> ***/
 
-#include <Int1.h>
+#include "Int1.h"
 
 /*** <<< TYPE-DECLS [Int2] >>> ***/
 
@@ -268,7 +268,7 @@
 
 /*** <<< INCLUDES [Int3] >>> ***/
 
-#include <Int2.h>
+#include "Int2.h"
 
 /*** <<< TYPE-DECLS [Int3] >>> ***/
 
@@ -415,7 +415,7 @@
 
 /*** <<< INCLUDES [Int4] >>> ***/
 
-#include <Int3.h>
+#include "Int3.h"
 
 /*** <<< TYPE-DECLS [Int4] >>> ***/
 
@@ -562,7 +562,7 @@
 
 /*** <<< INCLUDES [Int5] >>> ***/
 
-#include <Int4.h>
+#include "Int4.h"
 
 /*** <<< TYPE-DECLS [Int5] >>> ***/
 
@@ -980,7 +980,7 @@
 
 /*** <<< INCLUDES [Str2] >>> ***/
 
-#include <Str1.h>
+#include "Str1.h"
 
 /*** <<< TYPE-DECLS [Str2] >>> ***/
 
@@ -1139,7 +1139,7 @@
 
 /*** <<< INCLUDES [Str3] >>> ***/
 
-#include <Str2.h>
+#include "Str2.h"
 
 /*** <<< TYPE-DECLS [Str3] >>> ***/
 
@@ -1621,7 +1621,7 @@
 
 /*** <<< INCLUDES [PER-Visible-2] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [PER-Visible-2] >>> ***/
 
@@ -1777,7 +1777,7 @@
 
 /*** <<< INCLUDES [Not-PER-Visible-1] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [Not-PER-Visible-1] >>> ***/
 
@@ -1933,7 +1933,7 @@
 
 /*** <<< INCLUDES [Not-PER-Visible-2] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [Not-PER-Visible-2] >>> ***/
 
@@ -2089,7 +2089,7 @@
 
 /*** <<< INCLUDES [Not-PER-Visible-3] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [Not-PER-Visible-3] >>> ***/
 
@@ -2245,7 +2245,7 @@
 
 /*** <<< INCLUDES [SIZE-but-not-FROM] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [SIZE-but-not-FROM] >>> ***/
 
@@ -2404,7 +2404,7 @@
 
 /*** <<< INCLUDES [SIZE-and-FROM] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [SIZE-and-FROM] >>> ***/
 
@@ -2563,7 +2563,7 @@
 
 /*** <<< INCLUDES [Neither-SIZE-nor-FROM] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [Neither-SIZE-nor-FROM] >>> ***/
 
@@ -2869,7 +2869,7 @@
 
 /*** <<< INCLUDES [Utf8-3] >>> ***/
 
-#include <Utf8-2.h>
+#include "Utf8-2.h"
 
 /*** <<< TYPE-DECLS [Utf8-3] >>> ***/
 
@@ -3047,7 +3047,7 @@
 
 /*** <<< INCLUDES [Utf8-2] >>> ***/
 
-#include <Utf8-1.h>
+#include "Utf8-1.h"
 
 /*** <<< TYPE-DECLS [Utf8-2] >>> ***/
 
@@ -3319,7 +3319,7 @@
 
 /*** <<< INCLUDES [VisibleIdentifier] >>> ***/
 
-#include <Identifier.h>
+#include "Identifier.h"
 
 /*** <<< TYPE-DECLS [VisibleIdentifier] >>> ***/
 
@@ -3490,12 +3490,12 @@
 
 /*** <<< INCLUDES [Sequence] >>> ***/
 
-#include <Int1.h>
-#include <Int4.h>
+#include "Int1.h"
+#include "Int4.h"
 #include <BOOLEAN.h>
 #include <ENUMERATED.h>
 #include <NULL.h>
-#include <Int5.h>
+#include "Int5.h"
 #include <constr_SEQUENCE.h>
 
 /*** <<< DEPS [Sequence] >>> ***/
@@ -3923,7 +3923,7 @@
 
 /*** <<< POST-INCLUDE [SequenceOf] >>> ***/
 
-#include <Sequence.h>
+#include "Sequence.h"
 
 /*** <<< STAT-DEFS [SequenceOf] >>> ***/
 
diff --git a/tests/50-constraint-OK.asn1.-Pgen-PER b/tests/50-constraint-OK.asn1.-Pgen-PER
index 53adbeb..0112a2c 100644
--- a/tests/50-constraint-OK.asn1.-Pgen-PER
+++ b/tests/50-constraint-OK.asn1.-Pgen-PER
@@ -143,7 +143,7 @@
 
 /*** <<< INCLUDES [Int2] >>> ***/
 
-#include <Int1.h>
+#include "Int1.h"
 
 /*** <<< TYPE-DECLS [Int2] >>> ***/
 
@@ -308,7 +308,7 @@
 
 /*** <<< INCLUDES [Int3] >>> ***/
 
-#include <Int2.h>
+#include "Int2.h"
 
 /*** <<< TYPE-DECLS [Int3] >>> ***/
 
@@ -477,7 +477,7 @@
 
 /*** <<< INCLUDES [Int4] >>> ***/
 
-#include <Int3.h>
+#include "Int3.h"
 
 /*** <<< TYPE-DECLS [Int4] >>> ***/
 
@@ -646,7 +646,7 @@
 
 /*** <<< INCLUDES [Int5] >>> ***/
 
-#include <Int4.h>
+#include "Int4.h"
 
 /*** <<< TYPE-DECLS [Int5] >>> ***/
 
@@ -1126,7 +1126,7 @@
 
 /*** <<< INCLUDES [Str2] >>> ***/
 
-#include <Str1.h>
+#include "Str1.h"
 
 /*** <<< TYPE-DECLS [Str2] >>> ***/
 
@@ -1307,7 +1307,7 @@
 
 /*** <<< INCLUDES [Str3] >>> ***/
 
-#include <Str2.h>
+#include "Str2.h"
 
 /*** <<< TYPE-DECLS [Str3] >>> ***/
 
@@ -1855,7 +1855,7 @@
 
 /*** <<< INCLUDES [PER-Visible-2] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [PER-Visible-2] >>> ***/
 
@@ -2033,7 +2033,7 @@
 
 /*** <<< INCLUDES [Not-PER-Visible-1] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [Not-PER-Visible-1] >>> ***/
 
@@ -2211,7 +2211,7 @@
 
 /*** <<< INCLUDES [Not-PER-Visible-2] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [Not-PER-Visible-2] >>> ***/
 
@@ -2389,7 +2389,7 @@
 
 /*** <<< INCLUDES [Not-PER-Visible-3] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [Not-PER-Visible-3] >>> ***/
 
@@ -2567,7 +2567,7 @@
 
 /*** <<< INCLUDES [SIZE-but-not-FROM] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [SIZE-but-not-FROM] >>> ***/
 
@@ -2748,7 +2748,7 @@
 
 /*** <<< INCLUDES [SIZE-and-FROM] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [SIZE-and-FROM] >>> ***/
 
@@ -2929,7 +2929,7 @@
 
 /*** <<< INCLUDES [Neither-SIZE-nor-FROM] >>> ***/
 
-#include <PER-Visible.h>
+#include "PER-Visible.h"
 
 /*** <<< TYPE-DECLS [Neither-SIZE-nor-FROM] >>> ***/
 
@@ -3279,7 +3279,7 @@
 
 /*** <<< INCLUDES [Utf8-3] >>> ***/
 
-#include <Utf8-2.h>
+#include "Utf8-2.h"
 
 /*** <<< TYPE-DECLS [Utf8-3] >>> ***/
 
@@ -3479,7 +3479,7 @@
 
 /*** <<< INCLUDES [Utf8-2] >>> ***/
 
-#include <Utf8-1.h>
+#include "Utf8-1.h"
 
 /*** <<< TYPE-DECLS [Utf8-2] >>> ***/
 
@@ -3791,7 +3791,7 @@
 
 /*** <<< INCLUDES [VisibleIdentifier] >>> ***/
 
-#include <Identifier.h>
+#include "Identifier.h"
 
 /*** <<< TYPE-DECLS [VisibleIdentifier] >>> ***/
 
@@ -3980,12 +3980,12 @@
 
 /*** <<< INCLUDES [Sequence] >>> ***/
 
-#include <Int1.h>
-#include <Int4.h>
+#include "Int1.h"
+#include "Int4.h"
 #include <BOOLEAN.h>
 #include <ENUMERATED.h>
 #include <NULL.h>
-#include <Int5.h>
+#include "Int5.h"
 #include <constr_SEQUENCE.h>
 
 /*** <<< DEPS [Sequence] >>> ***/
@@ -4452,7 +4452,7 @@
 
 /*** <<< POST-INCLUDE [SequenceOf] >>> ***/
 
-#include <Sequence.h>
+#include "Sequence.h"
 
 /*** <<< STAT-DEFS [SequenceOf] >>> ***/
 
diff --git a/tests/59-choice-extended-OK.asn1.-P b/tests/59-choice-extended-OK.asn1.-P
index 099dd9f..3684a91 100644
--- a/tests/59-choice-extended-OK.asn1.-P
+++ b/tests/59-choice-extended-OK.asn1.-P
@@ -42,7 +42,7 @@
 
 /*** <<< POST-INCLUDE [Choice] >>> ***/
 
-#include <Choice.h>
+#include "Choice.h"
 
 /*** <<< STAT-DEFS [Choice] >>> ***/
 
diff --git a/tests/65-multi-tag-OK.asn1.-P b/tests/65-multi-tag-OK.asn1.-P
index 8c8d860..7547825 100644
--- a/tests/65-multi-tag-OK.asn1.-P
+++ b/tests/65-multi-tag-OK.asn1.-P
@@ -1,7 +1,7 @@
 
 /*** <<< INCLUDES [T1] >>> ***/
 
-#include <T2.h>
+#include "T2.h"
 
 /*** <<< TYPE-DECLS [T1] >>> ***/
 
@@ -136,7 +136,7 @@
 
 /*** <<< INCLUDES [T2] >>> ***/
 
-#include <T3.h>
+#include "T3.h"
 
 /*** <<< TYPE-DECLS [T2] >>> ***/
 
@@ -269,7 +269,7 @@
 
 /*** <<< INCLUDES [T3] >>> ***/
 
-#include <T4.h>
+#include "T4.h"
 
 /*** <<< TYPE-DECLS [T3] >>> ***/
 
@@ -400,7 +400,7 @@
 
 /*** <<< INCLUDES [T4] >>> ***/
 
-#include <T5.h>
+#include "T5.h"
 
 /*** <<< TYPE-DECLS [T4] >>> ***/
 
@@ -526,7 +526,7 @@
 
 /*** <<< INCLUDES [T5] >>> ***/
 
-#include <T6.h>
+#include "T6.h"
 
 /*** <<< TYPE-DECLS [T5] >>> ***/
 
@@ -775,7 +775,7 @@
 
 /*** <<< INCLUDES [T] >>> ***/
 
-#include <Ts.h>
+#include "Ts.h"
 
 /*** <<< TYPE-DECLS [T] >>> ***/
 
@@ -901,8 +901,8 @@
 
 /*** <<< INCLUDES [Ts] >>> ***/
 
-#include <T2.h>
-#include <T3.h>
+#include "T2.h"
+#include "T3.h"
 #include <constr_SEQUENCE.h>
 
 /*** <<< TYPE-DECLS [Ts] >>> ***/
diff --git a/tests/65-multi-tag-OK.asn1.-Pfnative-types b/tests/65-multi-tag-OK.asn1.-Pfnative-types
index 9dad4c7..3b648ec 100644
--- a/tests/65-multi-tag-OK.asn1.-Pfnative-types
+++ b/tests/65-multi-tag-OK.asn1.-Pfnative-types
@@ -1,7 +1,7 @@
 
 /*** <<< INCLUDES [T1] >>> ***/
 
-#include <T2.h>
+#include "T2.h"
 
 /*** <<< TYPE-DECLS [T1] >>> ***/
 
@@ -136,7 +136,7 @@
 
 /*** <<< INCLUDES [T2] >>> ***/
 
-#include <T3.h>
+#include "T3.h"
 
 /*** <<< TYPE-DECLS [T2] >>> ***/
 
@@ -269,7 +269,7 @@
 
 /*** <<< INCLUDES [T3] >>> ***/
 
-#include <T4.h>
+#include "T4.h"
 
 /*** <<< TYPE-DECLS [T3] >>> ***/
 
@@ -400,7 +400,7 @@
 
 /*** <<< INCLUDES [T4] >>> ***/
 
-#include <T5.h>
+#include "T5.h"
 
 /*** <<< TYPE-DECLS [T4] >>> ***/
 
@@ -526,7 +526,7 @@
 
 /*** <<< INCLUDES [T5] >>> ***/
 
-#include <T6.h>
+#include "T6.h"
 
 /*** <<< TYPE-DECLS [T5] >>> ***/
 
@@ -775,7 +775,7 @@
 
 /*** <<< INCLUDES [T] >>> ***/
 
-#include <Ts.h>
+#include "Ts.h"
 
 /*** <<< TYPE-DECLS [T] >>> ***/
 
@@ -901,8 +901,8 @@
 
 /*** <<< INCLUDES [Ts] >>> ***/
 
-#include <T2.h>
-#include <T3.h>
+#include "T2.h"
+#include "T3.h"
 #include <constr_SEQUENCE.h>
 
 /*** <<< TYPE-DECLS [Ts] >>> ***/
diff --git a/tests/66-ref-simple-OK.asn1.-P b/tests/66-ref-simple-OK.asn1.-P
index 261a06a..2eecf5e 100644
--- a/tests/66-ref-simple-OK.asn1.-P
+++ b/tests/66-ref-simple-OK.asn1.-P
@@ -1,7 +1,7 @@
 
 /*** <<< INCLUDES [T] >>> ***/
 
-#include <SimpleType.h>
+#include "SimpleType.h"
 #include <asn_SET_OF.h>
 #include <constr_SET_OF.h>
 
diff --git a/tests/70-xer-test-OK.asn1.-P b/tests/70-xer-test-OK.asn1.-P
index 0b1b4f2..aa7e11e 100644
--- a/tests/70-xer-test-OK.asn1.-P
+++ b/tests/70-xer-test-OK.asn1.-P
@@ -1,21 +1,21 @@
 
 /*** <<< INCLUDES [PDU] >>> ***/
 
-#include <Sequence.h>
-#include <Set.h>
-#include <SequenceOf.h>
-#include <ExtensibleSet.h>
-#include <ExtensibleSequence.h>
-#include <ExtensibleSequence2.h>
-#include <SetOfNULL.h>
-#include <SetOfREAL.h>
-#include <SetOfEnums.h>
-#include <NamedSetOfNULL.h>
-#include <NamedSetOfREAL.h>
-#include <NamedSetOfEnums.h>
-#include <SeqOfZuka.h>
-#include <SetOfChoice.h>
-#include <NamedSetOfChoice.h>
+#include "Sequence.h"
+#include "Set.h"
+#include "SequenceOf.h"
+#include "ExtensibleSet.h"
+#include "ExtensibleSequence.h"
+#include "ExtensibleSequence2.h"
+#include "SetOfNULL.h"
+#include "SetOfREAL.h"
+#include "SetOfEnums.h"
+#include "NamedSetOfNULL.h"
+#include "NamedSetOfREAL.h"
+#include "NamedSetOfEnums.h"
+#include "SeqOfZuka.h"
+#include "SetOfChoice.h"
+#include "NamedSetOfChoice.h"
 #include <constr_CHOICE.h>
 
 /*** <<< DEPS [PDU] >>> ***/
@@ -293,7 +293,7 @@
 
 /*** <<< POST-INCLUDE [Sequence] >>> ***/
 
-#include <Sequence.h>
+#include "Sequence.h"
 
 /*** <<< STAT-DEFS [Sequence] >>> ***/
 
@@ -1694,7 +1694,7 @@
 
 /*** <<< POST-INCLUDE [SetOfChoice] >>> ***/
 
-#include <SimpleChoice.h>
+#include "SimpleChoice.h"
 
 /*** <<< STAT-DEFS [SetOfChoice] >>> ***/
 
@@ -1766,7 +1766,7 @@
 
 /*** <<< POST-INCLUDE [NamedSetOfChoice] >>> ***/
 
-#include <SimpleChoice.h>
+#include "SimpleChoice.h"
 
 /*** <<< STAT-DEFS [NamedSetOfChoice] >>> ***/
 
diff --git a/tests/72-same-names-OK.asn1.-P b/tests/72-same-names-OK.asn1.-P
index 38b1fe6..43b7813 100644
--- a/tests/72-same-names-OK.asn1.-P
+++ b/tests/72-same-names-OK.asn1.-P
@@ -2,8 +2,8 @@
 /*** <<< INCLUDES [Type] >>> ***/
 
 #include <asn_SET_OF.h>
-#include <Type1.h>
-#include <Type2.h>
+#include "Type1.h"
+#include "Type2.h"
 #include <constr_SEQUENCE.h>
 #include <constr_SET_OF.h>
 
diff --git a/tests/73-circular-OK.asn1.-P b/tests/73-circular-OK.asn1.-P
index 3dc73a4..1ab4dbf 100644
--- a/tests/73-circular-OK.asn1.-P
+++ b/tests/73-circular-OK.asn1.-P
@@ -29,7 +29,7 @@
 
 /*** <<< POST-INCLUDE [Type] >>> ***/
 
-#include <EpytRef.h>
+#include "EpytRef.h"
 
 /*** <<< STAT-DEFS [Type] >>> ***/
 
@@ -130,7 +130,7 @@
 
 /*** <<< INCLUDES [EpytRef] >>> ***/
 
-#include <Epyt.h>
+#include "Epyt.h"
 
 /*** <<< TYPE-DECLS [EpytRef] >>> ***/
 
@@ -285,8 +285,8 @@
 
 /*** <<< POST-INCLUDE [Epyt] >>> ***/
 
-#include <Type.h>
-#include <Ypet.h>
+#include "Type.h"
+#include "Ypet.h"
 
 /*** <<< STAT-DEFS [Epyt] >>> ***/
 
@@ -409,7 +409,7 @@
 
 #include <INTEGER.h>
 #include <IA5String.h>
-#include <EnumType.h>
+#include "EnumType.h"
 #include <asn_SET_OF.h>
 #include <constr_SET_OF.h>
 #include <constr_SET.h>
@@ -460,7 +460,7 @@
 
 /*** <<< POST-INCLUDE [Ypet] >>> ***/
 
-#include <Epyt.h>
+#include "Epyt.h"
 
 /*** <<< CTABLES [Ypet] >>> ***/
 
diff --git a/tests/84-param-tags-OK.asn1.-P b/tests/84-param-tags-OK.asn1.-P
index 8f1dc3d..6674942 100644
--- a/tests/84-param-tags-OK.asn1.-P
+++ b/tests/84-param-tags-OK.asn1.-P
@@ -194,7 +194,7 @@
 
 /*** <<< INCLUDES [TestChoice] >>> ***/
 
-#include <TestType.h>
+#include "TestType.h"
 #include <constr_CHOICE.h>
 
 /*** <<< DEPS [TestChoice] >>> ***/
@@ -465,7 +465,7 @@
 
 /*** <<< INCLUDES [AutoChoice] >>> ***/
 
-#include <AutoType.h>
+#include "AutoType.h"
 #include <constr_CHOICE.h>
 
 /*** <<< DEPS [AutoChoice] >>> ***/
diff --git a/tests/92-circular-loops-OK.asn1.-P b/tests/92-circular-loops-OK.asn1.-P
index c0f1ca5..5570aa5 100644
--- a/tests/92-circular-loops-OK.asn1.-P
+++ b/tests/92-circular-loops-OK.asn1.-P
@@ -1,13 +1,13 @@
 
 /*** <<< INCLUDES [Everything] >>> ***/
 
-#include <Set.h>
-#include <Alpha.h>
-#include <Beta.h>
-#include <Gamma.h>
-#include <OneTwo.h>
-#include <TwoThree.h>
-#include <ThreeOne.h>
+#include "Set.h"
+#include "Alpha.h"
+#include "Beta.h"
+#include "Gamma.h"
+#include "OneTwo.h"
+#include "TwoThree.h"
+#include "ThreeOne.h"
 #include <constr_SEQUENCE.h>
 
 /*** <<< FWD-DECLS [Everything] >>> ***/
@@ -40,9 +40,9 @@
 
 /*** <<< POST-INCLUDE [Everything] >>> ***/
 
-#include <Choice1.h>
-#include <Choice2.h>
-#include <Choice3.h>
+#include "Choice1.h"
+#include "Choice2.h"
+#include "Choice3.h"
 
 /*** <<< STAT-DEFS [Everything] >>> ***/
 
@@ -227,7 +227,7 @@
 
 /*** <<< POST-INCLUDE [Choice1] >>> ***/
 
-#include <Everything.h>
+#include "Everything.h"
 
 /*** <<< STAT-DEFS [Choice1] >>> ***/
 
@@ -290,7 +290,7 @@
 
 /*** <<< INCLUDES [Choice2] >>> ***/
 
-#include <TypeRef.h>
+#include "TypeRef.h"
 #include <constr_CHOICE.h>
 
 /*** <<< DEPS [Choice2] >>> ***/
@@ -329,7 +329,7 @@
 
 /*** <<< POST-INCLUDE [Choice2] >>> ***/
 
-#include <Everything.h>
+#include "Everything.h"
 
 /*** <<< STAT-DEFS [Choice2] >>> ***/
 
@@ -441,8 +441,8 @@
 
 /*** <<< POST-INCLUDE [Choice3] >>> ***/
 
-#include <Everything.h>
-#include <Choice3.h>
+#include "Everything.h"
+#include "Choice3.h"
 
 /*** <<< STAT-DEFS [Choice3] >>> ***/
 
@@ -650,8 +650,8 @@
 
 /*** <<< POST-INCLUDE [Set] >>> ***/
 
-#include <Set.h>
-#include <Sequence.h>
+#include "Set.h"
+#include "Sequence.h"
 
 /*** <<< STAT-DEFS [Set] >>> ***/
 
@@ -822,8 +822,8 @@
 
 /*** <<< POST-INCLUDE [Sequence] >>> ***/
 
-#include <Sequence.h>
-#include <Set.h>
+#include "Sequence.h"
+#include "Set.h"
 
 /*** <<< STAT-DEFS [Sequence] >>> ***/
 
@@ -910,7 +910,7 @@
 
 /*** <<< INCLUDES [TypeRef] >>> ***/
 
-#include <Sequence.h>
+#include "Sequence.h"
 
 /*** <<< TYPE-DECLS [TypeRef] >>> ***/
 
@@ -1061,7 +1061,7 @@
 
 /*** <<< POST-INCLUDE [Alpha] >>> ***/
 
-#include <Beta.h>
+#include "Beta.h"
 
 /*** <<< STAT-DEFS [Alpha] >>> ***/
 
@@ -1203,8 +1203,8 @@
 
 /*** <<< POST-INCLUDE [Beta] >>> ***/
 
-#include <Alpha.h>
-#include <Gamma.h>
+#include "Alpha.h"
+#include "Gamma.h"
 
 /*** <<< STAT-DEFS [Beta] >>> ***/
 
@@ -1296,9 +1296,9 @@
 
 /*** <<< POST-INCLUDE [Gamma] >>> ***/
 
-#include <TwoThree.h>
-#include <Alpha.h>
-#include <Beta.h>
+#include "TwoThree.h"
+#include "Alpha.h"
+#include "Beta.h"
 
 /*** <<< STAT-DEFS [Gamma] >>> ***/
 
@@ -1410,7 +1410,7 @@
 
 /*** <<< POST-INCLUDE [OneTwo] >>> ***/
 
-#include <TwoThree.h>
+#include "TwoThree.h"
 
 /*** <<< STAT-DEFS [OneTwo] >>> ***/
 
@@ -1507,7 +1507,7 @@
 
 /*** <<< POST-INCLUDE [TwoThree] >>> ***/
 
-#include <ThreeOne.h>
+#include "ThreeOne.h"
 
 /*** <<< STAT-DEFS [TwoThree] >>> ***/
 
@@ -1607,8 +1607,8 @@
 
 /*** <<< POST-INCLUDE [ThreeOne] >>> ***/
 
-#include <OneTwo.h>
-#include <Gamma.h>
+#include "OneTwo.h"
+#include "Gamma.h"
 
 /*** <<< STAT-DEFS [ThreeOne] >>> ***/
 
diff --git a/tests/92-circular-loops-OK.asn1.-Pfindirect-choice b/tests/92-circular-loops-OK.asn1.-Pfindirect-choice
index 526ed93..9c9170b 100644
--- a/tests/92-circular-loops-OK.asn1.-Pfindirect-choice
+++ b/tests/92-circular-loops-OK.asn1.-Pfindirect-choice
@@ -1,13 +1,13 @@
 
 /*** <<< INCLUDES [Everything] >>> ***/
 
-#include <Set.h>
-#include <Alpha.h>
-#include <Beta.h>
-#include <Gamma.h>
-#include <OneTwo.h>
-#include <TwoThree.h>
-#include <ThreeOne.h>
+#include "Set.h"
+#include "Alpha.h"
+#include "Beta.h"
+#include "Gamma.h"
+#include "OneTwo.h"
+#include "TwoThree.h"
+#include "ThreeOne.h"
 #include <constr_SEQUENCE.h>
 
 /*** <<< FWD-DECLS [Everything] >>> ***/
@@ -40,9 +40,9 @@
 
 /*** <<< POST-INCLUDE [Everything] >>> ***/
 
-#include <Choice1.h>
-#include <Choice2.h>
-#include <Choice3.h>
+#include "Choice1.h"
+#include "Choice2.h"
+#include "Choice3.h"
 
 /*** <<< STAT-DEFS [Everything] >>> ***/
 
@@ -227,7 +227,7 @@
 
 /*** <<< POST-INCLUDE [Choice1] >>> ***/
 
-#include <Everything.h>
+#include "Everything.h"
 
 /*** <<< STAT-DEFS [Choice1] >>> ***/
 
@@ -329,8 +329,8 @@
 
 /*** <<< POST-INCLUDE [Choice2] >>> ***/
 
-#include <TypeRef.h>
-#include <Everything.h>
+#include "TypeRef.h"
+#include "Everything.h"
 
 /*** <<< STAT-DEFS [Choice2] >>> ***/
 
@@ -442,8 +442,8 @@
 
 /*** <<< POST-INCLUDE [Choice3] >>> ***/
 
-#include <Everything.h>
-#include <Choice3.h>
+#include "Everything.h"
+#include "Choice3.h"
 
 /*** <<< STAT-DEFS [Choice3] >>> ***/
 
@@ -651,8 +651,8 @@
 
 /*** <<< POST-INCLUDE [Set] >>> ***/
 
-#include <Set.h>
-#include <Sequence.h>
+#include "Set.h"
+#include "Sequence.h"
 
 /*** <<< STAT-DEFS [Set] >>> ***/
 
@@ -823,8 +823,8 @@
 
 /*** <<< POST-INCLUDE [Sequence] >>> ***/
 
-#include <Sequence.h>
-#include <Set.h>
+#include "Sequence.h"
+#include "Set.h"
 
 /*** <<< STAT-DEFS [Sequence] >>> ***/
 
@@ -911,7 +911,7 @@
 
 /*** <<< INCLUDES [TypeRef] >>> ***/
 
-#include <Sequence.h>
+#include "Sequence.h"
 
 /*** <<< TYPE-DECLS [TypeRef] >>> ***/
 
@@ -1062,7 +1062,7 @@
 
 /*** <<< POST-INCLUDE [Alpha] >>> ***/
 
-#include <Beta.h>
+#include "Beta.h"
 
 /*** <<< STAT-DEFS [Alpha] >>> ***/
 
@@ -1204,8 +1204,8 @@
 
 /*** <<< POST-INCLUDE [Beta] >>> ***/
 
-#include <Alpha.h>
-#include <Gamma.h>
+#include "Alpha.h"
+#include "Gamma.h"
 
 /*** <<< STAT-DEFS [Beta] >>> ***/
 
@@ -1297,9 +1297,9 @@
 
 /*** <<< POST-INCLUDE [Gamma] >>> ***/
 
-#include <TwoThree.h>
-#include <Alpha.h>
-#include <Beta.h>
+#include "TwoThree.h"
+#include "Alpha.h"
+#include "Beta.h"
 
 /*** <<< STAT-DEFS [Gamma] >>> ***/
 
@@ -1411,7 +1411,7 @@
 
 /*** <<< POST-INCLUDE [OneTwo] >>> ***/
 
-#include <TwoThree.h>
+#include "TwoThree.h"
 
 /*** <<< STAT-DEFS [OneTwo] >>> ***/
 
@@ -1508,7 +1508,7 @@
 
 /*** <<< POST-INCLUDE [TwoThree] >>> ***/
 
-#include <ThreeOne.h>
+#include "ThreeOne.h"
 
 /*** <<< STAT-DEFS [TwoThree] >>> ***/
 
@@ -1608,8 +1608,8 @@
 
 /*** <<< POST-INCLUDE [ThreeOne] >>> ***/
 
-#include <OneTwo.h>
-#include <Gamma.h>
+#include "OneTwo.h"
+#include "Gamma.h"
 
 /*** <<< STAT-DEFS [ThreeOne] >>> ***/
 
diff --git a/tests/93-asn1c-controls-OK.asn1.-P b/tests/93-asn1c-controls-OK.asn1.-P
index c86f6cc..d778a7b 100644
--- a/tests/93-asn1c-controls-OK.asn1.-P
+++ b/tests/93-asn1c-controls-OK.asn1.-P
@@ -83,7 +83,7 @@
 
 /*** <<< INCLUDES [Set] >>> ***/
 
-#include <Sequence.h>
+#include "Sequence.h"
 #include <constr_SET.h>
 
 /*** <<< DEPS [Set] >>> ***/
@@ -121,7 +121,7 @@
 
 /*** <<< POST-INCLUDE [Set] >>> ***/
 
-#include <Sequence.h>
+#include "Sequence.h"
 
 /*** <<< STAT-DEFS [Set] >>> ***/
 
@@ -193,7 +193,7 @@
 
 /*** <<< INCLUDES [Choice] >>> ***/
 
-#include <Sequence.h>
+#include "Sequence.h"
 #include <INTEGER.h>
 #include <asn_SET_OF.h>
 #include <constr_SET_OF.h>
@@ -237,7 +237,7 @@
 
 /*** <<< POST-INCLUDE [Choice] >>> ***/
 
-#include <Sequence.h>
+#include "Sequence.h"
 
 /*** <<< STAT-DEFS [Choice] >>> ***/
 
