gui + grammar