; () block (1) ; {} repetition block (0, 1, n) ; [] conditional block (0, 1) ; := rule assignment ; ; comment ; | or Module = Program | Unit | Library | Package Program = ['program' ';'] VariableDeclaration = 'var' ( ':' ';' )# BeginEnd = 'begin' ( Command )* 'end' ';' IfThenElse = 'if' Condition 'then' Statement ( 'else' Statement )#