-"[Pp][Mm]" tw.tw_hour += 12;
-
-"+"{D}{d}{d} {
- INIT();
- SKIPTOD();
- SETZONE(atoi(cp));
-#ifdef ADJUST_NUMERIC_ONLY_TZ_OFFSETS_WRT_DST
- zonehack (&tw);
-#endif /* ADJUST_NUMERIC_ONLY_TZ_OFFSETS_WRT_DST */
- // yyterminate();
- }
-"-"{D}{d}{d} {
- INIT();
- SKIPTOD();
- SETZONE(-atoi(cp));
-#ifdef ADJUST_NUMERIC_ONLY_TZ_OFFSETS_WRT_DST
- zonehack (&tw);
-#endif /* ADJUST_NUMERIC_ONLY_TZ_OFFSETS_WRT_DST */
- // yyterminate();
-
- }
-"-"?("ut"|"UT") INIT(); SETZONE(0);
-"-"?("gmt"|"GMT") INIT(); SETZONE(0);
-"-"?("jst"|"JST") INIT(); SETZONE(200);
-"-"?("jdt"|"JDT") INIT(); SETDST(); SETZONE(2);
-"-"?("est"|"EST") INIT(); SETZONE(-500);
-"-"?("edt"|"EDT") INIT(); SETDST(); SETZONE(-500);
-"-"?("cst"|"CST") INIT(); SETZONE(-600);
-"-"?("cdt"|"CDT") INIT(); SETDST(); SETZONE(-600);
-"-"?("mst"|"MST") INIT(); SETZONE(-700);
-"-"?("mdt"|"MDT") INIT(); SETDST(); SETZONE(-700);
-"-"?("pst"|"PST") INIT(); SETZONE(-800);
-"-"?("pdt"|"PDT") INIT(); SETDST(); SETZONE(-800);
-"-"?("nst"|"NST") INIT(); SETZONE(-330);
-"-"?("ast"|"AST") INIT(); SETZONE(-400);
-"-"?("adt"|"ADT") INIT(); SETDST(); SETZONE(-400);
-"-"?("yst"|"YST") INIT(); SETZONE(-900);
-"-"?("ydt"|"YDT") INIT(); SETDST(); SETZONE(-900);
-"-"?("hst"|"HST") INIT(); SETZONE(-1000);
-"-"?("hdt"|"HDT") INIT(); SETDST(); SETZONE(-1000);
-"-"?("bst"|"BST") INIT(); SETDST(); SETZONE(-100);
-"-"?([a-z]{3}|[A-Z]{3}) ;
+"[Pp][Mm]" tw.tw_hour += 12;
+
+"+"{D}{d}{d} {
+ INIT();
+ SKIPTOD();
+ SETZONE(atoi(cp));
+#ifdef ADJUST_NUMERIC_ONLY_TZ_OFFSETS_WRT_DST
+ zonehack (&tw);
+#endif /* ADJUST_NUMERIC_ONLY_TZ_OFFSETS_WRT_DST */
+ yyterminate();
+}
+"-"{D}{d}{d} {
+ INIT();
+ SKIPTOD();
+ SETZONE(-atoi(cp));
+#ifdef ADJUST_NUMERIC_ONLY_TZ_OFFSETS_WRT_DST
+ zonehack (&tw);
+#endif /* ADJUST_NUMERIC_ONLY_TZ_OFFSETS_WRT_DST */
+ yyterminate();
+
+}
+{nl}("ut"|"UT") INIT(); SETZONE(0); yyterminate();
+{nl}("gmt"|"GMT") INIT(); SETZONE(0); yyterminate();
+{nl}("est"|"EST") INIT(); SETZONE(-500); yyterminate();
+{nl}("edt"|"EDT") { INIT(); SETDST(); SETZONE(-500); yyterminate(); }
+{nl}("cst"|"CST") INIT(); SETZONE(-600); yyterminate();
+{nl}("cdt"|"CDT") { INIT(); SETDST(); SETZONE(-600); yyterminate(); }
+{nl}("mst"|"MST") INIT(); SETZONE(-700); yyterminate();
+{nl}("mdt"|"MDT") { INIT(); SETDST(); SETZONE(-700); yyterminate(); }
+{nl}("pst"|"PST") INIT(); SETZONE(-800); yyterminate();
+{nl}("pdt"|"PDT") { INIT(); SETDST(); SETZONE(-800); yyterminate(); }
+{nl}("nst"|"NST") INIT(); SETZONE(-330); yyterminate();
+{nl}("ast"|"AST") INIT(); SETZONE(-400); yyterminate();
+{nl}("adt"|"ADT") { INIT(); SETDST(); SETZONE(-400); yyterminate(); }
+{nl}("hst"|"HST") INIT(); SETZONE(-1000); yyterminate();
+{nl}("hdt"|"HDT") { INIT(); SETDST(); SETZONE(-1000); yyterminate(); }