// Test other statements that use conditions, including return and set formers

// assign_stat ::= IDBOOL "=" condition
#a = #0;
#a = #1 & (|C|>=4 & c =in C | !(|S|>s));
#d = #f(1,2,3);
#e = #f(1,2,3);
#g = #1 & (|C|>=4 & c =in C | !(|S|>s) | #f(1,2,3));

// set_former	::=	"{" IDNUM (IN expression)? "|" condition "}"
S = {i in T | i>2 & i<16};
U = {j in {i in T | i>2 & i<16} | #1 & (|C|>=4 & c =in C | !(|S|>s) | #f(1,2,3))};

// return_stat	::=	RETURN (expression | condition)
return 1;
return #0;
return a+b;
return #a | #b;
return f(a);
return #g(1);
return f(g(1,2),[h(3,4),|h(6,7)|],5)-i([j(6),{33,22,11}]);
return #f(g(1,2),[h(3,4),|h(6,7)|],5)&#i([j(6),{33,22,11}]);