

#include "BUILTIN.h"
extern OBJ _APredicate_4(OBJ,OBJ);extern OBJ __APredicate_4;
extern OBJ _APredicate_5(OBJ,OBJ,OBJ);extern OBJ __APredicate_5;
extern OBJ _ASetByPredFilter_2(OBJ,OBJ);OBJ __ASetByPredFilter_2; /* | */
extern TUP2 _ASetByPredFilter_3(OBJ,OBJ);OBJ __ASetByPredFilter_3; /* partition */

extern OBJ _ASetByPredFilter_2(OBJ x1,OBJ x2) /* | */
{OBJ r;
 CPCLS(__APredicate_5,1);
 r=(*(OBJ(*)(OBJ,OBJ,OBJ))METHOD(__APredicate_5,2))(__APredicate_5,x2,x1);
 return r;}

extern TUP2 _ASetByPredFilter_3(OBJ x1,OBJ x2) /* partition */
{TUP2 r;
 CPCLS(__APredicate_4,1);
 CPCLS(__APredicate_5,2);
 CPCLS(x1,1);
 CPCLS(x2,1);
 {OBJ x4;
  r.c1=(*(OBJ(*)(OBJ,OBJ,OBJ))METHOD(__APredicate_5,2))(__APredicate_5,x2,x1);
  x4=(*(OBJ(*)(OBJ,OBJ))METHOD(__APredicate_4,1))(__APredicate_4,x1);
  r.c2=(*(OBJ(*)(OBJ,OBJ,OBJ))METHOD(__APredicate_5,2))(__APredicate_5,x2,x4);}
 return r;}
extern OBJ _ASetByPredFilter_3_c(OBJ x1,OBJ x2) /* partition */
{OBJ r;
 {TUP2 t=_ASetByPredFilter_3(x1,x2);
  PRD1(2,r);
  FLD1(r,1)=t.c1;
  FLD1(r,2)=t.c2;}
 return r;}

init_ASetByPredFilter()
{
 static int visited=0; if(visited) return; visited=1;
 init_ASetByPred();
 init_APredicate();
 CLS(2,_ASetByPredFilter_3_c,__ASetByPredFilter_3);
 CLS(2,_ASetByPredFilter_2,__ASetByPredFilter_2);}

