kize_program		PROGRAM IDENTIFIER global_declarations BEGIN procedure_list END

global_declarations	const_declarations type_declarations var_declarations proc_declarations

local_declarations	label_declarations var_declarations

const_declarations	CONSTANTS const_list
const_declarations

const_list		IDENTIFIER : const ; more_const_list

more_const_list		const_list
more_const_list

const			NUMBER
const			DECIMAL
const			ASTRING

declared_type		atomic_type

atomic_type             INT
atomic_type             REAL
atomic_type		STRING

var_declarations	VARIABLES var_list
var_declarations

var_list		IDENTIFIER : declared_type ; more_var_list

more_var_list		var_list
more_var_list

label_declarations	LABELS label_list
label_declarations

label_list		label ; more_label_list

more_label_list		label_list
more_label_list

label			NUMBER

procedure_list          procedure more_procedure_list

more_procedure_list     procedure_list
more_procedure_list

procedure		PROCEDURE IDENTIFIER local_declarations BEGIN statement_list END
