uniform half4 colorRed;uniform half4 colorGreen;uniform half unknownInput;bool a(){bool c=unknownInput>0.;int d=0;int e=0;if(c){++d;}else{++e;}{++d;}if(true^^c){++e;}else{++d;}if(c){++d;}else{++e;}{++d;}if(c){++d;}else{++e;}if(c){++d;}else{++e;}if(false==c){++e;}else{++d;}if(true!=c){++e;}else{++d;}if(c){++d;}else{++e;}if(c){++d;}else{++e;}{++d;}if(c^^true){++e;}else{++d;}if(c){++d;}else{++e;}{++d;}if(c){++d;}else{++e;}if(c){++d;}else{++e;}if(c==false){++e;}else{++d;}if(c!=true){++e;}else{++d;}if(c){++d;}else{++e;}float f=float(unknownInput+2.);float g=float(unknownInput*2.);if(f==g){++e;}else{++d;}bool(f=g)||true;if(f==g){++d;}else{++e;}return d==22&&e==0;}half4 main(float2 b){return a()?colorGreen:colorRed;}
