

#include "BUILTIN.h"
extern TUP2 _ASeqMapEnv_4(OBJ,OBJ,OBJ);extern OBJ __ASeqMapEnv_4;
extern OBJ __AIdeSet_2;
extern OBJ _AAcFun_9(OBJ,OBJ);extern OBJ __AAcFun_9;
extern OBJ _ASetByBST_44(OBJ,OBJ,OBJ);extern OBJ __ASetByBST_44;
extern OBJ _AAc_20(OBJ);extern OBJ __AAc_20;
extern OBJ _AAc_21(OBJ);extern OBJ __AAc_21;
extern OBJ _AAc_22(OBJ);extern OBJ __AAc_22;
extern OBJ _AAc_50(OBJ);extern OBJ __AAc_50;
extern OBJ _ASetByBSTConv_7(OBJ,OBJ);extern OBJ __ASetByBSTConv_7;

#include "Nat.h"
extern OBJ _ABSTree_57(OBJ,OBJ,OBJ);extern OBJ __ABSTree_57;
extern OBJ _ABSTree_61(OBJ,OBJ,OBJ);extern OBJ __ABSTree_61;

#include "Char.h"
extern OBJ __ASeq_6;
extern OBJ _ASeq_52(OBJ,OBJ);extern OBJ __ASeq_52;

#include "Array.h"

#include "Bitset.h"

#include "Int.h"
extern OBJ _AIde_13(OBJ,OBJ);extern OBJ __AIde_13;
extern OBJ _AIde_14(OBJ,OBJ);extern OBJ __AIde_14;
extern OBJ _AAn_7(OBJ,OBJ);extern OBJ __AAn_7;
extern OBJ __AOptimAn_24;
extern OBJ _ASeqMap_3(OBJ,OBJ);extern OBJ __ASeqMap_3;
extern OBJ _ASeqReduce_3(OBJ,OBJ,OBJ);extern OBJ __ASeqReduce_3;
extern OBJ _AOptimEvalFin_1(OBJ,OBJ,OBJ);OBJ __AOptimEvalFin_1; /* optimEvalFin */
extern OBJ _AOptimEvalFin_3(OBJ,OBJ);OBJ __AOptimEvalFin_3; /* thr */
extern OBJ _AOptimEvalFin_4(OBJ);OBJ __AOptimEvalFin_4; /* thr? */
extern OBJ _AOptimEvalFin_5(OBJ);OBJ __AOptimEvalFin_5; /* used */
extern OBJ _AOptimEvalFin_6(OBJ);OBJ __AOptimEvalFin_6; /* complexity */
extern OBJ _AOptimEvalFin_8(OBJ,OBJ,OBJ);OBJ __AOptimEvalFin_8; /* inh */
extern OBJ _AOptimEvalFin_9(OBJ);OBJ __AOptimEvalFin_9; /* inh? */
extern OBJ _AOptimEvalFin_10(OBJ);OBJ __AOptimEvalFin_10; /* this */
extern OBJ _AOptimEvalFin_11(OBJ);OBJ __AOptimEvalFin_11; /* unit */
extern OBJ _AOptimEvalFin_12(OBJ);OBJ __AOptimEvalFin_12; /* popts */
extern TUP2 _AOptimEvalFin_14(OBJ,OBJ,OBJ);OBJ __AOptimEvalFin_14; /* fin */
extern OBJ _AOptimEvalFin_15(OBJ);OBJ __AOptimEvalFin_15; /* incrComplexity */
extern OBJ _AOptimEvalFin_16(OBJ);OBJ __AOptimEvalFin_16; /* maxComplexity */
extern OBJ _AOptimEvalFin_17(OBJ,OBJ);OBJ __AOptimEvalFin_17; /* inclUsed */
extern TUP2 _AOptimEvalFin_18(OBJ,OBJ,OBJ);OBJ __AOptimEvalFin_18; /* finBinds */
extern TUP2 _AOptimEvalFin_19(OBJ,OBJ,OBJ);OBJ __AOptimEvalFin_19; /* finMatch */
OBJ __AOptimEvalFin_20; /* optimEvalFin'20 */

extern OBJ _AOptimEvalFin_1(OBJ x1,OBJ x2,OBJ x3) /* optimEvalFin */
{OBJ r;
 if(ISTGPRD(x3,2)){
  {OBJ x53=FLD(x3,4);
   CPPRD(x53,1);
   CPPRD(x3,2);
   {OBJ x54;OBJ x55;OBJ x56;OBJ x63;OBJ x57;
    x54=_AAc_20(x3);
    x55=_AAc_21(x3);
    x56=_AAc_22(x3);
    if(ISPRM(x56)){
     CPPRD(x55,1);
     x63=__AOptimAn_24;
    }else{
     {OBJ x60=FLD1(x56,3);
      COPY(x60,1);
      x63=x60;
      CPPRD(x55,1);}}
    PRD1(3,x57);FLD1(x57,1)=x1;FLD1(x57,2)=x2;FLD1(x57,3)=x55;
    if(ISPRD(x63)&&(ISTGPRD(x63,1))){
     {OBJ x66=FLD(x63,2);OBJ x67=FLD(x63,3);FLAG x_x63=EXPRD(x63,1);
      if(x_x63){
      }else{}
      CPPRD(__AOptimEvalFin_20,1);
      {TUP2 x68;
       x68=_AOptimEvalFin_14(x57,__AOptimEvalFin_20,x53);
       {OBJ x70=FLD1(x68.c1,1);
	if(EXPRD(x68.c1,1)){
	 FREE(FLD1(x68.c1,2),1);DSPRDF(x68.c1);
	}else{
	 FRPRD(x68.c1,1);}
	{OBJ x72;
	 if(x_x63){
	  RPRDF(x63,x72);FLD(x72,1)=x70;
	 }else{
	  FRPRD(x63,1);PRDF(3,1,x72);FLD(x72,1)=x70;FLD(x72,2)=x66;FLD(x72,3)=x67;}
	 PRD(4,2,r);FLD(r,2)=x55;FLD(r,3)=x54;FLD(r,4)=x68.c2;
	 FLD(r,1)=_AAn_7(x56,x72);}}}}
    }else{
     HLT("OptimAn at <unknown> : undefined selection maxIdeNo\'OptimAn:optimAn->nat");}}}
 }else{
  HLT("OptimEvalFin at <unknown> : missing else in optimEvalFin\'OptimEvalFin:popts**unit**dec->dec");}
 return r;}

extern OBJ _AOptimEvalFin_3(OBJ x1,OBJ x2) /* thr */
{OBJ r;
 PRD1(2,r);FLD1(r,1)=x1;FLD1(r,2)=x2;
 return r;}

extern OBJ _AOptimEvalFin_4(OBJ x1) /* thr? */
{OBJ r;
 FRPRD(x1,1);
 r=__ABUILTIN_5;
 return r;}

extern OBJ _AOptimEvalFin_5(OBJ x1) /* used */
{OBJ r;
 {OBJ x3=FLD1(x1,2);
  if(EXPRD(x1,1)){
   r=x3;
   DSPRDF(x1);
  }else{
   COPY(x3,1);
   r=x3;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _AOptimEvalFin_6(OBJ x1) /* complexity */
{OBJ r;
 {OBJ x2=FLD1(x1,1);
  if(EXPRD(x1,1)){
   r=x2;
   FREE(FLD1(x1,2),1);DSPRDF(x1);
  }else{
   r=x2;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _AOptimEvalFin_8(OBJ x1,OBJ x2,OBJ x3) /* inh */
{OBJ r;
 PRD1(3,r);FLD1(r,1)=x1;FLD1(r,2)=x2;FLD1(r,3)=x3;
 return r;}

extern OBJ _AOptimEvalFin_9(OBJ x1) /* inh? */
{OBJ r;
 FRPRD(x1,1);
 r=__ABUILTIN_5;
 return r;}

extern OBJ _AOptimEvalFin_10(OBJ x1) /* this */
{OBJ r;
 {OBJ x4=FLD1(x1,3);
  if(EXPRD(x1,1)){
   r=x4;
   FLD1(x1,3)=NIL;DSPRD(x1);
  }else{
   CPPRD(x4,1);
   r=x4;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _AOptimEvalFin_11(OBJ x1) /* unit */
{OBJ r;
 {OBJ x3=FLD1(x1,2);
  if(EXPRD(x1,1)){
   r=x3;
   FLD1(x1,2)=NIL;DSPRD(x1);
  }else{
   CPPRD(x3,1);
   r=x3;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _AOptimEvalFin_12(OBJ x1) /* popts */
{OBJ r;
 {OBJ x2=FLD1(x1,1);
  if(EXPRD(x1,1)){
   r=x2;
   FLD1(x1,1)=NIL;DSPRD(x1);
  }else{
   CPPRD(x2,1);
   r=x2;
   FRPRD(x1,1);}}
 return r;}

extern TUP2 _AOptimEvalFin_14(register OBJ x1,register OBJ x2,register OBJ x3) /* fin */
{TUP2 r;OBJ* p1=&r.c1;OBJ* p2=&r.c2;
 for(;;){
  if(ISTGPRD(x3,4)){
   {OBJ x575=FLD(x3,2);OBJ x576=FLD(x3,3);
    COPY(x575,1);CPPRD(x576,1);
    {OBJ x577;
     x577=_AAc_50(x3);
     PRD(3,4,*p2);FLD(*p2,1)=x577;FLD(*p2,2)=x575;
     x3=x576;p2=&FLD(*p2,3);continue;}}
  }else{
   if(ISTGPRD(x3,5)){
    {OBJ x583=FLD(x3,2);OBJ x584=FLD(x3,3);
     COPY(x583,1);CPPRD(x584,1);
     CPPRD(x1,1);
     {OBJ x585;TUP2 x587;TUP2 x590;
      x585=_AAc_50(x3);
      x587=_AOptimEvalFin_14(x1,x2,x584);
      x590=_AOptimEvalFin_18(x1,x587.c1,x583);
      if(ISPRM(x590.c2)){
       *p2=x587.c2;*p1=x590.c1;
       FREE(x585,1);
      }else{
       *p1=x590.c1;
       PRD(3,5,*p2);FLD(*p2,1)=x585;FLD(*p2,2)=x590.c2;FLD(*p2,3)=x587.c2;}}}
   }else{
    if(ISTGPRD(x3,6)){
     {OBJ x596=FLD(x3,2);OBJ x597=FLD(x3,3);OBJ x598=FLD(x3,4);
      CPPRD(x596,1);COPY(x597,1);CPPRD(x598,1);
      CPPRD(x1,1);
      CPCLS(__AOptimEvalFin_19,1);
      {OBJ x599;OBJ x600;
       x599=(*(OBJ(*)(OBJ,OBJ))METHOD(__AOptimEvalFin_19,1))(__AOptimEvalFin_19,x1);
       x600=_AAc_50(x3);
       {OBJ x601=FLD1(x1,1);
	CPPRD(x601,1);
	COPY(x597,1);
	CPPRD(x598,1);
	{TUP2 x605;OBJ x607;TUP2 x609;OBJ x627;
	 x605=_AOptimEvalFin_14(x1,x2,x598);
	 CPPRD(x605.c2,1);
	 x607=_AAcFun_9(x601,x605.c2);
	 x609=_ASeqMapEnv_4(x599,x605.c1,x597);
	 if(ISTGPRM(x607,1)){
	  COPY(x609.c2,1);
	  {OBJ x611;OBJ x612;
	   x611=_ASeq_52(x609.c2,__ANat_5);
	   ANat_76(x611,__ANat_8,x612);
	   if(ISTGPRM(x612,1)){
	    {OBJ x614=FLD1(x609.c1,2);
	     COPY(x614,1);
	     {OBJ x617;
	      if(ISPRM(x609.c2)){
	       HLT("Seq at <unknown> : undefined selection ft\'Seq:seq->data");
	      }else{
	       {OBJ x615=FLD1(x609.c2,1);
		CPPRD(x615,1);
		x617=x615;}}
	      {OBJ x619=FLD1(x617,2);
	       if(EXPRD(x617,1)){
		FLD1(x617,2)=NIL;DSPRD(x617);
	       }else{
		COPY(x619,1);
		FRPRD(x617,1);}
	       CPCLS(__AAc_21,1);
	       CPCLS(__AIde_14,2);
	       {OBJ x621;OBJ x622;OBJ x623;
		x621=_ASeqMap_3(__AAc_21,x619);
		x622=_ASetByBSTConv_7(__AIde_14,x621);
		x623=_ASetByBST_44(__AIde_14,x614,x622);
		if(ISPRM(x623)){
		 x627=__ABUILTIN_5;
		}else{
		 if(EXPRD(x623,1)){
		  DSPRD(x623);
		 }else{
		  DCPRD(x623,1);}
		 x627=__ABUILTIN_3;}}}}}
	   }else{
	    x627=__ABUILTIN_3;}}
	 }else{
	  x627=__ABUILTIN_3;}
	 if(ISTGPRM(x627,1)){
	  FRPRD(x596,1);
	  FREE(x597,1);
	  FRPRD(x598,1);
	  FREE(x600,1);
	  FRPRD(x605.c2,1);
	  {OBJ x630;
	   if(ISPRM(x609.c2)){
	    HLT("Seq at <unknown> : undefined selection ft\'Seq:seq->data");
	   }else{
	    {OBJ x628=FLD1(x609.c2,1);
	     if(EXPRD(x609.c2,1)){
	      x630=x628;
	      FREE(FLD1(x609.c2,2),1);DSPRDF(x609.c2);
	     }else{
	      CPPRD(x628,1);
	      x630=x628;
	      FRPRD(x609.c2,1);}}}
	   {OBJ x633=FLD1(x630,3);
	    if(EXPRD(x630,1)){
	     *p1=x609.c1;*p2=x633;
	     FLD1(x630,3)=NIL;DSPRD(x630);
	    }else{
	     CPPRD(x633,1);
	     *p1=x609.c1;*p2=x633;
	     FRPRD(x630,1);}}}
	 }else{
	  {OBJ x638;OBJ x634;OBJ x635;OBJ x636;OBJ x639;OBJ x640;OBJ x641;OBJ x642;
	   if(ISTGPRD(x598,0)){
	    if(EXPRD(x598,1)){
	     FREE(FLD(x598,1),1);DSPRDF(x598);
	    }else{
	     DCPRD(x598,1);}
	    CPPRD(x596,1);
	    x638=__ABUILTIN_5;
	   }else{
	    FRPRD(x598,1);
	    CPPRD(x596,1);
	    x638=__ABUILTIN_3;}
	   PRD(4,6,x634);FLD(x634,1)=x600;FLD(x634,2)=x596;FLD(x634,3)=x609.c2;FLD(x634,4)=x605.c2;
	   x635=_AOptimEvalFin_17(x596,x609.c1);
	   x636=_ASeq_52(x597,__ANat_5);
	   x639=_AOptimEvalFin_15(x635);
	   if(ISTGPRM(x638,1)){
	    x640=x636;
	   }else{
	    ANat_2(x636,x640);}
	   ANat_81(x640,__ANat_9,x641);
	   if(ISTGPRM(x641,1)){
	    *p2=x634;
	    *p1=_AOptimEvalFin_15(x639);
	   }else{
	    *p2=x634;*p1=x639;}}}}}}}
    }else{
     if(ISTGPRD(x3,3)){
      {OBJ x644=FLD(x3,2);OBJ x645=FLD(x3,3);
       CPPRD(x644,1);COPY(x645,1);
       if(ISTGPRD(x644,2)){
	{OBJ x647=FLD(x644,2);
	 CPPRD(x647,1);
	 if(ISTGPRD(x647,0)){
	  if(EXPRD(x644,1)){
	   DSPRD(x644);
	  }else{
	   DCPRD(x644,1);}
	  {OBJ x652=FLD1(x1,3);
	   if(EXPRD(x1,1)){
	    FLD1(x1,3)=NIL;DSPRD(x1);
	   }else{
	    CPPRD(x652,1);
	    FRPRD(x1,1);}
	   {OBJ x653;OBJ x656;OBJ x657;
	    x653=_AIde_13(x647,x652);
	    if(ISTGPRM(x653,1)){
	     {OBJ x655;
	      if(EXPRD(x2,1)){
	       CPCLS(__AOptimEvalFin_17,1);
	       RSOME(x2,x656);FLD1(x656,1)=__ANat_59;
	      }else{
	       x655=FLD1(x2,2);COPY(x655,1);
	       CPCLS(__AOptimEvalFin_17,1);
	       FRPRD(x2,1);PRD1(2,x656);FLD1(x656,1)=__ANat_59;FLD1(x656,2)=x655;}}
	    }else{
	     CPCLS(__AOptimEvalFin_17,1);
	     x656=_AOptimEvalFin_15(x2);}
	    *p1=_ASeqReduce_3(__AOptimEvalFin_17,x656,x645);
	    *p2=x3;}}
	 }else{
	  if(EXPRD(x647,1)){
	   DSPRDF(x647);
	  }else{
	   DCPRD(x647,1);}
	  FRPRD(x1,1);
	  CPCLS(__AOptimEvalFin_17,1);
	  {OBJ x659;OBJ x660;
	   x659=_AOptimEvalFin_15(x2);
	   x660=_AOptimEvalFin_17(x644,x659);
	   *p1=_ASeqReduce_3(__AOptimEvalFin_17,x660,x645);
	   *p2=x3;}}}
       }else{
	FRPRD(x1,1);
	CPCLS(__AOptimEvalFin_17,1);
	{OBJ x662;OBJ x663;
	 x662=_AOptimEvalFin_15(x2);
	 x663=_AOptimEvalFin_17(x644,x662);
	 *p1=_ASeqReduce_3(__AOptimEvalFin_17,x663,x645);
	 *p2=x3;}}}
     }else{
      FRPRD(x1,1);
      CPPRD(x3,1);
      *p1=_AOptimEvalFin_17(x3,x2);
      *p2=x3;}}}}
  break;}
 return r;}
extern OBJ _AOptimEvalFin_14_c(OBJ x1,OBJ x2,OBJ x3) /* fin */
{OBJ r;
 {TUP2 t=_AOptimEvalFin_14(x1,x2,x3);
  PRD1(2,r);
  FLD1(r,1)=t.c1;
  FLD1(r,2)=t.c2;}
 return r;}

extern OBJ _AOptimEvalFin_15(OBJ x1) /* incrComplexity */
{OBJ r;
 {OBJ x10=FLD1(x1,1);OBJ x11=FLD1(x1,2);
  COPY(x11,1);
  {OBJ x12;
   ANat_77(x10,__ANat_59,x12);
   if(ISTGPRM(x12,1)){
    if(EXPRD(x1,1)){
     FREE(FLD1(x1,2),1);DSPRDF(x1);
    }else{
     DCPRD(x1,1);}
    {
     PRD1(2,r);FLD1(r,2)=x11;
     ANat_2(x10,FLD1(r,1));}
   }else{
    FREE(x11,1);
    r=x1;}}}
 return r;}

extern OBJ _AOptimEvalFin_16(OBJ x1) /* maxComplexity */
{OBJ r;
 {OBJ x9;
  if(EXPRD(x1,1)){
   RSOME(x1,r);FLD1(r,1)=__ANat_59;
  }else{
   x9=FLD1(x1,2);COPY(x9,1);
   FRPRD(x1,1);PRD1(2,r);FLD1(r,1)=__ANat_59;FLD1(r,2)=x9;}}
 return r;}

extern OBJ _AOptimEvalFin_17(OBJ x1,OBJ x2) /* inclUsed */
{OBJ r;
 if(ISTGPRD(x1,2)){
  {OBJ x42=FLD(x1,2);
   if(EXPRD(x1,1)){
    FREE(FLD(x1,1),1);DSPRDF(x1);
   }else{
    CPPRD(x42,1);
    FRPRD(x1,1);}
   if(ISTGPRD(x42,1)){
    {OBJ x44;OBJ x45=FLD1(x2,2);
     if(EXPRD(x2,1)){
      CPCLS(__AIde_14,1);
      {
       RSOME(x2,r);
       FLD1(r,2)=_ABSTree_57(__AIde_14,x42,x45);}
     }else{
      x44=FLD1(x2,1);COPY(x45,1);
      CPCLS(__AIde_14,1);
      {
       FRPRD(x2,1);PRD1(2,r);FLD1(r,1)=x44;
       FLD1(r,2)=_ABSTree_57(__AIde_14,x42,x45);}}}
   }else{
    if(EXPRD(x42,1)){
     DSPRDF(x42);
    }else{
     DCPRD(x42,1);}
    r=x2;}}
 }else{
  FRPRD(x1,1);
  r=x2;}
 return r;}

extern TUP2 _AOptimEvalFin_18(OBJ x1,OBJ x2,OBJ x3) /* finBinds */
{TUP2 r;
 if(ISPRM(x3)){
  FRPRD(x1,1);
  r.c1=x2;r.c2=__ASeq_6;
 }else{
  {OBJ x62=FLD1(x3,1);OBJ x63=FLD1(x3,2);FLAG x_x3=EXPRD(x3,1);
   if(x_x3){
   }else{
    CPPRD(x62,1);COPY(x63,1);}
   if(ISTGPRD(x62,2)){
    {OBJ x67=FLD(x62,4);
     CPPRD(x67,1);
     CPPRD(x1,1);
     CPPRD(x62,2);
     {OBJ x68;OBJ x69;OBJ x70;TUP2 x72;
      x68=_AAc_22(x62);
      x69=_AAc_21(x62);
      x70=_AAc_20(x62);
      x72=_AOptimEvalFin_18(x1,x2,x63);
      {OBJ x75=FLD1(x72.c1,2);
       COPY(x75,1);
       CPPRD(x69,1);
       CPCLS(__AIde_14,1);
       {OBJ x76;
	x76=_ABSTree_61(__AIde_14,x69,x75);
	if(ISTGPRM(x76,1)){
	 {TUP2 x79;OBJ x80;
	  x79=_AOptimEvalFin_14(x1,x72.c1,x67);r.c1=x79.c1;
	  PRD(4,2,x80);FLD(x80,1)=x68;FLD(x80,2)=x69;FLD(x80,3)=x70;FLD(x80,4)=x79.c2;
	  if(x_x3){
	   RSOME(x3,r.c2);FLD1(r.c2,1)=x80;FLD1(r.c2,2)=x72.c2;
	  }else{
	   FRPRD(x3,1);PRD1(2,r.c2);FLD1(r.c2,1)=x80;FLD1(r.c2,2)=x72.c2;}}
	}else{
	 if(x_x3){
	  DSPRDF(x3);
	 }else{
	  FRPRD(x3,1);}
	 r.c1=x72.c1;r.c2=x72.c2;
	 FRPRD(x1,1);
	 FRPRD(x67,1);
	 FREE(x68,1);
	 FRPRD(x69,1);}}}}}
   }else{
    HLT("OptimEvalFin at <119,7-14> : missing else in finBinds\'OptimEvalFin:inh**thr**seq->thr**seq");}}}
 return r;}
extern OBJ _AOptimEvalFin_18_c(OBJ x1,OBJ x2,OBJ x3) /* finBinds */
{OBJ r;
 {TUP2 t=_AOptimEvalFin_18(x1,x2,x3);
  PRD1(2,r);
  FLD1(r,1)=t.c1;
  FLD1(r,2)=t.c2;}
 return r;}

extern TUP2 _AOptimEvalFin_19(OBJ x1,OBJ x2,OBJ x3) /* finMatch */
{TUP2 r;
 {OBJ x20;OBJ x21;OBJ x22=FLD1(x3,3);
  if(EXPRD(x3,1)){
   {
    RSOME(x3,r.c2);
    {TUP2 t=_AOptimEvalFin_14(x1,x2,x22);
     r.c1=t.c1;
     FLD1(r.c2,3)=t.c2;}}
  }else{
   x20=FLD1(x3,1);x21=FLD1(x3,2);CPPRD(x20,1);COPY(x21,1);CPPRD(x22,1);
   {
    FRPRD(x3,1);PRD1(3,r.c2);FLD1(r.c2,1)=x20;FLD1(r.c2,2)=x21;
    {TUP2 t=_AOptimEvalFin_14(x1,x2,x22);
     r.c1=t.c1;
     FLD1(r.c2,3)=t.c2;}}}}
 return r;}
extern OBJ _AOptimEvalFin_19_c(OBJ x1,OBJ x2,OBJ x3) /* finMatch */
{OBJ r;
 {TUP2 t=_AOptimEvalFin_19(x1,x2,x3);
  PRD1(2,r);
  FLD1(r,1)=t.c1;
  FLD1(r,2)=t.c2;}
 return r;}


init_AOptimEvalFin()
{
 static int visited=0; if(visited) return; visited=1;
 init_ASeqMapEnv();
 init_AIdeSet();
 init_AAcFun();
 init_ASetByBST();
 init_AAc();
 init_ASetByBSTFilter();
 init_APreparedOptions();
 init_ASetByBSTConv();
 init_ANat();
 init_ABSTree();
 init_AOcOptions();
 init_ATree();
 init_AChar();
 init_ABSTreeConv();
 init_ASeq();
 init_AMap();
 init_ACom();
 init_AArray();
 init_AStream();
 init_ABitset();
 init_AVoid();
 init_AString();
 init_AFile();
 init_AInt();
 init_AOption();
 init_ANatMap();
 init_AIde();
 init_AAn();
 init_ATypeAn();
 init_ASourceAn();
 init_AOptimAn();
 init_ATransAn();
 init_APragmaAn();
 init_AStore();
 init_AFormat();
 init_AFmt();
 init_ASet();
 init_APair();
 init_AIdeMap();
 init_ASeqMap();
 init_ASeqReduce();
 CLS(3,_AOptimEvalFin_19_c,__AOptimEvalFin_19);
 CLS(3,_AOptimEvalFin_18_c,__AOptimEvalFin_18);
 CLS(2,_AOptimEvalFin_17,__AOptimEvalFin_17);
 CLS(1,_AOptimEvalFin_16,__AOptimEvalFin_16);
 CLS(1,_AOptimEvalFin_15,__AOptimEvalFin_15);
 CLS(3,_AOptimEvalFin_14_c,__AOptimEvalFin_14);
 CLS(1,_AOptimEvalFin_12,__AOptimEvalFin_12);
 CLS(1,_AOptimEvalFin_11,__AOptimEvalFin_11);
 CLS(1,_AOptimEvalFin_10,__AOptimEvalFin_10);
 CLS(1,_AOptimEvalFin_9,__AOptimEvalFin_9);
 CLS(3,_AOptimEvalFin_8,__AOptimEvalFin_8);
 CLS(1,_AOptimEvalFin_6,__AOptimEvalFin_6);
 CLS(1,_AOptimEvalFin_5,__AOptimEvalFin_5);
 CLS(1,_AOptimEvalFin_4,__AOptimEvalFin_4);
 CLS(2,_AOptimEvalFin_3,__AOptimEvalFin_3);
 CLS(3,_AOptimEvalFin_1,__AOptimEvalFin_1);
 COPY(__AIdeSet_2,1);
 PRD1(2,__AOptimEvalFin_20);FLD1(__AOptimEvalFin_20,1)=__ANat_5;FLD1(__AOptimEvalFin_20,2)=__AIdeSet_2;}

