program abc variables { type1 : id2; type2 : id3; } functions { define type2 : id2 () { if(func99()) { func2(3); } else { } while(func1()) { func1(); } var type: varname; var type2: varname2; var type1 : arg1; var type1 : arg1; } define type2 : id2 (type arg) { if(func99()) { var typetest: testname; if(func11(abc,def)) { func99(abc,def,ghi); } } } define type : id (type1 arg1, type2 arg2) { } } statements { var abc : def; func1(); func2(abc); while(abcde()) { func3(abc,def); } while(bced()) { var type1 : arg1; func4(abc); } } end