Final corrections.
6 flowp ::= FLOWP STRING "(" flowp_entry ")"
7 flowp_entry ::= pttrn_lbl ":" constrnt_lbl
9 constrnt_lbl ::= STRING
10 constrnt ::= CONSTRNT STRING "(" cterm ")"
11 cterm ::= TIMESEP AT string IS INTEGER si_unit
12 | TIMESEP AT string_array IS INTEGER si_unit
13 | TIMESEP AT string IS INTEGER si_unit FROM INTEGER
15 | TIMESEP AT string_array IS INTEGER si_unit FROM
17 | TIMESEP AT string IS INTEGER si_unit AT FL int_array
18 | TIMESEP AT string_array IS INTEGER si_unit AT FL
20 | TIMESEP AT string IS INTEGER si_unit FROM INTEGER
21 UNTIL INTEGER AT FL int_array
22 | TIMESEP AT string_array IS INTEGER si_unit FROM
23 INTEGER UNTIL INTEGER AT FL int_array
26 pttrn ::= PATTERN ( STRING "(" term ")" | "(" term ")" )
27 term ::= int_pt int_op INTEGER
28 | char_pt string_op string
29 | string_pt string_op string
30 | string_array_pt string_array_op string_array
31 | string_array string_array_op string_array_pt
32 | string string_string_array_op string_array_pt
33 | string string_string_array_op char_array_pt
42 string_op ::= IS [ NOT ]
43 string_array_op ::= IS
47 string_string_array_op ::= [ NOT ] IN
48 int_array ::= "[" ints "]"
49 ints ::= { ( "," int | int ) }
51 string_array ::= "[" strings "]"
52 strings ::= { ( "," string | string ) }
63 string_array_pt ::= ROUTE
64 char_array_pt ::= EQUIP
65 string ::= QUOTE STRING QUOTE