while b ≠ 0:
    if a > b:
        a := a - b
    else:
        b := b - a
return a

program: niznaredbi {
	# ovde pozivamo sta hocemo nad $1
};

niznaredbi: naredba '\n'{}
	| niznaredbi '\n' naredba '\n'{}

naredba : while uslov ':' niznaredbi {}
	| if uslov ':' niznaredbi else ':' niznaredbi{}
	| return broj {}
	| prom dodela izraz {}
	;

# uslov treba da ima atribut pokazivac na LogickiE
# apstraktna klasa koju nasledjuju Manje Vece
uslov : izraz '<' izraz { $$ = new Manje($1,$3)}
	| broj '>' broj {}
	;


# izraz treba da ima atribut pokazivac na IzrazE
# apstraktna klasa koju nasledjuju 
izraz : broj { $$ = new Konstanta($1);}	# konstanta
	| broj '+' broj {$$ = new Plus(new Konstanta($1),new Konstanta($3));}	# plus
	| broj '-' broj {}	# minus
	| prom {}		# prom

;


