

#include "BUILTIN.h"
extern OBJ _ASeqSort_2(OBJ,OBJ);extern OBJ __ASeqSort_2;
extern OBJ _ASeqMap_3(OBJ,OBJ);extern OBJ __ASeqMap_3;
extern OBJ _ASeqReduce_3(OBJ,OBJ,OBJ);extern OBJ __ASeqReduce_3;
extern OBJ _ASeqZip_4(OBJ,OBJ,OBJ);extern OBJ __ASeqZip_4;
extern OBJ _APreparedOptions_19(OBJ);extern OBJ __APreparedOptions_19;
extern TUP2 _ASeqMapEnv_4(OBJ,OBJ,OBJ);extern OBJ __ASeqMapEnv_4;
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 _AAc_68(OBJ);extern OBJ __AAc_68;
extern OBJ __AIdeBag_2;
extern OBJ __AIc_17;
extern OBJ __AIc_19;
extern OBJ __AIc_21;
extern OBJ _AIc_89(OBJ);extern OBJ __AIc_89;
extern OBJ _ATypeAnFun_4(OBJ);extern OBJ __ATypeAnFun_4;
extern OBJ _ATypeAnFun_8(OBJ,OBJ);extern OBJ __ATypeAnFun_8;
extern OBJ _ATypeAnFun_9(OBJ,OBJ);extern OBJ __ATypeAnFun_9;
extern OBJ __AIdeSet_2;
extern OBJ _ATransAnFun_3(OBJ,OBJ);extern OBJ __ATransAnFun_3;

#include "Nat.h"
extern OBJ _ASourceAnFun_1(OBJ,OBJ);extern OBJ __ASourceAnFun_1;
extern OBJ __ASeq_6;
extern OBJ _ASeq_24(OBJ,OBJ,OBJ);extern OBJ __ASeq_24;
extern OBJ _ASeq_26(OBJ,OBJ);extern OBJ __ASeq_26;
extern OBJ _ASeq_34(OBJ);extern OBJ __ASeq_34;
extern OBJ _ASeq_38(OBJ);extern OBJ __ASeq_38;
extern OBJ _ASeq_52(OBJ,OBJ);extern OBJ __ASeq_52;
extern OBJ _AAcFun_2(OBJ);extern OBJ __AAcFun_2;
extern OBJ _AAcFun_10(OBJ,OBJ);extern OBJ __AAcFun_10;
extern OBJ __AIde_6;
extern OBJ _AIde_13(OBJ,OBJ);extern OBJ __AIde_13;
extern OBJ _AIde_14(OBJ,OBJ);extern OBJ __AIde_14;
extern OBJ __ABuiltin_1;
extern OBJ __ABuiltin_16;
extern OBJ _ABuiltin_18(OBJ);extern OBJ __ABuiltin_18;
extern OBJ _ATransType_2(OBJ,OBJ);extern OBJ __ATransType_2;

#include "Bitset.h"
extern OBJ _AMap_31(OBJ,OBJ,OBJ,OBJ);extern OBJ __AMap_31;
extern OBJ _AMap_33(OBJ,OBJ,OBJ);extern OBJ __AMap_33;
extern OBJ _ASetByBST_41(OBJ,OBJ,OBJ);extern OBJ __ASetByBST_41;
extern OBJ _ABSTree_57(OBJ,OBJ,OBJ);extern OBJ __ABSTree_57;

#include "Array.h"

#include "Char.h"
extern OBJ _ABag_40(OBJ,OBJ,OBJ);extern OBJ __ABag_40;
extern OBJ _ABag_42(OBJ,OBJ,OBJ);extern OBJ __ABag_42;
extern OBJ _ABag_43(OBJ,OBJ,OBJ);extern OBJ __ABag_43;
extern OBJ _ABag_44(OBJ,OBJ,OBJ);extern OBJ __ABag_44;
extern OBJ _ABag_45(OBJ,OBJ,OBJ);extern OBJ __ABag_45;
extern OBJ _ABag_48(OBJ,OBJ,OBJ);extern OBJ __ABag_48;
extern OBJ _ABag_49(OBJ,OBJ,OBJ);extern OBJ __ABag_49;
extern OBJ _ABagConv_6(OBJ,OBJ);extern OBJ __ABagConv_6;

#include "Int.h"
extern OBJ _AStore_4(OBJ);extern OBJ __AStore_4;
extern OBJ __AStore_12;
extern OBJ _AStore_17(OBJ);extern OBJ __AStore_17;
extern OBJ __AStore_22;
extern OBJ __AStore_32;
extern OBJ __ASourceAn_2;
extern OBJ __ASourceAn_28;
extern OBJ __ASourceAn_30;
extern OBJ __APair_2;

#include "Denotation.h"
extern OBJ __AOptimAn_24;
extern OBJ __ATransAn_8;
extern OBJ __AIdeMap_3;
extern OBJ _AOcOptions_14(OBJ,OBJ);extern OBJ __AOcOptions_14;
extern TUP2 _ATransDec_1(OBJ,OBJ,OBJ);OBJ __ATransDec_1; /* transDec */
extern OBJ _ATransDec_2(OBJ,OBJ,OBJ);OBJ __ATransDec_2; /* transImportDec */
extern OBJ _ATransDec_4(OBJ,OBJ,OBJ);OBJ __ATransDec_4; /* syn */
extern OBJ _ATransDec_5(OBJ);OBJ __ATransDec_5; /* syn? */
extern OBJ _ATransDec_6(OBJ);OBJ __ATransDec_6; /* stms */
extern OBJ _ATransDec_7(OBJ);OBJ __ATransDec_7; /* globals */
extern OBJ _ATransDec_8(OBJ);OBJ __ATransDec_8; /* used */
extern OBJ _ATransDec_10(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __ATransDec_10; /* inh */
extern OBJ _ATransDec_11(OBJ);OBJ __ATransDec_11; /* inh? */
extern OBJ _ATransDec_12(OBJ);OBJ __ATransDec_12; /* origin */
extern OBJ _ATransDec_13(OBJ);OBJ __ATransDec_13; /* after */
extern OBJ _ATransDec_14(OBJ);OBJ __ATransDec_14; /* delayed */
extern OBJ _ATransDec_15(OBJ);OBJ __ATransDec_15; /* stores */
extern OBJ _ATransDec_16(OBJ);OBJ __ATransDec_16; /* target */
extern OBJ _ATransDec_17(OBJ);OBJ __ATransDec_17; /* this */
extern OBJ _ATransDec_18(OBJ);OBJ __ATransDec_18; /* unit */
extern OBJ _ATransDec_19(OBJ);OBJ __ATransDec_19; /* popts */
extern OBJ _ATransDec_20(OBJ,OBJ,OBJ);OBJ __ATransDec_20; /* newInh */
extern OBJ _ATransDec_21(OBJ,OBJ);OBJ __ATransDec_21; /* target,1 */
extern OBJ _ATransDec_22(OBJ,OBJ,OBJ);OBJ __ATransDec_22; /* store */
extern OBJ _ATransDec_23(OBJ,OBJ,OBJ);OBJ __ATransDec_23; /* delay */
extern OBJ _ATransDec_24(OBJ,OBJ);OBJ __ATransDec_24; /* after,1 */
extern OBJ _ATransDec_25(OBJ,OBJ);OBJ __ATransDec_25; /* origin,1 */
extern OBJ _ATransDec_26(OBJ,OBJ);OBJ __ATransDec_26; /* store,1 */
extern OBJ _ATransDec_27(OBJ);OBJ __ATransDec_27; /* newSyn */
extern OBJ _ATransDec_28(OBJ,OBJ);OBJ __ATransDec_28; /* gen */
extern OBJ _ATransDec_29(OBJ,OBJ);OBJ __ATransDec_29; /* use */
extern OBJ _ATransDec_30(OBJ,OBJ);OBJ __ATransDec_30; /* useGlobal */
extern OBJ _ATransDec_31(OBJ,OBJ,OBJ);OBJ __ATransDec_31; /* genPos */
extern OBJ _ATransDec_32(OBJ,OBJ);OBJ __ATransDec_32; /* trans */
extern OBJ _ATransDec_33(OBJ,OBJ);OBJ __ATransDec_33; /* lazyApply? */
extern OBJ _ATransDec_34(OBJ,OBJ);OBJ __ATransDec_34; /* sortBinds */
extern TUP2 _ATransDec_35(OBJ,OBJ,OBJ);OBJ __ATransDec_35; /* transBlock */
extern OBJ _ATransDec_36(OBJ,OBJ,OBJ);OBJ __ATransDec_36; /* fuseBlocks */
extern OBJ _ATransDec_37(OBJ,OBJ);OBJ __ATransDec_37; /* delayBind */
extern TUP2 _ATransDec_38(OBJ,OBJ,OBJ);OBJ __ATransDec_38; /* genCopyOrFree */
extern TUP2 _ATransDec_39(OBJ,OBJ);OBJ __ATransDec_39; /* genVar */
extern TUP3 _ATransDec_40(OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __ATransDec_40; /* transMatches */
extern OBJ _ATransDec_41(OBJ,OBJ,OBJ);OBJ __ATransDec_41; /* joinUsage */
extern OBJ _ATransDec_42(OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __ATransDec_42; /* join */
extern OBJ _ATransDec_43(OBJ,OBJ);OBJ __ATransDec_43; /* genFree */
extern OBJ _ATransDec_44(OBJ,OBJ);OBJ __ATransDec_44; /* genCopy */
extern TUP4 _ATransDec_45(OBJ,OBJ,OBJ);OBJ __ATransDec_45; /* transMatch */
extern TUP2 _ATransDec_46(OBJ,OBJ,OBJ,OBJ);OBJ __ATransDec_46; /* genSel */
extern OBJ _ATransDec_47(OBJ,OBJ,OBJ);OBJ __ATransDec_47; /* checkSharedSel */
extern OBJ _ATransDec_48(OBJ,OBJ,OBJ);OBJ __ATransDec_48; /* genOrigin */
extern OBJ _ATransDec_49(OBJ,OBJ);OBJ __ATransDec_49; /* genStore */
extern OBJ _ATransDec_51(OBJ,OBJ,OBJ);OBJ __ATransDec_51; /* resultStores */
extern OBJ _ATransDec_52(OBJ,OBJ);OBJ __ATransDec_52; /* genGlobalCopy */
extern OBJ _ATransDec_53(OBJ,OBJ);OBJ __ATransDec_53; /* genStoreP */
extern OBJ _ATransDec_54(OBJ);OBJ __ATransDec_54; /* Ksome */
extern OBJ _ATransDec_55(OBJ);OBJ __ATransDec_55; /* icMode */
extern OBJ _ATransDec_56(OBJ);OBJ __ATransDec_56; /* lazyApply?'56 */
extern OBJ _ATransDec_57(OBJ,OBJ,OBJ);OBJ __ATransDec_57; /* sortBinds'57 */
OBJ __ATransDec_58; /* trans'58 */
OBJ __ATransDec_59; /* trans'59 */
OBJ __ATransDec_60; /* trans'60 */
OBJ __ATransDec_61; /* trans'61 */
OBJ __ATransDec_62; /* resultStores'62 */
OBJ __ATransDec_63; /* resultStores'63 */
extern OBJ _ATransDec_64(OBJ);OBJ __ATransDec_64; /* transDec'64 */
OBJ __ATransDec_65; /* transDec'65 */
extern OBJ _ATransDec_66(OBJ);OBJ __ATransDec_66; /* transDec'66 */
extern OBJ _ATransDec_67(OBJ);OBJ __ATransDec_67; /* transImportDec'67 */

extern TUP2 _ATransDec_1(OBJ x1,OBJ x2,OBJ x3) /* transDec */
{TUP2 r;
 if(ISTGPRD(x3,2)){
  {OBJ x658=FLD(x3,4);
   CPPRD(x658,1);
   CPPRD(x3,3);
   {OBJ x659;OBJ x660;OBJ x661;OBJ x662;
    x659=_ATypeAnFun_4(x3);
    x660=_AAc_20(x3);
    x661=_AAc_21(x3);
    x662=_AAc_22(x3);
    if(ISTGPRD(x658,1)){
     {OBJ x664=FLD(x658,2);
      if(EXPRD(x658,1)){
       FREE(FLD(x658,1),1);DSPRDF(x658);
      }else{
       CPPRD(x664,1);
       FRPRD(x658,1);}
      FRPRD(x1,1);
      if(ISPRM(x662)){
       HLT("SourceAn at <unknown> : undefined selection symbol\'SourceAn:sourceAn->denotation");
      }else{
       {OBJ x666=FLD1(x662,2);
	if(EXPRD(x662,1)){
	 FLD1(x662,2)=NIL;DSPRD(x662);
	}else{
	 COPY(x666,1);
	 FRPRD(x662,1);}
	{OBJ x671;
	 switch(TGPRM(x660)){
	  case 2:
	   x671=__AIc_17;break;
	  case 0:
	   x671=__AIc_21;break;
	  default: 
	   x671=__AIc_19;}
	 if(ISPRD(x666)&&(ISTGPRD(x666,3))){
	  {OBJ x672=FLD(x666,1);
	   if(EXPRD(x666,1)){
	    DSPRDF(x666);
	   }else{
	    CPPRD(x672,1);
	    FRPRD(x666,1);}
	   COPY(__AIdeSet_2,1);
	   {OBJ x673;
	    x673=_ATransType_2(x2,x659);
	    PRD(5,4,r.c1);FLD(r.c1,1)=x661;FLD(r.c1,2)=x673;FLD(r.c1,3)=x671;FLD(r.c1,4)=x672;FLD(r.c1,5)=x664;
	    r.c2=__AIdeSet_2;}}
	 }else{
	  HLT("SourceAn at <unknown> : undefined selection symbol\'SourceAn:sourceAn->denotation");}}}}}
    }else{
     if(ISPRM(x662)){
      HLT("SourceAn at <unknown> : undefined selection symbol\'SourceAn:sourceAn->denotation");
     }else{
      {OBJ x676=FLD1(x662,2);OBJ x677=FLD1(x662,3);
       if(EXPRD(x662,1)){
	FLD1(x662,2)=NIL;FLD1(x662,3)=NIL;DSPRD(x662);
       }else{
	COPY(x676,1);COPY(x677,1);
	FRPRD(x662,1);}
       {OBJ x681;
	switch(TGPRM(x660)){
	 case 2:
	  x681=__AIc_17;break;
	 case 0:
	  x681=__AIc_21;break;
	 default: 
	  x681=__AIc_19;}
	if(ISPRD(x676)&&(ISTGPRD(x676,3))){
	 {OBJ x682=FLD(x676,1);
	  if(EXPRD(x676,1)){
	   DSPRDF(x676);
	  }else{
	   CPPRD(x682,1);
	   FRPRD(x676,1);}
	  if(ISTGPRD(x658,4)){
	   {OBJ x685=FLD(x658,2);OBJ x686=FLD(x658,3);
	    COPY(x685,2);CPPRD(x686,1);
	    CPCLS(__AAc_21,1);
	    {OBJ x687;OBJ x688;
	     x687=_AAc_50(x658);
	     x688=_ASeqMap_3(__AAc_21,x685);
	     if(ISPRD(x677)&&(ISTGPRD(x677,1))){
	      {OBJ x690=FLD(x677,2);OBJ x691=FLD(x677,3);
	       if(EXPRD(x677,1)){
		DSPRDF(x677);
	       }else{
		FRPRD(x677,1);}
	       CPPRD(x2,1);
	       CPPRD(x661,1);
	       COPY(x688,1);
	       CPCLS(__ATransDec_26,1);
	       CPCLS(__ATransDec_49,1);
	       CPCLS(__ATransDec_52,1);
	       CPCLS(__ATransDec_53,1);
	       CPCLS(__ATransDec_64,1);
	       CPPRD(__AIde_6,1);
	       CPPRD(__APair_2,1);
	       COPY(__AIdeMap_3,3);
	       COPY(__AIdeBag_2,1);
	       {OBJ x692;OBJ x693;OBJ x694;OBJ x695;OBJ x696;OBJ x697;OBJ x698;OBJ x699;OBJ x700;OBJ x701;OBJ x702;OBJ x703;OBJ x704;OBJ x705;OBJ x706;OBJ x707;OBJ x708;
		x692=_ATransDec_51(x2,x659,x690);
		COPY(x692,2);
		ANat_2(x691,x693);
		x694=_ASeq_52(x692,__ANat_5);
		ANat_4(x694,x695);
		ANat_61(x693,x695,x696);
		x697=_ASeq_24(x693,x696,__ATransDec_64);
		x698=_ASeqMap_3(__AIde_6,x697);
		COPY(x698,2);
		x699=_ASeqZip_4(__APair_2,x698,x692);
		PRD1(8,x700);FLD1(x700,1)=x1;FLD1(x700,2)=x2;FLD1(x700,3)=x661;FLD1(x700,4)=x698;FLD1(x700,5)=__AIdeMap_3;FLD1(x700,6)=__AIdeMap_3;FLD1(x700,7)=__AIdeBag_2;FLD1(x700,8)=__AIdeMap_3;
		x701=_ASeqReduce_3(__ATransDec_49,x700,x685);
		x702=_ASeqReduce_3(__ATransDec_53,x701,x699);
		CPPRD(x702,4);
		x703=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_26,1))(__ATransDec_26,x702);
		x704=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_52,1))(__ATransDec_52,x702);
		x705=_ATransDec_32(x702,x686);
		x706=_ASeqMap_3(x703,x688);
		x707=_ATransDec_31(x702,x687,x705);
		PRD(2,8,x708);FLD(x708,1)=x706;FLD(x708,2)=x692;
		{OBJ x709=FLD1(x707,1);OBJ x710=FLD1(x707,2);OBJ x711=FLD1(x707,3);
		 if(EXPRD(x707,1)){
		  r.c2=x710;
		  DSPRDF(x707);
		 }else{
		  COPY(x709,1);COPY(x710,1);COPY(x711,1);
		  r.c2=x710;
		  FRPRD(x707,1);}
		 COPY(x688,1);
		 {TUP2 x713;OBJ x715;OBJ x716;OBJ x717;OBJ x718;
		  x713=_ATransDec_38(x702,x709,x688);
		  x715=_ASeqMap_3(x704,x713.c1);
		  x716=_ASeq_26(x713.c2,x711);
		  x717=_ASeq_26(x715,x716);
		  PRD(2,13,x718);FLD(x718,1)=__ASeq_6;FLD(x718,2)=x717;
		  PRD(7,2,r.c1);FLD(r.c1,1)=x661;FLD(r.c1,2)=x708;FLD(r.c1,3)=x681;FLD(r.c1,4)=x682;FLD(r.c1,5)=x688;FLD(r.c1,6)=x698;FLD(r.c1,7)=x718;}}}}
	     }else{
	      HLT("OptimAn at <unknown> : undefined selection maxIdeNo\'OptimAn:optimAn->nat");}}}
	  }else{
	   FREE(x677,1);
	   CPPRD(x2,1);
	   CPPRD(x661,2);
	   CPCLS(__ATransDec_52,1);
	   COPY(__AIdeMap_3,3);
	   COPY(__AIdeBag_2,1);
	   {OBJ x720;OBJ x721;OBJ x722;OBJ x723;OBJ x724;
	    PRD1(2,x720);FLD1(x720,1)=x661;FLD1(x720,2)=__ASeq_6;
	    x721=_ATransType_2(x2,x659);
	    PRD1(8,x722);FLD1(x722,1)=x1;FLD1(x722,2)=x2;FLD1(x722,3)=x661;FLD1(x722,4)=x720;FLD1(x722,5)=__AIdeMap_3;FLD1(x722,6)=__AIdeMap_3;FLD1(x722,7)=__AIdeBag_2;FLD1(x722,8)=__AIdeMap_3;
	    CPPRD(x722,1);
	    x723=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_52,1))(__ATransDec_52,x722);
	    x724=_ATransDec_32(x722,x658);
	    {OBJ x725=FLD1(x724,1);OBJ x726=FLD1(x724,2);OBJ x727=FLD1(x724,3);
	     if(EXPRD(x724,1)){
	      r.c2=x726;
	      DSPRDF(x724);
	     }else{
	      COPY(x725,1);COPY(x726,1);COPY(x727,1);
	      r.c2=x726;
	      FRPRD(x724,1);}
	     {OBJ x728;OBJ x729;OBJ x730;
	      x728=_ASeqMap_3(x723,x725);
	      x729=_ASeq_26(x728,x727);
	      PRD(2,13,x730);FLD(x730,1)=__ASeq_6;FLD(x730,2)=x729;
	      PRD(5,3,r.c1);FLD(r.c1,1)=x661;FLD(r.c1,2)=x721;FLD(r.c1,3)=x681;FLD(r.c1,4)=x682;FLD(r.c1,5)=x730;}}}}}
	}else{
	 HLT("SourceAn at <unknown> : undefined selection symbol\'SourceAn:sourceAn->denotation");}}}}}}}
 }else{
  if(ISTGPRD(x3,3)){
   {OBJ x735=FLD(x3,4);
    FRPRD(x1,1);
    FRPRD(x2,1);
    CPPRD(x3,2);
    {OBJ x736;OBJ x737;OBJ x738;OBJ x739;
     x736=_AAc_22(x3);
     x737=_AAc_21(x3);
     x738=_AAc_20(x3);
     ANat_81(x735,__ANat_5,x739);
     if(ISPRM(x736)){
      HLT("SourceAn at <unknown> : undefined selection symbol\'SourceAn:sourceAn->denotation");
     }else{
      {OBJ x741=FLD1(x736,2);OBJ x743=FLD1(x736,4);
       if(EXPRD(x736,1)){
	FLD1(x736,2)=NIL;FLD1(x736,4)=NIL;DSPRD(x736);
       }else{
	COPY(x741,1);COPY(x743,1);
	FRPRD(x736,1);}
       {OBJ x746;
	switch(TGPRM(x738)){
	 case 2:
	  x746=__AIc_17;break;
	 case 0:
	  x746=__AIc_21;break;
	 default: 
	  x746=__AIc_19;}
	if(ISPRD(x741)&&(ISTGPRD(x741,3))){
	 {OBJ x747=FLD(x741,1);
	  if(EXPRD(x741,1)){
	   DSPRDF(x741);
	  }else{
	   CPPRD(x747,1);
	   FRPRD(x741,1);}
	  if(ISPRD(x743)&&(ISTGPRD(x743,1))){
	   {OBJ x748=FLD(x743,1);FLAG x_x743=EXPRD(x743,1);
	    if(x_x743){
	    }else{
	     COPY(x748,1);}
	    if(ISTGPRM(x739,1)){
	     COPY(x748,1);
	     COPY(__ATransDec_65,1);
	     CPCLS(__ATransDec_66,1);
	     COPY(__AIdeSet_2,1);
	     CPPRD(__AIde_6,1);
	     {OBJ x749;OBJ x750;OBJ x751;OBJ x752;OBJ x753;OBJ x754;OBJ x755;OBJ x756;
	      ANat_2(x735,x749);
	      x750=_ASeq_24(__ANat_8,x735,__ATransDec_66);
	      if(x_x743){
	       RPRDF(x743,x751);FLD(x751,1)=x749;
	      }else{
	       FRPRD(x743,1);PRDF(1,1,x751);FLD(x751,1)=x749;}
	      CPPRD(x751,1);
	      x752=_ASeqMap_3(__AIde_6,x750);
	      COPY(x752,1);
	      x753=_AStore_4(x748);
	      PRD(3,11,x754);FLD(x754,1)=x748;FLD(x754,2)=x752;FLD(x754,3)=x751;
	      PRD1(2,x755);FLD1(x755,1)=x751;FLD1(x755,2)=__ASeq_6;
	      PRD(2,8,x756);FLD(x756,1)=x753;FLD(x756,2)=__ATransDec_65;
	      PRD(7,2,r.c1);FLD(r.c1,1)=x737;FLD(r.c1,2)=x756;FLD(r.c1,3)=x746;FLD(r.c1,4)=x747;FLD(r.c1,5)=x752;FLD(r.c1,6)=x755;FLD(r.c1,7)=x754;
	      r.c2=__AIdeSet_2;}
	    }else{
	     if(x_x743){
	      DSPRDF(x743);
	     }else{
	      FRPRD(x743,1);}
	     CPPRD(x737,1);
	     COPY(x748,1);
	     COPY(__AIdeSet_2,1);
	     {OBJ x758;
	      PRD(3,11,x758);FLD(x758,1)=x748;FLD(x758,2)=__ASeq_6;FLD(x758,3)=x737;
	      PRD(5,3,r.c1);FLD(r.c1,1)=x737;FLD(r.c1,2)=x748;FLD(r.c1,3)=x746;FLD(r.c1,4)=x747;FLD(r.c1,5)=x758;
	      r.c2=__AIdeSet_2;}}}
	  }else{
	   HLT("TransAn at <unknown> : undefined selection store\'TransAn:transAn->store");}}
	}else{
	 HLT("SourceAn at <unknown> : undefined selection symbol\'SourceAn:sourceAn->denotation");}}}}}}
  }else{
   HLT("TransDec at <unknown> : missing else in transDec\'TransDec:popts**unit->dec->obj**ideSet");}}
 return r;}
extern OBJ _ATransDec_1_c(OBJ x1,OBJ x2,OBJ x3) /* transDec */
{OBJ r;
 {TUP2 t=_ATransDec_1(x1,x2,x3);
  PRD1(2,r);
  FLD1(r,1)=t.c1;
  FLD1(r,2)=t.c2;}
 return r;}

extern OBJ _ATransDec_2(OBJ x1,OBJ x2,OBJ x3) /* transImportDec */
{OBJ r;
 FRPRD(x1,1);
 {OBJ x9;OBJ x4;OBJ x10;OBJ x22;OBJ x16;OBJ x36;OBJ x37;
  if(ISTGPRD(x3,2)){
   CPPRD(x3,2);
   x9=__ABUILTIN_5;
  }else{
   CPPRD(x3,2);
   x9=__ABUILTIN_3;}
  x4=_AAc_22(x3);
  x10=_AAc_21(x3);
  if(ISPRM(x4)){
   x22=__AOptimAn_24;x16=__ASourceAn_28;
  }else{
   {OBJ x78=FLD1(x4,2);OBJ x79=FLD1(x4,3);
    if(EXPRD(x4,1)){
     x16=x78;x22=x79;
     FLD1(x4,2)=NIL;FLD1(x4,3)=NIL;DSPRD(x4);
    }else{
     COPY(x78,1);COPY(x79,1);
     x16=x78;x22=x79;
     FRPRD(x4,1);}}}
  if(ISTGPRM(x9,1)){
   if(ISTGPRD(x3,2)){
    {OBJ x33=FLD(x3,4);
     CPPRD(x33,1);
     if(ISTGPRD(x33,1)){
      if(EXPRD(x33,1)){
       DSPRD(x33);
      }else{
       DCPRD(x33,1);}
      CPPRD(x10,1);
      x36=__ABUILTIN_5;
     }else{
      FRPRD(x33,1);
      CPPRD(x10,1);
      x36=__ABUILTIN_3;}}
   }else{
    HLT("Ac at <unknown> : undefined selection def\'Ac:dec->exp");}
  }else{
   CPPRD(x10,1);
   x36=__ABUILTIN_3;}
  x37=_ASourceAnFun_1(x16,x10);
  if(ISTGPRM(x36,1)){
   FREE(x22,1);
   CPPRD(x3,1);
   {OBJ x43;
    x43=_ATypeAnFun_4(x3);
    if(ISTGPRD(x3,2)){
     {OBJ x51=FLD(x3,4);
      if(EXPRD(x3,1)){
       FLD(x3,4)=NIL;DSPRD(x3);
      }else{
       CPPRD(x51,1);
       FRPRD(x3,1);}
      {OBJ x52;
       x52=_ATransType_2(x2,x43);
       if(ISTGPRD(x51,1)){
	{OBJ x54=FLD(x51,2);
	 if(EXPRD(x51,1)){
	  FREE(FLD(x51,1),1);DSPRDF(x51);
	 }else{
	  CPPRD(x54,1);
	  FRPRD(x51,1);}
	 PRD(5,4,r);FLD(r,1)=x10;FLD(r,2)=x52;FLD(r,3)=__AIc_21;FLD(r,4)=x37;FLD(r,5)=x54;}
       }else{
	HLT("Ac at <unknown> : undefined selection repr\'Ac:exp->denotation");}}}
    }else{
     HLT("Ac at <unknown> : undefined selection def\'Ac:dec->exp");}}
  }else{
   {OBJ x58;OBJ x60;
    if(ISPRD(x22)&&(ISTGPRD(x22,1))){
     x58=__ABUILTIN_5;
    }else{
     x58=__ABUILTIN_3;}
    if(ISTGPRM(x58,1)){
     x60=__ABUILTIN_5;
    }else{
     if(ISPRD(x22)&&(ISTGPRD(x22,2))){
      x60=__ABUILTIN_5;
     }else{
      x60=__ABUILTIN_3;}}
    if(ISTGPRM(x60,1)){
     {OBJ x65;OBJ x66;OBJ x71;
      if(ISPRD(x22)&&(ISTGPRD(x22,1))){
       {OBJ x62=FLD(x22,2);
	if(EXPRD(x22,1)){
	 x65=x62;
	 DSPRDF(x22);
	}else{
	 x65=x62;
	 FRPRD(x22,1);}}
      }else{
       if(ISPRD(x22)&&(ISTGPRD(x22,2))){
	{OBJ x64=FLD(x22,1);
	 if(EXPRD(x22,1)){
	  x65=x64;
	  DSPRDF(x22);
	 }else{
	  x65=x64;
	  FRPRD(x22,1);}}
       }else{
	HLT("OptimAn at <unknown> : undefined selection rank\'OptimAn:optimAn->nat");}}
      ANat_81(x65,__ANat_5,x66);
      if(ISTGPRM(x66,1)){
       CPCLS(__ATransDec_54,1);
       CPCLS(__ATransDec_67,1);
       {OBJ x67;OBJ x68;OBJ x69;OBJ x70;
	x67=_ATypeAnFun_4(x3);
	x68=_ATransDec_51(x2,x67,x65);
	x69=_ASeq_24(__ANat_8,x65,__ATransDec_67);
	x70=_ASeqMap_3(__ATransDec_54,x69);
	PRD(2,8,x71);FLD(x71,1)=x70;FLD(x71,2)=x68;}
      }else{
       FRPRD(x2,1);
       FRPRD(x3,1);
       x71=__AStore_32;}
      PRD(4,1,r);FLD(r,1)=x10;FLD(r,2)=x71;FLD(r,3)=__AIc_21;FLD(r,4)=x37;}
    }else{
     FRPRD(x2,1);
     FRPRD(x3,1);
     FREE(x22,1);
     PRD(4,1,r);FLD(r,1)=x10;FLD(r,2)=__AStore_32;FLD(r,3)=__AIc_21;FLD(r,4)=x37;}}}}
 return r;}

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

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

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

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

extern OBJ _ATransDec_8(OBJ x1) /* used */
{OBJ r;
 {OBJ x2=FLD1(x1,1);
  if(EXPRD(x1,1)){
   r=x2;
   FLD1(x1,1)=NIL;DSPRD(x1);
  }else{
   COPY(x2,1);
   r=x2;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _ATransDec_10(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5,OBJ x6,OBJ x7,OBJ x8) /* inh */
{OBJ r;
 PRD1(8,r);FLD1(r,1)=x1;FLD1(r,2)=x2;FLD1(r,3)=x3;FLD1(r,4)=x4;FLD1(r,5)=x5;FLD1(r,6)=x6;FLD1(r,7)=x7;FLD1(r,8)=x8;
 return r;}

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

extern OBJ _ATransDec_12(OBJ x1) /* origin */
{OBJ r;
 {OBJ x9=FLD1(x1,8);
  if(EXPRD(x1,1)){
   r=x9;
   FLD1(x1,8)=NIL;DSPRD(x1);
  }else{
   COPY(x9,1);
   r=x9;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _ATransDec_13(OBJ x1) /* after */
{OBJ r;
 {OBJ x8=FLD1(x1,7);
  if(EXPRD(x1,1)){
   r=x8;
   FLD1(x1,7)=NIL;DSPRD(x1);
  }else{
   COPY(x8,1);
   r=x8;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _ATransDec_14(OBJ x1) /* delayed */
{OBJ r;
 {OBJ x7=FLD1(x1,6);
  if(EXPRD(x1,1)){
   r=x7;
   FLD1(x1,6)=NIL;DSPRD(x1);
  }else{
   COPY(x7,1);
   r=x7;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _ATransDec_15(OBJ x1) /* stores */
{OBJ r;
 {OBJ x6=FLD1(x1,5);
  if(EXPRD(x1,1)){
   r=x6;
   FLD1(x1,5)=NIL;DSPRD(x1);
  }else{
   COPY(x6,1);
   r=x6;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _ATransDec_16(OBJ x1) /* target */
{OBJ r;
 {OBJ x5=FLD1(x1,4);
  if(EXPRD(x1,1)){
   r=x5;
   FLD1(x1,4)=NIL;DSPRD(x1);
  }else{
   COPY(x5,1);
   r=x5;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _ATransDec_17(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 _ATransDec_18(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 _ATransDec_19(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 OBJ _ATransDec_20(OBJ x1,OBJ x2,OBJ x3) /* newInh */
{OBJ r;
 COPY(__AIdeMap_3,3);
 COPY(__AIdeBag_2,1);
 PRD1(8,r);FLD1(r,1)=x1;FLD1(r,2)=x2;FLD1(r,3)=x3;FLD1(r,4)=__ASeq_6;FLD1(r,5)=__AIdeMap_3;FLD1(r,6)=__AIdeMap_3;FLD1(r,7)=__AIdeBag_2;FLD1(r,8)=__AIdeMap_3;
 return r;}

extern OBJ _ATransDec_21(OBJ x1,OBJ x2) /* target,1 */
{OBJ r;
 {OBJ x66;OBJ x67;OBJ x68;OBJ x70;OBJ x71;OBJ x72;OBJ x73;
  if(EXPRD(x2,1)){
   RSOME(x2,r);FREE(FLD1(r,4),1);FLD1(r,4)=x1;
  }else{
   x66=FLD1(x2,1);x67=FLD1(x2,2);x68=FLD1(x2,3);x70=FLD1(x2,5);x71=FLD1(x2,6);x72=FLD1(x2,7);x73=FLD1(x2,8);CPPRD(x66,1);CPPRD(x67,1);CPPRD(x68,1);COPY(x70,1);COPY(x71,1);COPY(x72,1);COPY(x73,1);
   FRPRD(x2,1);PRD1(8,r);FLD1(r,1)=x66;FLD1(r,2)=x67;FLD1(r,3)=x68;FLD1(r,4)=x1;FLD1(r,5)=x70;FLD1(r,6)=x71;FLD1(r,7)=x72;FLD1(r,8)=x73;}}
 return r;}

extern OBJ _ATransDec_22(OBJ x1,OBJ x2,OBJ x3) /* store */
{OBJ r;
 {OBJ x77;OBJ x78;OBJ x79;OBJ x80;OBJ x81=FLD1(x3,5);OBJ x82;OBJ x83;OBJ x84;
  if(EXPRD(x3,1)){
   CPCLS(__AIde_14,1);
   {
    RSOME(x3,r);
    FLD1(r,5)=_AMap_31(__AIde_14,x1,x2,x81);}
  }else{
   x77=FLD1(x3,1);x78=FLD1(x3,2);x79=FLD1(x3,3);x80=FLD1(x3,4);x82=FLD1(x3,6);x83=FLD1(x3,7);x84=FLD1(x3,8);CPPRD(x77,1);CPPRD(x78,1);CPPRD(x79,1);COPY(x80,1);COPY(x81,1);COPY(x82,1);COPY(x83,1);COPY(x84,1);
   CPCLS(__AIde_14,1);
   {
    FRPRD(x3,1);PRD1(8,r);FLD1(r,1)=x77;FLD1(r,2)=x78;FLD1(r,3)=x79;FLD1(r,4)=x80;FLD1(r,6)=x82;FLD1(r,7)=x83;FLD1(r,8)=x84;
    FLD1(r,5)=_AMap_31(__AIde_14,x1,x2,x81);}}}
 return r;}

extern OBJ _ATransDec_23(OBJ x1,OBJ x2,OBJ x3) /* delay */
{OBJ r;
 {OBJ x77;OBJ x78;OBJ x79;OBJ x80;OBJ x81;OBJ x82=FLD1(x3,6);OBJ x83;OBJ x84;
  if(EXPRD(x3,1)){
   CPCLS(__AIde_14,1);
   {
    RSOME(x3,r);
    FLD1(r,6)=_AMap_31(__AIde_14,x1,x2,x82);}
  }else{
   x77=FLD1(x3,1);x78=FLD1(x3,2);x79=FLD1(x3,3);x80=FLD1(x3,4);x81=FLD1(x3,5);x83=FLD1(x3,7);x84=FLD1(x3,8);CPPRD(x77,1);CPPRD(x78,1);CPPRD(x79,1);COPY(x80,1);COPY(x81,1);COPY(x82,1);COPY(x83,1);COPY(x84,1);
   CPCLS(__AIde_14,1);
   {
    FRPRD(x3,1);PRD1(8,r);FLD1(r,1)=x77;FLD1(r,2)=x78;FLD1(r,3)=x79;FLD1(r,4)=x80;FLD1(r,5)=x81;FLD1(r,7)=x83;FLD1(r,8)=x84;
    FLD1(r,6)=_AMap_31(__AIde_14,x1,x2,x82);}}}
 return r;}

extern OBJ _ATransDec_24(OBJ x1,OBJ x2) /* after,1 */
{OBJ r;
 {OBJ x66;OBJ x67;OBJ x68;OBJ x69;OBJ x70;OBJ x71;OBJ x73;
  if(EXPRD(x2,1)){
   RSOME(x2,r);FREE(FLD1(r,7),1);FLD1(r,7)=x1;
  }else{
   x66=FLD1(x2,1);x67=FLD1(x2,2);x68=FLD1(x2,3);x69=FLD1(x2,4);x70=FLD1(x2,5);x71=FLD1(x2,6);x73=FLD1(x2,8);CPPRD(x66,1);CPPRD(x67,1);CPPRD(x68,1);COPY(x69,1);COPY(x70,1);COPY(x71,1);COPY(x73,1);
   FRPRD(x2,1);PRD1(8,r);FLD1(r,1)=x66;FLD1(r,2)=x67;FLD1(r,3)=x68;FLD1(r,4)=x69;FLD1(r,5)=x70;FLD1(r,6)=x71;FLD1(r,7)=x1;FLD1(r,8)=x73;}}
 return r;}

extern OBJ _ATransDec_25(OBJ x1,OBJ x2) /* origin,1 */
{OBJ r;
 {OBJ x66;OBJ x67;OBJ x68;OBJ x69;OBJ x70;OBJ x71;OBJ x72;
  if(EXPRD(x2,1)){
   RSOME(x2,r);FREE(FLD1(r,8),1);FLD1(r,8)=x1;
  }else{
   x66=FLD1(x2,1);x67=FLD1(x2,2);x68=FLD1(x2,3);x69=FLD1(x2,4);x70=FLD1(x2,5);x71=FLD1(x2,6);x72=FLD1(x2,7);CPPRD(x66,1);CPPRD(x67,1);CPPRD(x68,1);COPY(x69,1);COPY(x70,1);COPY(x71,1);COPY(x72,1);
   FRPRD(x2,1);PRD1(8,r);FLD1(r,1)=x66;FLD1(r,2)=x67;FLD1(r,3)=x68;FLD1(r,4)=x69;FLD1(r,5)=x70;FLD1(r,6)=x71;FLD1(r,7)=x72;FLD1(r,8)=x1;}}
 return r;}

extern OBJ _ATransDec_26(OBJ x1,OBJ x2) /* store,1 */
{OBJ r;
 {OBJ x109=FLD1(x1,2);OBJ x112=FLD1(x1,5);
  if(EXPRD(x1,1)){
   FLD1(x1,2)=NIL;FLD1(x1,5)=NIL;DSPRD(x1);
  }else{
   CPPRD(x109,1);COPY(x112,1);
   FRPRD(x1,1);}
  CPPRD(x2,1);
  CPCLS(__AIde_14,1);
  {OBJ x116;
   x116=_AMap_33(__AIde_14,x112,x2);
   if(ISPRM(x116)){
    if(ISTGPRD(x2,0)){
     CPPRD(x109,1);
     {OBJ x120;OBJ x125;OBJ x134;
      x120=_AAcFun_10(x109,x2);
      if(ISTGPRD(x120,3)){
       x125=__ABUILTIN_5;
      }else{
       x125=__ABUILTIN_3;}
      if(ISTGPRM(x125,1)){
       CPPRD(x120,1);
       {OBJ x126;OBJ x132;
	x126=_AAc_22(x120);
	if(ISPRM(x126)){
	 x132=__ATransAn_8;
	}else{
	 {OBJ x130=FLD1(x126,4);
	  if(EXPRD(x126,1)){
	   x132=x130;
	   FLD1(x126,4)=NIL;DSPRD(x126);
	  }else{
	   COPY(x130,1);
	   x132=x130;
	   FRPRD(x126,1);}}}
	if(ISPRD(x132)&&(ISTGPRD(x132,1))){
	 if(EXPRD(x132,1)){
	  FREE(FLD(x132,1),1);DSPRDF(x132);
	 }else{
	  DCPRD(x132,1);}
	 x134=__ABUILTIN_5;
	}else{
	 FREE(x132,1);
	 x134=__ABUILTIN_3;}}
      }else{
       x134=__ABUILTIN_3;}
      if(ISTGPRM(x134,1)){
       FRPRD(x109,1);
       {OBJ x135;OBJ x141;
	x135=_AAc_22(x120);
	if(ISPRM(x135)){
	 x141=__ATransAn_8;
	}else{
	 {OBJ x139=FLD1(x135,4);
	  if(EXPRD(x135,1)){
	   x141=x139;
	   FLD1(x135,4)=NIL;DSPRD(x135);
	  }else{
	   COPY(x139,1);
	   x141=x139;
	   FRPRD(x135,1);}}}
	if(ISPRD(x141)&&(ISTGPRD(x141,1))){
	 {OBJ x142=FLD(x141,1);
	  if(EXPRD(x141,1)){
	   r=x142;
	   DSPRDF(x141);
	  }else{
	   COPY(x142,1);
	   r=x142;
	   FRPRD(x141,1);}}
	}else{
	 HLT("TransAn at <unknown> : undefined selection store\'TransAn:transAn->store");}}
      }else{
       {OBJ x143;
	x143=_ATypeAnFun_4(x120);
	r=_ATransType_2(x109,x143);}}}
    }else{
     if(EXPRD(x2,1)){
      DSPRDF(x2);
     }else{
      DCPRD(x2,1);}
     FRPRD(x109,1);
     r=__AStore_32;}
   }else{
    {OBJ x117=FLD1(x116,1);
     if(EXPRD(x116,1)){
      r=x117;
      DSPRDF(x116);
     }else{
      COPY(x117,1);
      r=x117;
      FRPRD(x116,1);}
     FRPRD(x2,1);
     FRPRD(x109,1);}}}}
 return r;}

extern OBJ _ATransDec_27(OBJ x1) /* newSyn */
{OBJ r;
 {OBJ x8=FLD1(x1,7);
  if(EXPRD(x1,1)){
   FLD1(x1,7)=NIL;DSPRD(x1);
  }else{
   COPY(x8,1);
   FRPRD(x1,1);}
  COPY(__AIdeSet_2,1);
  {OBJ x10;
   x10=x8;
   PRD1(3,r);FLD1(r,1)=x10;FLD1(r,2)=__AIdeSet_2;FLD1(r,3)=__ASeq_6;}}
 return r;}

extern OBJ _ATransDec_28(OBJ x1,OBJ x2) /* gen */
{OBJ r;
 {OBJ x16;OBJ x17;OBJ x18=FLD1(x2,3);
  if(EXPRD(x2,1)){
   {OBJ x19;
    PRD1(2,x19);FLD1(x19,1)=x1;FLD1(x19,2)=x18;
    RSOME(x2,r);FLD1(r,3)=x19;}
  }else{
   x16=FLD1(x2,1);x17=FLD1(x2,2);COPY(x16,1);COPY(x17,1);COPY(x18,1);
   {OBJ x19;
    PRD1(2,x19);FLD1(x19,1)=x1;FLD1(x19,2)=x18;
    FRPRD(x2,1);PRD1(3,r);FLD1(r,1)=x16;FLD1(r,2)=x17;FLD1(r,3)=x19;}}}
 return r;}

extern OBJ _ATransDec_29(OBJ x1,OBJ x2) /* use */
{OBJ r;
 {OBJ x21=FLD1(x2,1);OBJ x22=FLD1(x2,2);OBJ x23=FLD1(x2,3);
  if(EXPRD(x2,1)){
   {OBJ x27;OBJ x28;OBJ x29;
    if(ISTGPRD(x1,0)){
     CPPRD(x1,1);
     CPCLS(__AIde_14,1);
     x27=__ABUILTIN_5;
    }else{
     CPPRD(x1,1);
     CPCLS(__AIde_14,1);
     x27=__ABUILTIN_3;}
    x28=_ABag_40(__AIde_14,x1,x21);
    if(ISTGPRM(x27,1)){
     CPCLS(__AIde_14,1);
     x29=_ABSTree_57(__AIde_14,x1,x22);
    }else{
     x29=x22;
     FRPRD(x1,1);}
    RSOME(x2,r);FLD1(r,1)=x28;FLD1(r,2)=x29;}
  }else{
   COPY(x21,1);COPY(x22,1);COPY(x23,1);
   {OBJ x27;OBJ x28;OBJ x29;
    if(ISTGPRD(x1,0)){
     CPPRD(x1,1);
     CPCLS(__AIde_14,1);
     x27=__ABUILTIN_5;
    }else{
     CPPRD(x1,1);
     CPCLS(__AIde_14,1);
     x27=__ABUILTIN_3;}
    x28=_ABag_40(__AIde_14,x1,x21);
    if(ISTGPRM(x27,1)){
     CPCLS(__AIde_14,1);
     x29=_ABSTree_57(__AIde_14,x1,x22);
    }else{
     x29=x22;
     FRPRD(x1,1);}
    FRPRD(x2,1);PRD1(3,r);FLD1(r,1)=x28;FLD1(r,2)=x29;FLD1(r,3)=x23;}}}
 return r;}

extern OBJ _ATransDec_30(OBJ x1,OBJ x2) /* useGlobal */
{OBJ r;
 {OBJ x16;OBJ x17=FLD1(x2,2);OBJ x18;
  if(EXPRD(x2,1)){
   CPCLS(__AIde_14,1);
   {
    RSOME(x2,r);
    FLD1(r,2)=_ABSTree_57(__AIde_14,x1,x17);}
  }else{
   x16=FLD1(x2,1);x18=FLD1(x2,3);COPY(x16,1);COPY(x17,1);COPY(x18,1);
   CPCLS(__AIde_14,1);
   {
    FRPRD(x2,1);PRD1(3,r);FLD1(r,1)=x16;FLD1(r,3)=x18;
    FLD1(r,2)=_ABSTree_57(__AIde_14,x1,x17);}}}
 return r;}

extern OBJ _ATransDec_31(OBJ x1,OBJ x2,OBJ x3) /* genPos */
{OBJ r;
 {OBJ x4=FLD1(x1,1);
  if(EXPRD(x1,1)){
   FLD1(x1,1)=NIL;DSPRD(x1);
  }else{
   CPPRD(x4,1);
   FRPRD(x1,1);}
  {OBJ x12;OBJ x13;
   x12=x4;
   x13=_APreparedOptions_19(x12);
   if(ISTGPRM(x13,1)){
    {OBJ x19;OBJ x21;OBJ x25;
     if(ISPRM(x2)){
      x19=__ASourceAn_28;
     }else{
      {OBJ x15=FLD1(x2,2);
       if(EXPRD(x2,1)){
	x19=x15;
	FLD1(x2,2)=NIL;DSPRD(x2);
       }else{
	COPY(x15,1);
	x19=x15;
	FRPRD(x2,1);}}}
     if(ISPRD(x19)&&(ISTGPRD(x19,1))){
      x21=__ABUILTIN_5;
     }else{
      x21=__ABUILTIN_3;}
     if(ISTGPRM(x21,1)){
      x25=__ABUILTIN_5;
     }else{
      if(ISPRD(x19)&&(ISTGPRD(x19,2))){
       x25=__ABUILTIN_5;
      }else{
       x25=__ABUILTIN_3;}}
     if(ISTGPRM(x25,1)){
      {OBJ x30;OBJ x31;
       if(ISPRD(x19)&&(ISTGPRD(x19,2)||ISTGPRD(x19,1))){
	{OBJ x26=FLD(x19,1);
	 if(EXPRD(x19,1)){
	  x30=x26;
	  DSPRD(x19);
	 }else{
	  x30=x26;
	  FRPRD(x19,1);}}
       }else{
	HLT("SourceAn at <unknown> : undefined selection pos\'SourceAn:sourceAn->pos");}
       ANat_76(x30,__ASourceAn_30,x31);
       if(ISTGPRM(x31,1)){
	r=x3;
       }else{
	{OBJ x32;
	 PRDF(1,1,x32);FLD(x32,1)=x30;
	 r=_ATransDec_28(x32,x3);}}}
     }else{
      FREE(x19,1);
      r=x3;}}
   }else{
    FREE(x2,1);
    r=x3;}}}
 return r;}

extern OBJ _ATransDec_32(register OBJ x1,register OBJ x2) /* trans */
{OBJ r;
 for(;;){
  if(ISTGPRD(x2,2)){
   {OBJ x2397=FLD(x2,2);
    CPPRD(x2397,1);
    {OBJ x2398;
     x2398=_AAc_50(x2);
     {OBJ x2402=FLD1(x1,4);OBJ x2404=FLD1(x1,6);OBJ x2405=FLD1(x1,7);
      COPY(x2402,1);COPY(x2404,1);COPY(x2405,1);
      CPPRD(x2397,1);
      CPCLS(__AIde_14,1);
      {OBJ x2407;
       x2407=_AMap_33(__AIde_14,x2404,x2397);
       if(ISPRM(x2407)){
	CPPRD(x2397,1);
	COPY(__AIdeSet_2,1);
	{OBJ x2409;OBJ x2410;OBJ x2411;OBJ x2412;OBJ x2413;
	 PRD1(2,x2409);FLD1(x2409,1)=x2397;FLD1(x2409,2)=__ASeq_6;
	 PRD1(3,x2410);FLD1(x2410,1)=x2405;FLD1(x2410,2)=__AIdeSet_2;FLD1(x2410,3)=__ASeq_6;
	 PRD(2,4,x2411);FLD(x2411,1)=x2409;FLD(x2411,2)=x2402;
	 x2412=_ATransDec_29(x2397,x2410);
	 x2413=_ATransDec_28(x2411,x2412);
	 r=_ATransDec_31(x1,x2398,x2413);}
       }else{
	{OBJ x2408=FLD1(x2407,1);
	 if(EXPRD(x2407,1)){
	  DSPRDF(x2407);
	 }else{
	  CPPRD(x2408,1);
	  FRPRD(x2407,1);}
	 FRPRD(x2397,1);
	 FREE(x2398,1);
	 FREE(x2402,1);
	 FREE(x2405,1);
	 x2=x2408;continue;}}}}}}
  }else{
   if(ISTGPRD(x2,5)){
    {OBJ x2415=FLD(x2,2);OBJ x2416=FLD(x2,3);
     if(EXPRD(x2,1)){
      CPPRD(x2416,1);
      FREE(FLD(x2,1),1);DSPRDF(x2);
     }else{
      COPY(x2415,1);CPPRD(x2416,2);
      FRPRD(x2,1);}
     {OBJ x2417;
      x2417=_AAcFun_2(x2416);
      if(ISTGPRM(x2417,1)){
       CPCLS(__ATransDec_37,1);
       {OBJ x2418;
	x2418=_ASeqReduce_3(__ATransDec_37,x1,x2415);
	x1=x2418;x2=x2416;continue;}
      }else{
       CPPRD(x1,1);
       CPCLS(__ATransDec_57,1);
       {OBJ x2419;OBJ x2420;TUP2 x2422;
	x2419=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_57,1))(__ATransDec_57,x1);
	x2420=_ASeqSort_2(x2419,x2415);
	x2422=_ATransDec_35(x1,x2420,x2416);
	{OBJ x2424;OBJ x2425;OBJ x2426=FLD1(x2422.c1,3);
	 if(EXPRD(x2422.c1,1)){
	  {OBJ x2427;OBJ x2428;
	   PRD(2,13,x2427);FLD(x2427,1)=x2422.c2;FLD(x2427,2)=x2426;
	   PRD1(2,x2428);FLD1(x2428,1)=x2427;FLD1(x2428,2)=__ASeq_6;
	   RSOME(x2422.c1,r);FLD1(r,3)=x2428;}
	 }else{
	  x2424=FLD1(x2422.c1,1);x2425=FLD1(x2422.c1,2);COPY(x2424,1);COPY(x2425,1);COPY(x2426,1);
	  {OBJ x2427;OBJ x2428;
	   PRD(2,13,x2427);FLD(x2427,1)=x2422.c2;FLD(x2427,2)=x2426;
	   PRD1(2,x2428);FLD1(x2428,1)=x2427;FLD1(x2428,2)=__ASeq_6;
	   FRPRD(x2422.c1,1);PRD1(3,r);FLD1(r,1)=x2424;FLD1(r,2)=x2425;FLD1(r,3)=x2428;}}}}}}}
   }else{
    if(ISTGPRD(x2,6)){
     {OBJ x2430=FLD(x2,2);OBJ x2431=FLD(x2,3);OBJ x2432=FLD(x2,4);
      CPPRD(x2430,1);COPY(x2431,1);CPPRD(x2432,1);
      {OBJ x2433;
       x2433=_AAc_50(x2);
       {OBJ x2434=FLD1(x1,1);OBJ x2435=FLD1(x1,2);OBJ x2436=FLD1(x1,3);OBJ x2438=FLD1(x1,5);OBJ x2439=FLD1(x1,6);OBJ x2441=FLD1(x1,8);
	CPPRD(x2434,1);CPPRD(x2435,1);CPPRD(x2436,1);COPY(x2438,1);COPY(x2439,1);COPY(x2441,1);
	if(ISTGPRD(x2430,2)){
	 {OBJ x2443=FLD(x2430,2);
	  if(EXPRD(x2430,1)){
	   CPPRD(x2443,1);
	   FREE(FLD(x2430,1),1);DSPRDF(x2430);
	  }else{
	   CPPRD(x2443,2);
	   FRPRD(x2430,1);}
	  COPY(x2439,1);
	  CPCLS(__AIde_14,1);
	  {OBJ x2444;
	   x2444=_AMap_33(__AIde_14,x2439,x2443);
	   if(ISPRM(x2444)){
	    FRPRD(x2434,1);
	    FRPRD(x2435,1);
	    FRPRD(x2436,1);
	    FREE(x2438,1);
	    FREE(x2439,1);
	    FREE(x2441,1);
	    {OBJ x2477;OBJ x2473;OBJ x2479;OBJ x2480;OBJ x2481;OBJ x2482;OBJ x2483;OBJ x2484;
	     if(ISTGPRD(x2443,0)){
	      CPPRD(x1,1);
	      CPPRD(x2443,2);
	      CPCLS(__AIde_14,1);
	      COPY(__AIdeBag_2,1);
	      x2477=__ABUILTIN_5;
	     }else{
	      CPPRD(x1,1);
	      CPPRD(x2443,2);
	      CPCLS(__AIde_14,1);
	      COPY(__AIdeBag_2,1);
	      x2477=__ABUILTIN_3;}
	     x2473=_ABag_40(__AIde_14,x2443,__AIdeBag_2);
	     {TUP3 t=_ATransDec_40(x1,x2443,x2431,x2432,x2473);
	      x2479=t.c1;
	      x2480=t.c2;
	      x2481=t.c3;}
	     PRD1(2,x2482);FLD1(x2482,1)=x2481;FLD1(x2482,2)=__ASeq_6;
	     if(ISTGPRM(x2477,1)){
	      CPCLS(__AIde_14,1);
	      x2483=_ABSTree_57(__AIde_14,x2443,x2480);
	     }else{
	      x2483=x2480;
	      FRPRD(x2443,1);}
	     PRD1(3,x2484);FLD1(x2484,1)=x2479;FLD1(x2484,2)=x2483;FLD1(x2484,3)=x2482;
	     r=_ATransDec_31(x1,x2433,x2484);}
	   }else{
	    {OBJ x2445=FLD1(x2444,1);
	     if(EXPRD(x2444,1)){
	      DSPRDF(x2444);
	     }else{
	      CPPRD(x2445,1);
	      FRPRD(x2444,1);}
	     FRPRD(x2432,1);
	     FREE(x2433,1);
	     FRPRD(x2443,1);
	     {OBJ x2448;
	      if(ISPRM(x2431)){
	       HLT("Seq at <unknown> : undefined selection ft\'Seq:seq->data");
	      }else{
	       {OBJ x2446=FLD1(x2431,1);
		if(EXPRD(x2431,1)){
		 x2448=x2446;
		 FREE(FLD1(x2431,2),1);DSPRDF(x2431);
		}else{
		 CPPRD(x2446,1);
		 x2448=x2446;
		 FRPRD(x2431,1);}}}
	      {OBJ x2450=FLD1(x2448,2);OBJ x2451=FLD1(x2448,3);
	       if(EXPRD(x2448,1)){
		COPY(x2450,1);
		FRPRD(FLD1(x2448,1),1);DSPRDF(x2448);
	       }else{
		COPY(x2450,2);CPPRD(x2451,1);
		FRPRD(x2448,1);}
	       CPCLS(__ATransDec_39,1);
	       CPCLS(__AAc_21,1);
	       {OBJ x2452;TUP2 x2455;OBJ x2457;
		x2452=_ASeqMap_3(__AAc_21,x2450);
		x2455=_ASeqMapEnv_4(__ATransDec_39,x1,x2450);
		CPPRD(x2455.c1,1);
		x2457=_ATransDec_32(x2455.c1,x2451);
		{OBJ x2458=FLD1(x2457,1);OBJ x2459=FLD1(x2457,2);OBJ x2460=FLD1(x2457,3);
		 if(EXPRD(x2457,1)){
		  DSPRDF(x2457);
		 }else{
		  COPY(x2458,1);COPY(x2459,1);COPY(x2460,1);
		  FRPRD(x2457,1);}
		 COPY(x2452,1);
		 {TUP2 x2462;OBJ x2464;OBJ x2465;
		  x2462=_ATransDec_38(x2455.c1,x2458,x2452);
		  PRD1(8,x2464);FLD1(x2464,1)=x2434;FLD1(x2464,2)=x2435;FLD1(x2464,3)=x2436;FLD1(x2464,4)=x2452;FLD1(x2464,5)=x2438;FLD1(x2464,6)=x2439;FLD1(x2464,7)=x2462.c1;FLD1(x2464,8)=x2441;
		  x2465=_ATransDec_32(x2464,x2445);
		  {OBJ x2466;OBJ x2467=FLD1(x2465,2);OBJ x2468=FLD1(x2465,3);
		   if(EXPRD(x2465,1)){
		    CPCLS(__AIde_14,1);
		    {OBJ x2469;OBJ x2470;OBJ x2471;OBJ x2472;
		     x2469=_ASetByBST_41(__AIde_14,x2459,x2467);
		     x2470=_ASeq_26(x2468,x2462.c2);
		     x2471=_ATransDec_36(x2455.c2,x2470,x2460);
		     PRD1(2,x2472);FLD1(x2472,1)=x2471;FLD1(x2472,2)=__ASeq_6;
		     RSOME(x2465,r);FLD1(r,2)=x2469;FLD1(r,3)=x2472;}
		   }else{
		    x2466=FLD1(x2465,1);COPY(x2466,1);COPY(x2467,1);COPY(x2468,1);
		    CPCLS(__AIde_14,1);
		    {OBJ x2469;OBJ x2470;OBJ x2471;OBJ x2472;
		     x2469=_ASetByBST_41(__AIde_14,x2459,x2467);
		     x2470=_ASeq_26(x2468,x2462.c2);
		     x2471=_ATransDec_36(x2455.c2,x2470,x2460);
		     PRD1(2,x2472);FLD1(x2472,1)=x2471;FLD1(x2472,2)=__ASeq_6;
		     FRPRD(x2465,1);PRD1(3,r);FLD1(r,1)=x2466;FLD1(r,2)=x2469;FLD1(r,3)=x2472;}}}}}}}}}}}}
	}else{
	 HLT("Ac at <unknown> : undefined selection ide\'Ac:exp->ide");}}}}
    }else{
     if(ISTGPRD(x2,3)){
      {OBJ x2486=FLD(x2,2);OBJ x2487=FLD(x2,3);
       CPPRD(x2486,1);COPY(x2487,1);
       {OBJ x2488;
	x2488=_AAc_50(x2);
	{OBJ x2489=FLD1(x1,1);OBJ x2490=FLD1(x1,2);OBJ x2492=FLD1(x1,4);OBJ x2495=FLD1(x1,7);
	 CPPRD(x2489,1);CPPRD(x2490,1);COPY(x2492,1);COPY(x2495,1);
	 {OBJ x2500;OBJ x2497;OBJ x2503;
	  if(ISTGPRD(x2486,2)){
	   COPY(__AIdeSet_2,1);
	   x2500=__ABUILTIN_5;
	  }else{
	   COPY(__AIdeSet_2,1);
	   x2500=__ABUILTIN_3;}
	  PRD1(3,x2497);FLD1(x2497,1)=x2495;FLD1(x2497,2)=__AIdeSet_2;FLD1(x2497,3)=__ASeq_6;
	  if(ISTGPRM(x2500,1)){
	   if(ISTGPRD(x2486,2)){
	    {OBJ x2502=FLD(x2486,2);
	     CPPRD(x2502,1);
	     CPPRD(__ABuiltin_16,1);
	     x2503=_AIde_13(x2502,__ABuiltin_16);}
	   }else{
	    HLT("Ac at <unknown> : undefined selection ide\'Ac:exp->ide");}
	  }else{
	   x2503=__ABUILTIN_3;}
	  if(ISTGPRM(x2503,1)){
	   FRPRD(x2486,1);
	   FRPRD(x2489,1);
	   FRPRD(x2490,1);
	   {OBJ x2509;OBJ x2506;OBJ x2512;OBJ x2515;
	    if(ISPRM(x2492)){
	     HLT("Seq at <unknown> : undefined selection ft\'Seq:seq->data");
	    }else{
	     {OBJ x2507=FLD1(x2492,1);
	      CPPRD(x2507,1);
	      x2509=x2507;
	      if(EXPRD(x2492,1)){
	       DSPRD(x2492);
	      }else{
	       DCPRD(x2492,1);}}}
	    if(ISPRM(x2487)){
	     HLT("Seq at <unknown> : undefined selection rt\'Seq:seq->seq");
	    }else{
	     {OBJ x2505=FLD1(x2487,2);
	      COPY(x2505,1);
	      x2506=x2505;}}
	    if(ISPRM(x2506)){
	     HLT("Seq at <unknown> : undefined selection rt\'Seq:seq->seq");
	    }else{
	     {OBJ x2511=FLD1(x2506,2);
	      COPY(x2511,1);
	      x2512=x2511;}}
	    if(ISPRM(x2512)){
	     HLT("Seq at <unknown> : undefined selection ft\'Seq:seq->data");
	    }else{
	     {OBJ x2513=FLD1(x2512,1);
	      if(EXPRD(x2512,1)){
	       x2515=x2513;
	       FREE(FLD1(x2512,2),1);DSPRDF(x2512);
	      }else{
	       CPPRD(x2513,1);
	       x2515=x2513;
	       FRPRD(x2512,1);}}}
	    if(ISTGPRD(x2515,1)){
	     {OBJ x2517=FLD(x2515,2);
	      if(EXPRD(x2515,1)){
	       FREE(FLD(x2515,1),1);DSPRDF(x2515);
	      }else{
	       CPPRD(x2517,1);
	       FRPRD(x2515,1);}
	      FREE(x2487,1);
	      {OBJ x2520;
	       if(ISPRM(x2506)){
		HLT("Seq at <unknown> : undefined selection ft\'Seq:seq->data");
	       }else{
		{OBJ x2518=FLD1(x2506,1);
		 if(EXPRD(x2506,1)){
		  x2520=x2518;
		  FREE(FLD1(x2506,2),1);DSPRDF(x2506);
		 }else{
		  CPPRD(x2518,1);
		  x2520=x2518;
		  FRPRD(x2506,1);}}}
	       if(ISTGPRD(x2520,1)){
		{OBJ x2522=FLD(x2520,2);
		 if(EXPRD(x2520,1)){
		  FREE(FLD(x2520,1),1);DSPRDF(x2520);
		 }else{
		  CPPRD(x2522,1);
		  FRPRD(x2520,1);}
		 {OBJ x2523;OBJ x2524;
		  PRD(3,7,x2523);FLD(x2523,1)=x2522;FLD(x2523,2)=x2517;FLD(x2523,3)=x2509;
		  x2524=_ATransDec_28(x2523,x2497);
		  r=_ATransDec_31(x1,x2488,x2524);}}
	       }else{
		HLT("Ac at <unknown> : undefined selection repr\'Ac:exp->denotation");}}}
	    }else{
	     FREE(x2506,1);
	     {OBJ x2527;
	      if(ISPRM(x2487)){
	       HLT("Seq at <unknown> : undefined selection ft\'Seq:seq->data");
	      }else{
	       {OBJ x2525=FLD1(x2487,1);
		if(EXPRD(x2487,1)){
		 x2527=x2525;
		 FREE(FLD1(x2487,2),1);DSPRDF(x2487);
		}else{
		 CPPRD(x2525,1);
		 x2527=x2525;
		 FRPRD(x2487,1);}}}
	      if(ISTGPRD(x2527,1)){
	       {OBJ x2529=FLD(x2527,2);
		if(EXPRD(x2527,1)){
		 FREE(FLD(x2527,1),1);DSPRDF(x2527);
		}else{
		 CPPRD(x2529,1);
		 FRPRD(x2527,1);}
		if(ISTGPRD(x2515,2)){
		 {OBJ x2531=FLD(x2515,2);
		  if(EXPRD(x2515,1)){
		   CPPRD(x2531,1);
		   FREE(FLD(x2515,1),1);DSPRDF(x2515);
		  }else{
		   CPPRD(x2531,2);
		   FRPRD(x2515,1);}
		  {OBJ x2532;OBJ x2533;OBJ x2534;
		   PRD(3,8,x2532);FLD(x2532,1)=x2529;FLD(x2532,2)=x2531;FLD(x2532,3)=x2509;
		   x2533=_ATransDec_29(x2531,x2497);
		   x2534=_ATransDec_28(x2532,x2533);
		   r=_ATransDec_31(x1,x2488,x2534);}}
		}else{
		 HLT("Ac at <unknown> : undefined selection ide\'Ac:exp->ide");}}
	      }else{
	       HLT("Ac at <unknown> : undefined selection repr\'Ac:exp->denotation");}}}}
	  }else{
	   COPY(x2487,1);
	   CPCLS(__AAc_68,1);
	   {OBJ x2535;
	    x2535=_ASeqMap_3(__AAc_68,x2487);
	    if(ISTGPRD(x2486,2)){
	     {OBJ x2537=FLD(x2486,2);
	      CPPRD(x2537,1);
	      COPY(x2535,1);
	      CPCLS(__ATransDec_29,1);
	      {OBJ x2538;
	       x2538=_ASeqReduce_3(__ATransDec_29,x2497,x2535);
	       if(ISTGPRD(x2537,0)){
		{OBJ x2540=FLD(x2537,2);
		 CPPRD(x2490,1);
		 CPPRD(x2537,1);
		 {OBJ x2541;OBJ x2542;OBJ x2543;OBJ x2544;OBJ x2549;OBJ x2579;
		  x2541=_AAcFun_10(x2490,x2537);
		  CPPRD(x2541,1);
		  ANat_76(x2540,__ABuiltin_1,x2542);
		  x2543=_AAc_22(x2541);
		  if(ISTGPRM(x2542,1)){
		   x2544=__ABUILTIN_3;
		  }else{
		   x2544=__ABUILTIN_5;}
		  if(ISTGPRM(x2544,1)){
		   {OBJ x2545=FLD1(x2489,1);
		    CPPRD(x2545,1);
		    if(EXPRD(x2489,1)){
		     DSPRD(x2489);
		    }else{
		     DCPRD(x2489,1);}
		    CPPRD(__ATransDec_58,1);
		    {OBJ x2548;
		     x2548=_AOcOptions_14(__ATransDec_58,x2545);
		     if(ISTGPRM(x2548,1)){
		      if(EXPRD(x2486,1)){
		       DSPRD(x2486);
		      }else{
		       DCPRD(x2486,1);}
		      FREE(x2487,1);
		      x2549=__ABUILTIN_5;
		     }else{
		      x2549=_ATransDec_33(x2486,x2487);}}}
		  }else{
		   if(EXPRD(x2486,1)){
		    DSPRD(x2486);
		   }else{
		    DCPRD(x2486,1);}
		   FREE(x2487,1);
		   FRPRD(x2489,1);
		   x2549=__ABUILTIN_3;}
		  if(ISTGPRM(x2549,1)){
		   x2579=__ABUILTIN_3;
		  }else{
		   if(ISPRM(x2543)){
		    if(ISTGPRD(x2541,3)){
		     {OBJ x2554=FLD(x2541,4);
		      COPY(x2535,1);
		      {OBJ x2555;
		       x2555=_ASeq_52(x2535,__ANat_5);
		       ANat_76(x2554,x2555,x2579);}}
		    }else{
		     x2579=__ABUILTIN_3;}
		   }else{
		    {OBJ x2558=FLD1(x2543,3);
		     COPY(x2558,1);
		     {OBJ x2565;OBJ x2567;
		      if(ISPRD(x2558)&&(ISTGPRD(x2558,1))){
		       x2565=__ABUILTIN_5;
		      }else{
		       x2565=__ABUILTIN_3;}
		      if(ISTGPRM(x2565,1)){
		       x2567=__ABUILTIN_5;
		      }else{
		       if(ISPRD(x2558)&&(ISTGPRD(x2558,2))){
			x2567=__ABUILTIN_5;
		       }else{
			x2567=__ABUILTIN_3;}}
		      if(ISTGPRM(x2567,1)){
		       COPY(x2535,1);
		       {OBJ x2568;OBJ x2573;
			x2568=_ASeq_52(x2535,__ANat_5);
			if(ISPRD(x2558)&&(ISTGPRD(x2558,1))){
			 {OBJ x2570=FLD(x2558,2);
			  x2573=x2570;
			  if(EXPRD(x2558,1)){
			   DSPRDF(x2558);
			  }else{
			   DCPRD(x2558,1);}}
			}else{
			 if(ISPRD(x2558)&&(ISTGPRD(x2558,2))){
			  {OBJ x2572=FLD(x2558,1);
			   x2573=x2572;
			   if(EXPRD(x2558,1)){
			    DSPRDF(x2558);
			   }else{
			    DCPRD(x2558,1);}}
			 }else{
			  HLT("OptimAn at <unknown> : undefined selection rank\'OptimAn:optimAn->nat");}}
			ANat_76(x2573,x2568,x2579);}
		      }else{
		       FREE(x2558,1);
		       if(ISTGPRD(x2541,3)){
			{OBJ x2577=FLD(x2541,4);
			 COPY(x2535,1);
			 {OBJ x2578;
			  x2578=_ASeq_52(x2535,__ANat_5);
			  ANat_76(x2577,x2578,x2579);}}
		       }else{
			x2579=__ABUILTIN_3;}}}}}}
		  if(ISTGPRM(x2579,1)){
		   if(ISTGPRD(x2541,3)){
		    if(EXPRD(x2537,1)){
		     DSPRDF(x2537);
		    }else{
		     DCPRD(x2537,1);}
		    CPCLS(__ATypeAnFun_9,1);
		    {OBJ x2584;OBJ x2585;OBJ x2586;
		     x2584=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATypeAnFun_9,1))(__ATypeAnFun_9,x2490);
		     CPCLS(x2584,1);
		     x2585=_ATypeAnFun_4(x2541);
		     x2586=_ATypeAnFun_8(x2584,x2585);
		     if(ISPRD(x2586)&&(ISTGPRD(x2586,3))){
		      {OBJ x2588=FLD(x2586,2);FLAG x_x2586=EXPRD(x2586,1);
		       if(x_x2586){
		       }else{
			COPY(x2588,1);}
		       {OBJ x2589;
			x2589=_ATypeAnFun_8(x2584,x2588);
			if(ISPRD(x2589)&&(ISTGPRD(x2589,2))){
			 {OBJ x2590=FLD(x2589,1);
			  if(EXPRD(x2589,1)){
			   DSPRDF(x2589);
			  }else{
			   COPY(x2590,1);
			   FRPRD(x2589,1);}
			  FREE(x2543,1);
			  if(ISPRM(x2590)){
			   if(x_x2586){
			    FREE(FLD(x2586,1),1);DSPRDF(x2586);
			   }else{
			    FRPRD(x2586,1);}
			   {OBJ x2593;OBJ x2594;OBJ x2595;
			    if(ISPRM(x2492)){
			     HLT("Seq at <unknown> : undefined selection ft\'Seq:seq->data");
			    }else{
			     {OBJ x2591=FLD1(x2492,1);
			      CPPRD(x2591,1);
			      x2593=x2591;
			      if(EXPRD(x2492,1)){
			       DSPRD(x2492);
			      }else{
			       DCPRD(x2492,1);}
			      COPY(__ATransDec_59,1);}}
			    PRD(3,11,x2594);FLD(x2594,1)=__ATransDec_59;FLD(x2594,2)=x2535;FLD(x2594,3)=x2593;
			    x2595=_ATransDec_28(x2594,x2538);
			    r=_ATransDec_31(x1,x2488,x2595);}
			  }else{
			   if(EXPRD(x2590,1)){
			    DSPRD(x2590);
			   }else{
			    DCPRD(x2590,1);}
			   {OBJ x2598;OBJ x2599;
			    if(x_x2586){
			     RPRD(x2586,x2598);CHGTG(x2598,4);FREE(FLD(x2598,1),1);FLD(x2598,1)=x2535;FLD(x2598,2)=x2492;
			    }else{
			     FRPRD(x2586,1);PRD(2,4,x2598);FLD(x2598,1)=x2535;FLD(x2598,2)=x2492;}
			    x2599=_ATransDec_28(x2598,x2538);
			    r=_ATransDec_31(x1,x2488,x2599);}}}
			}else{
			 FREE(x2589,1);
			 {OBJ x2602;
			  if(ISPRM(x2492)){
			   HLT("Seq at <unknown> : undefined selection ft\'Seq:seq->data");
			  }else{
			   {OBJ x2600=FLD1(x2492,1);
			    CPPRD(x2600,1);
			    x2602=x2600;
			    if(EXPRD(x2492,1)){
			     DSPRD(x2492);
			    }else{
			     DCPRD(x2492,1);}}}
			  if(ISPRM(x2543)){
			   HLT("TransAn at <unknown> : undefined selection store\'TransAn:transAn->store");
			  }else{
			   {OBJ x2606=FLD1(x2543,4);
			    if(EXPRD(x2543,1)){
			     FLD1(x2543,4)=NIL;DSPRD(x2543);
			    }else{
			     COPY(x2606,1);
			     FRPRD(x2543,1);}
			    if(ISPRD(x2606)&&(ISTGPRD(x2606,1))){
			     {OBJ x2609=FLD(x2606,1);
			      if(EXPRD(x2606,1)){
			       DSPRDF(x2606);
			      }else{
			       COPY(x2609,1);
			       FRPRD(x2606,1);}
			      {OBJ x2612;OBJ x2621;OBJ x2622;OBJ x2623;
			       if(ISPRD(x2609)&&(ISTGPRD(x2609,6))){
				x2612=__ABUILTIN_5;
			       }else{
				x2612=__ABUILTIN_3;}
			       if(ISTGPRM(x2612,1)){
				CPPRD(x1,1);
				COPY(x2535,1);
				CPCLS(__ATransDec_26,1);
				{OBJ x2613;OBJ x2614;OBJ x2615;
				 x2613=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_26,1))(__ATransDec_26,x1);
				 x2614=_ASeqMap_3(x2613,x2535);
				 x2615=_AStore_17(x2609);
				 if(x_x2586){
				  RPRD(x2586,x2621);CHGTG(x2621,6);FREE(FLD(x2621,1),1);FLD(x2621,1)=x2615;FLD(x2621,2)=x2614;
				 }else{
				  FRPRD(x2586,1);PRD(2,6,x2621);FLD(x2621,1)=x2615;FLD(x2621,2)=x2614;}}
			       }else{
				if(ISPRD(x2609)&&(ISTGPRD(x2609,5))){
				 CPPRD(x1,1);
				 COPY(x2535,1);
				 CPCLS(__ATransDec_26,1);
				 {OBJ x2618;OBJ x2619;OBJ x2620;
				  x2618=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_26,1))(__ATransDec_26,x1);
				  x2619=_ASeqMap_3(x2618,x2535);
				  x2620=_AStore_17(x2609);
				  if(x_x2586){
				   RPRD(x2586,x2621);CHGTG(x2621,5);FREE(FLD(x2621,1),1);FLD(x2621,1)=x2620;FLD(x2621,2)=x2619;
				  }else{
				   FRPRD(x2586,1);PRD(2,5,x2621);FLD(x2621,1)=x2620;FLD(x2621,2)=x2619;}}
				}else{
				 HLT("TransDec at <257,36-258,72> : missing else in trans\'TransDec:inh->exp->syn");}}
			       PRD(3,11,x2622);FLD(x2622,1)=x2621;FLD(x2622,2)=x2535;FLD(x2622,3)=x2602;
			       x2623=_ATransDec_28(x2622,x2538);
			       r=_ATransDec_31(x1,x2488,x2623);}}
			    }else{
			     HLT("TransAn at <unknown> : undefined selection store\'TransAn:transAn->store");}}}}}}}
		     }else{
		      HLT("TypeAn at <unknown> : undefined selection res\'TypeAn:type->type");}}
		   }else{
		    FRPRD(x2490,1);
		    FRPRD(x2541,1);
		    FREE(x2543,1);
		    CPPRD(x2537,1);
		    {OBJ x2624;OBJ x2625;OBJ x2626;
		     PRD(3,5,x2624);FLD(x2624,1)=x2537;FLD(x2624,2)=x2535;FLD(x2624,3)=x2492;
		     x2625=_ATransDec_30(x2537,x2538);
		     x2626=_ATransDec_28(x2624,x2625);
		     r=_ATransDec_31(x1,x2488,x2626);}}
		  }else{
		   FRPRD(x2490,1);
		   FRPRD(x2541,1);
		   FREE(x2543,1);
		   CPPRD(x2537,1);
		   {OBJ x2627;OBJ x2628;OBJ x2629;
		    PRD(3,6,x2627);FLD(x2627,1)=x2537;FLD(x2627,2)=x2535;FLD(x2627,3)=x2492;
		    x2628=_ATransDec_29(x2537,x2538);
		    x2629=_ATransDec_28(x2627,x2628);
		    r=_ATransDec_31(x1,x2488,x2629);}}}}
	       }else{
		if(EXPRD(x2486,1)){
		 DSPRD(x2486);
		}else{
		 DCPRD(x2486,1);}
		FREE(x2487,1);
		FRPRD(x2489,1);
		FRPRD(x2490,1);
		CPPRD(x2537,1);
		{OBJ x2631;OBJ x2632;OBJ x2633;
		 PRD(3,6,x2631);FLD(x2631,1)=x2537;FLD(x2631,2)=x2535;FLD(x2631,3)=x2492;
		 x2632=_ATransDec_29(x2537,x2538);
		 x2633=_ATransDec_28(x2631,x2632);
		 r=_ATransDec_31(x1,x2488,x2633);}}}}
	    }else{
	     HLT("Ac at <unknown> : undefined selection ide\'Ac:exp->ide");}}}}}}}
     }else{
      if(ISTGPRD(x2,0)){
       {OBJ x2635;
	x2635=_AAc_50(x2);
	{OBJ x2642=FLD1(x1,7);
	 COPY(x2642,1);
	 {OBJ x2650;OBJ x2644;
	  if(ISPRM(x2635)){
	   COPY(__AIdeSet_2,1);
	   x2650=__ASourceAn_28;
	  }else{
	   {OBJ x2646=FLD1(x2635,2);
	    COPY(x2646,1);
	    x2650=x2646;
	    COPY(__AIdeSet_2,1);}}
	  PRD1(3,x2644);FLD1(x2644,1)=x2642;FLD1(x2644,2)=__AIdeSet_2;FLD1(x2644,3)=__ASeq_6;
	  if(ISPRD(x2650)&&(ISTGPRD(x2650,2))){
	   {OBJ x2652=FLD(x2650,2);OBJ x2653=FLD(x2650,3);
	    if(EXPRD(x2650,1)){
	     DSPRDF(x2650);
	    }else{
	     CPPRD(x2652,1);
	     FRPRD(x2650,1);}
	    {OBJ x2654;OBJ x2655;
	     PRD(2,2,x2654);FLD(x2654,1)=x2652;FLD(x2654,2)=x2653;
	     x2655=_ATransDec_28(x2654,x2644);
	     r=_ATransDec_31(x1,x2635,x2655);}}
	  }else{
	   FREE(x2650,1);
	   COPY(__ATransDec_61,1);
	   {OBJ x2656;
	    x2656=_ATransDec_28(__ATransDec_61,x2644);
	    r=_ATransDec_31(x1,x2635,x2656);}}}}}
      }else{
       HLT("TransDec at <178,5-9> : missing else in trans\'TransDec:inh->exp->syn");}}}}}
  break;}
 return r;}

extern OBJ _ATransDec_33(OBJ x1,OBJ x2) /* lazyApply? */
{OBJ r;
 FRPRD(x1,1);
 if(ISPRM(x2)){
  r=__ABUILTIN_3;
 }else{
  {OBJ x35=FLD1(x2,1);OBJ x36=FLD1(x2,2);
   if(EXPRD(x2,1)){
    DSPRDF(x2);
   }else{
    CPPRD(x35,1);COPY(x36,1);
    FRPRD(x2,1);}
   if(ISTGPRD(x35,2)){
    {OBJ x38=FLD(x35,2);
     if(EXPRD(x35,1)){
      FREE(FLD(x35,1),1);DSPRDF(x35);
     }else{
      CPPRD(x38,1);
      FRPRD(x35,1);}
     if(ISPRM(x36)){
      CPCLS(__ATransDec_56,1);
      {OBJ x39;
       x39=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_56,1))(__ATransDec_56,__ABUILTIN_20);
       r=_AIde_13(x38,x39);}
     }else{
      if(EXPRD(x36,1)){
       DSPRD(x36);
      }else{
       DCPRD(x36,1);}
      FRPRD(x38,1);
      r=__ABUILTIN_3;}}
   }else{
    FRPRD(x35,1);
    FREE(x36,1);
    r=__ABUILTIN_3;}}}
 return r;}

extern OBJ _ATransDec_34(OBJ x1,OBJ x2) /* sortBinds */
{OBJ r;
 CPCLS(__ATransDec_57,1);
 {OBJ x3;
  x3=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_57,1))(__ATransDec_57,x1);
  r=_ASeqSort_2(x3,x2);}
 return r;}

extern TUP2 _ATransDec_35(register OBJ x1,register OBJ x2,register OBJ x3) /* transBlock */
{TUP2 r;
 for(;;){
  if(ISPRM(x2)){
   {OBJ x371;
    x371=_ATransDec_32(x1,x3);
    {OBJ x372=FLD1(x371,1);OBJ x373=FLD1(x371,2);OBJ x374=FLD1(x371,3);
     COPY(x372,1);COPY(x373,1);COPY(x374,1);
     {OBJ x377;
      if(ISPRM(x374)){
       HLT("Seq at <unknown> : undefined selection ft\'Seq:seq->data");
      }else{
       {OBJ x375=FLD1(x374,1);
	COPY(x375,1);
	x377=x375;}}
      if(ISPRD(x377)&&(ISTGPRD(x377,13))){
       {OBJ x378=FLD(x377,1);OBJ x379=FLD(x377,2);
	if(EXPRD(x377,1)){
	 DSPRDF(x377);
	}else{
	 COPY(x378,1);COPY(x379,1);
	 FRPRD(x377,1);}
	if(EXPRD(x371,1)){
	 DSPRD(x371);
	}else{
	 DCPRD(x371,1);}
	{OBJ x382;OBJ x384;
	 if(ISPRM(x374)){
	  HLT("Seq at <unknown> : undefined selection rt\'Seq:seq->seq");
	 }else{
	  {OBJ x381=FLD1(x374,2);
	   if(EXPRD(x374,1)){
	    r.c2=x378;x382=x381;
	    FREE(FLD1(x374,1),1);DSPRDF(x374);
	   }else{
	    COPY(x381,1);
	    r.c2=x378;x382=x381;
	    FRPRD(x374,1);}}}
	 PRD1(3,r.c1);FLD1(r.c1,1)=x372;FLD1(r.c1,2)=x373;
	 FLD1(r.c1,3)=_ASeq_26(x379,x382);}}
      }else{
       r.c1=x371;
       FREE(x372,1);
       FREE(x373,1);
       FREE(x374,1);
       FREE(x377,1);
       r.c2=__ASeq_6;}}}}
  }else{
   {OBJ x385=FLD1(x2,1);OBJ x386=FLD1(x2,2);FLAG x_x2=EXPRD(x2,1);
    if(x_x2){
    }else{
     CPPRD(x385,1);COPY(x386,1);}
    if(ISTGPRD(x385,2)){
     {OBJ x390=FLD(x385,4);
      CPPRD(x390,1);
      {OBJ x391=FLD1(x1,1);OBJ x392=FLD1(x1,2);OBJ x393=FLD1(x1,3);OBJ x395=FLD1(x1,5);OBJ x396=FLD1(x1,6);OBJ x398=FLD1(x1,8);
       CPPRD(x391,1);CPPRD(x392,2);CPPRD(x393,1);COPY(x395,1);COPY(x396,1);COPY(x398,1);
       CPPRD(x385,3);
       CPCLS(__ATypeAnFun_9,1);
       {OBJ x399;OBJ x400;OBJ x401;OBJ x402;OBJ x403;
	x399=_ATypeAnFun_4(x385);
	x400=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATypeAnFun_9,1))(__ATypeAnFun_9,x392);
	x401=_AAc_21(x385);
	x402=_AAc_22(x385);
	x403=_ATypeAnFun_8(x400,x399);
	if(ISPRD(x403)&&(ISTGPRD(x403,2))){
	 if(x_x2){
	  DSPRDF(x2);
	 }else{
	  FRPRD(x2,1);}
	 if(EXPRD(x403,1)){
	  FREE(FLD(x403,1),1);DSPRDF(x403);
	 }else{
	  DCPRD(x403,1);}
	 if(EXPRD(x385,1)){
	  DSPRD(x385);
	 }else{
	  DCPRD(x385,1);}
	 FRPRD(x391,1);
	 FRPRD(x392,1);
	 FRPRD(x393,1);
	 FREE(x395,1);
	 FREE(x396,1);
	 FREE(x398,1);
	 FREE(x402,1);
	 {OBJ x405;
	  x405=_ATransDec_23(x401,x390,x1);
	  x1=x405;x2=x386;continue;}
	}else{
	 FREE(x403,1);
	 CPPRD(x1,1);
	 {TUP2 x407;TUP2 x410;
	  x407=_ATransDec_39(x1,x385);
	  CPPRD(x407.c1,1);
	  x410=_ATransDec_35(x407.c1,x386,x3);
	  {OBJ x412=FLD1(x410.c1,1);OBJ x413=FLD1(x410.c1,2);OBJ x414=FLD1(x410.c1,3);
	   COPY(x412,2);COPY(x413,1);COPY(x414,1);
	   CPPRD(x401,1);
	   CPCLS(__AIde_14,1);
	   {OBJ x415;
	    x415=_ABag_48(__AIde_14,x401,x412);
	    if(ISTGPRM(x415,1)){
	     if(EXPRD(x410.c1,1)){
	      DSPRD(x410.c1);
	     }else{
	      DCPRD(x410.c1,1);}
	     {OBJ x416;OBJ x417;TUP2 x420;OBJ x422;OBJ x423;
	      if(x_x2){
	       RSOME(x2,x416);FLD1(x416,1)=x407.c2;FLD1(x416,2)=x410.c2;
	      }else{
	       FRPRD(x2,1);PRD1(2,x416);FLD1(x416,1)=x407.c2;FLD1(x416,2)=x410.c2;}
	      PRD1(2,x417);FLD1(x417,1)=x401;FLD1(x417,2)=__ASeq_6;
	      COPY(x417,1);
	      x420=_ATransDec_38(x407.c1,x412,x417);
	      PRD1(8,x422);FLD1(x422,1)=x391;FLD1(x422,2)=x392;FLD1(x422,3)=x393;FLD1(x422,4)=x417;FLD1(x422,5)=x395;FLD1(x422,6)=x396;FLD1(x422,7)=x420.c1;FLD1(x422,8)=x398;
	      x423=_ATransDec_32(x422,x390);
	      {OBJ x424;OBJ x425=FLD1(x423,2);OBJ x426=FLD1(x423,3);FLAG x_x423=EXPRD(x423,1);
	       if(x_x423){
	       }else{
		x424=FLD1(x423,1);COPY(x424,1);COPY(x425,1);COPY(x426,1);}
	       r.c2=x416;
	       CPCLS(__AIde_14,1);
	       {OBJ x427;OBJ x428;OBJ x429;OBJ x430;
		x427=_ASetByBST_41(__AIde_14,x425,x413);
		x428=_ASeq_26(x426,x420.c2);
		x429=_ASeq_26(x428,x414);
		if(x_x423){
		 RSOME(x423,x430);FLD1(x430,2)=x427;FLD1(x430,3)=x429;
		}else{
		 FRPRD(x423,1);PRD1(3,x430);FLD1(x430,1)=x424;FLD1(x430,2)=x427;FLD1(x430,3)=x429;}
		r.c1=_ATransDec_31(x1,x402,x430);}}}
	    }else{
	     if(x_x2){
	      DSPRDF(x2);
	     }else{
	      FRPRD(x2,1);}
	     r.c1=x410.c1;r.c2=x410.c2;
	     if(EXPRD(x1,1)){
	      DSPRD(x1);
	     }else{
	      DCPRD(x1,1);}
	     FRPRD(x390,1);
	     FRPRD(x391,1);
	     FRPRD(x392,1);
	     FRPRD(x393,1);
	     FREE(x395,1);
	     FREE(x396,1);
	     FREE(x398,1);
	     FRPRD(x401,1);
	     FREE(x402,1);
	     FRPRD(x407.c1,1);
	     FRPRD(x407.c2,1);
	     FREE(x412,1);
	     FREE(x413,1);
	     FREE(x414,1);}}}}}}}}
    }else{
     HLT("TransDec at <309,7-16> : missing else in transBlock\'TransDec:inh**seq**exp->syn**seq");}}}
  break;}
 return r;}
extern OBJ _ATransDec_35_c(OBJ x1,OBJ x2,OBJ x3) /* transBlock */
{OBJ r;
 {TUP2 t=_ATransDec_35(x1,x2,x3);
  PRD1(2,r);
  FLD1(r,1)=t.c1;
  FLD1(r,2)=t.c2;}
 return r;}

extern OBJ _ATransDec_36(OBJ x1,OBJ x2,OBJ x3) /* fuseBlocks */
{OBJ r;
 if(ISPRM(x3)){
  PRD(2,13,r);FLD(r,1)=x1;FLD(r,2)=x2;
 }else{
  CPPRD(x3,1);
  {OBJ x36;
   x36=_ASeq_38(x3);
   if(ISPRD(x36)&&(ISTGPRD(x36,13))){
    {OBJ x37=FLD(x36,1);OBJ x38=FLD(x36,2);
     if(EXPRD(x36,1)){
      {OBJ x39;OBJ x40;OBJ x41;
       x39=_ASeq_34(x3);
       x40=_ASeq_26(x39,x38);
       x41=_ASeq_26(x1,x37);
       RPRD(x36,r);FLD(r,1)=x41;
       FLD(r,2)=_ASeq_26(x2,x40);}
     }else{
      COPY(x37,1);COPY(x38,1);
      {OBJ x39;OBJ x40;OBJ x41;
       x39=_ASeq_34(x3);
       x40=_ASeq_26(x39,x38);
       x41=_ASeq_26(x1,x37);
       FRPRD(x36,1);PRD(2,13,r);FLD(r,1)=x41;
       FLD(r,2)=_ASeq_26(x2,x40);}}}
   }else{
    FREE(x36,1);
    {
     PRD(2,13,r);FLD(r,1)=x1;
     FLD(r,2)=_ASeq_26(x2,x3);}}}}
 return r;}

extern OBJ _ATransDec_37(OBJ x1,OBJ x2) /* delayBind */
{OBJ r;
 CPPRD(x1,1);
 {OBJ x3;
  x3=_AAc_21(x1);
  if(ISTGPRD(x1,2)){
   {OBJ x7=FLD(x1,4);
    if(EXPRD(x1,1)){
     FLD(x1,4)=NIL;DSPRD(x1);
    }else{
     CPPRD(x7,1);
     FRPRD(x1,1);}
    {OBJ x8;
     x8=x7;
     r=_ATransDec_23(x3,x8,x2);}}
  }else{
   HLT("Ac at <unknown> : undefined selection def\'Ac:dec->exp");}}
 return r;}

extern TUP2 _ATransDec_38(register OBJ x1,register OBJ x2,register OBJ x3) /* genCopyOrFree */
{TUP2 r;OBJ* p1=&r.c1;OBJ* p2=&r.c2;
 for(;;){
  if(ISPRM(x3)){
   FRPRD(x1,1);
   *p1=x2;*p2=__ASeq_6;
  }else{
   {OBJ x36=FLD1(x3,1);OBJ x37=FLD1(x3,2);FLAG x_x3=EXPRD(x3,1);
    if(x_x3){
     CPPRD(x36,1);
    }else{
     CPPRD(x36,2);COPY(x37,1);}
    COPY(x2,1);
    CPCLS(__AIde_14,1);
    {OBJ x39;OBJ x40;
     x39=_ABag_49(__AIde_14,x36,x2);
     ANat_76(x39,__ANat_5,x40);
     if(ISTGPRM(x40,1)){
      CPPRD(x1,1);
      CPPRD(x36,1);
      {OBJ x41;OBJ x43;
       x41=_ATransDec_26(x1,x36);
       PRD(3,10,x43);FLD(x43,1)=x36;FLD(x43,2)=x41;FLD(x43,3)=__ANat_8;
       if(x_x3){
	RSOME(x3,*p2);FLD1(*p2,1)=x43;
       }else{
	FRPRD(x3,1);PRD1(2,*p2);FLD1(*p2,1)=x43;}
       x3=x37;p2=&FLD1(*p2,2);continue;}
     }else{
      {OBJ x47;
       ANat_76(x39,__ANat_8,x47);
       if(ISTGPRM(x47,1)){
	if(x_x3){
	 DSPRDF(x3);
	}else{
	 FRPRD(x3,1);}
	CPCLS(__AIde_14,1);
	{OBJ x48;
	 x48=_ABag_42(__AIde_14,x36,x2);
	 x2=x48;x3=x37;continue;}
       }else{
	CPPRD(x1,1);
	CPPRD(x36,2);
	CPCLS(__AIde_14,1);
	{OBJ x49;OBJ x50;OBJ x51;OBJ x53;
	 x49=_ABag_43(__AIde_14,x36,x2);
	 x50=_ATransDec_26(x1,x36);
	 ANat_4(x39,x51);
	 PRD(3,9,x53);FLD(x53,1)=x36;FLD(x53,2)=x50;FLD(x53,3)=x51;
	 if(x_x3){
	  RSOME(x3,*p2);FLD1(*p2,1)=x53;
	 }else{
	  FRPRD(x3,1);PRD1(2,*p2);FLD1(*p2,1)=x53;}
	 x2=x49;x3=x37;p2=&FLD1(*p2,2);continue;}}}}}}}
  break;}
 return r;}
extern OBJ _ATransDec_38_c(OBJ x1,OBJ x2,OBJ x3) /* genCopyOrFree */
{OBJ r;
 {TUP2 t=_ATransDec_38(x1,x2,x3);
  PRD1(2,r);
  FLD1(r,1)=t.c1;
  FLD1(r,2)=t.c2;}
 return r;}

extern TUP2 _ATransDec_39(OBJ x1,OBJ x2) /* genVar */
{TUP2 r;
 CPPRD(x2,1);
 {OBJ x12;OBJ x13;
  x12=_ATypeAnFun_4(x2);
  x13=_AAc_21(x2);
  {OBJ x4=FLD1(x1,2);
   CPPRD(x4,1);
   CPPRD(x13,1);
   {OBJ x11;OBJ x14;
    x11=x4;
    x14=_ATransType_2(x11,x12);
    COPY(x14,1);
    PRD(2,0,r.c2);FLD(r.c2,1)=x13;FLD(r.c2,2)=x14;
    r.c1=_ATransDec_22(x13,x14,x1);}}}
 return r;}
extern OBJ _ATransDec_39_c(OBJ x1,OBJ x2) /* genVar */
{OBJ r;
 {TUP2 t=_ATransDec_39(x1,x2);
  PRD1(2,r);
  FLD1(r,1)=t.c1;
  FLD1(r,2)=t.c2;}
 return r;}

extern TUP3 _ATransDec_40(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5) /* transMatches */
{TUP3 r;
 if(ISPRM(x3)){
  {OBJ x155;OBJ x152;OBJ x153;
   if(ISTGPRD(x4,0)){
    CPPRD(x1,2);
    CPPRD(x2,1);
    x155=__ABUILTIN_5;
   }else{
    CPPRD(x1,2);
    CPPRD(x2,1);
    x155=__ABUILTIN_3;}
   x152=_ATransDec_26(x1,x2);
   x153=_ATransDec_32(x1,x4);
   {OBJ x156=FLD1(x153,1);OBJ x157=FLD1(x153,2);OBJ x158=FLD1(x153,3);
    if(EXPRD(x153,1)){
     DSPRDF(x153);
    }else{
     COPY(x156,1);COPY(x157,1);COPY(x158,1);
     FRPRD(x153,1);}
    if(ISTGPRM(x155,1)){
     r.c2=x157;
     FRPRD(x1,1);
     FREE(x156,1);
     {OBJ x159;
      PRD(2,13,x159);FLD(x159,1)=__ASeq_6;FLD(x159,2)=x158;
      PRD(4,14,r.c3);FLD(r.c3,1)=x2;FLD(r.c3,2)=x152;FLD(r.c3,3)=__ASeq_6;FLD(r.c3,4)=x159;
      r.c1=x5;}
    }else{
     r.c2=x157;
     CPPRD(x1,1);
     CPPRD(x2,1);
     COPY(x156,2);
     CPCLS(__ATransDec_43,1);
     CPCLS(__ATransDec_44,1);
     CPCLS(__AIde_14,2);
     {OBJ x161;OBJ x162;OBJ x164;OBJ x165;OBJ x166;OBJ x167;OBJ x168;OBJ x169;OBJ x170;
      x161=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_44,1))(__ATransDec_44,x1);
      x162=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_43,1))(__ATransDec_43,x1);
      r.c1=_ATransDec_41(x2,x5,x156);
      COPY(r.c1,2);
      x164=_ABag_45(__AIde_14,x156,r.c1);
      x165=_ABag_45(__AIde_14,r.c1,x156);
      x166=_ASeqMap_3(x161,x164);
      x167=_ASeqMap_3(x162,x165);
      x168=_ASeq_26(x166,x158);
      x169=_ASeq_26(x167,x168);
      PRD(2,13,x170);FLD(x170,1)=__ASeq_6;FLD(x170,2)=x169;
      PRD(4,14,r.c3);FLD(r.c3,1)=x2;FLD(r.c3,2)=x152;FLD(r.c3,3)=__ASeq_6;FLD(r.c3,4)=x170;}}}}
 }else{
  {OBJ x172=FLD1(x3,1);OBJ x173=FLD1(x3,2);FLAG x_x3=EXPRD(x3,1);
   if(x_x3){
   }else{
    CPPRD(x172,1);COPY(x173,1);}
   CPPRD(x1,1);
   CPPRD(x2,2);
   CPCLS(__ATransDec_43,1);
   CPCLS(__ATransDec_44,1);
   {TUP4 x176;OBJ x180;OBJ x181;OBJ x182;
    x176=_ATransDec_45(x1,x2,x172);
    CPPRD(x176.c1,1);
    COPY(x176.c2,1);
    x180=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_43,1))(__ATransDec_43,x176.c1);
    x181=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_44,1))(__ATransDec_44,x176.c1);
    x182=_ATransDec_41(x2,x5,x176.c2);
    {OBJ x183=FLD1(x176.c4,1);OBJ x184=FLD1(x176.c4,2);OBJ x185=FLD1(x176.c4,3);OBJ x186=FLD1(x176.c4,4);FLAG x_x176_c4=EXPRD(x176.c4,1);
     if(x_x176_c4){
     }else{
      COPY(x183,1);COPY(x184,1);COPY(x185,1);COPY(x186,1);}
     CPPRD(x2,1);
     COPY(x176.c2,1);
     CPCLS(__AIde_14,3);
     {TUP3 x188;OBJ x191;OBJ x192;OBJ x193;OBJ x194;
      x188=_ATransDec_40(x1,x2,x173,x4,x182);
      COPY(x188.c1,2);
      COPY(x188.c3,1);
      x191=_ABag_45(__AIde_14,x176.c2,x188.c1);
      x192=_ABag_45(__AIde_14,x188.c1,x176.c2);
      x193=_ASetByBST_41(__AIde_14,x176.c3,x188.c2);
      x194=_AIc_89(x188.c3);
      if(ISPRD(x188.c3)&&(ISTGPRD(x188.c3,14))){
       {OBJ x197=FLD(x188.c3,3);OBJ x198;
	if(EXPRD(x188.c3,1)){
	 r.c1=x188.c1;r.c2=x193;
	 {OBJ x199;OBJ x200;OBJ x201;OBJ x202;OBJ x203;OBJ x204;
	  x199=_ASeqMap_3(x180,x192);
	  x200=_ASeqMap_3(x181,x191);
	  x201=_ASeq_26(x200,x186);
	  x202=_ASeq_26(x199,x201);
	  if(x_x176_c4){
	   RSOME(x176.c4,x203);FLD1(x203,4)=x202;
	  }else{
	   FRPRD(x176.c4,1);PRD1(4,x203);FLD1(x203,1)=x183;FLD1(x203,2)=x184;FLD1(x203,3)=x185;FLD1(x203,4)=x202;}
	  if(x_x3){
	   RSOME(x3,x204);FLD1(x204,1)=x203;FLD1(x204,2)=x197;
	  }else{
	   FRPRD(x3,1);PRD1(2,x204);FLD1(x204,1)=x203;FLD1(x204,2)=x197;}
	  RPRD(x188.c3,r.c3);FRPRD(FLD(r.c3,1),1);FLD(r.c3,1)=x2;FREE(FLD(r.c3,2),1);FLD(r.c3,2)=x194;FLD(r.c3,3)=x204;}
	}else{
	 x198=FLD(x188.c3,4);COPY(x197,1);COPY(x198,1);
	 r.c1=x188.c1;r.c2=x193;
	 {OBJ x199;OBJ x200;OBJ x201;OBJ x202;OBJ x203;OBJ x204;
	  x199=_ASeqMap_3(x180,x192);
	  x200=_ASeqMap_3(x181,x191);
	  x201=_ASeq_26(x200,x186);
	  x202=_ASeq_26(x199,x201);
	  if(x_x176_c4){
	   RSOME(x176.c4,x203);FLD1(x203,4)=x202;
	  }else{
	   FRPRD(x176.c4,1);PRD1(4,x203);FLD1(x203,1)=x183;FLD1(x203,2)=x184;FLD1(x203,3)=x185;FLD1(x203,4)=x202;}
	  if(x_x3){
	   RSOME(x3,x204);FLD1(x204,1)=x203;FLD1(x204,2)=x197;
	  }else{
	   FRPRD(x3,1);PRD1(2,x204);FLD1(x204,1)=x203;FLD1(x204,2)=x197;}
	  FRPRD(x188.c3,1);PRD(4,14,r.c3);FLD(r.c3,1)=x2;FLD(r.c3,2)=x194;FLD(r.c3,3)=x204;FLD(r.c3,4)=x198;}}}
      }else{
       HLT("Ic at <unknown> : undefined selection matches\'Ic:stm->seq");}}}}}}
 return r;}
extern OBJ _ATransDec_40_c(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5) /* transMatches */
{OBJ r;
 {TUP3 t=_ATransDec_40(x1,x2,x3,x4,x5);
  PRD1(3,r);
  FLD1(r,1)=t.c1;
  FLD1(r,2)=t.c2;
  FLD1(r,3)=t.c3;}
 return r;}

extern OBJ _ATransDec_41(OBJ x1,OBJ x2,OBJ x3) /* joinUsage */
{OBJ r;
 CPCLS(__ATransDec_42,1);
 CPCLS(__AIde_14,2);
 COPY(x2,1);
 COPY(x3,1);
 {OBJ x4;OBJ x5;OBJ x6;
  x4=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ))METHOD(__ATransDec_42,3))(__ATransDec_42,x1,x2,x3);
  x5=_ABag_44(__AIde_14,x2,x3);
  x6=_ASeqReduce_3(x4,__ASeq_6,x5);
  r=_ABagConv_6(__AIde_14,x6);}
 return r;}

extern OBJ _ATransDec_42(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5) /* join */
{OBJ r;
 {OBJ x25=FLD1(x4,1);FLAG x_x4=EXPRD(x4,1);
  if(x_x4){
   CPPRD(x25,1);
  }else{
   CPPRD(x25,2);}
  {OBJ x27;
   x27=_AIde_13(x25,x1);
   if(ISTGPRM(x27,1)){
    FREE(x2,1);
    FREE(x3,1);
    {OBJ x28;
     if(x_x4){
      RSOME(x4,x28);FLD1(x28,2)=__ANat_8;
     }else{
      FRPRD(x4,1);PRD1(2,x28);FLD1(x28,1)=x25;FLD1(x28,2)=__ANat_8;}
     PRD1(2,r);FLD1(r,1)=x28;FLD1(r,2)=x5;}
   }else{
    {OBJ x34;OBJ x29;OBJ x30;OBJ x35;
     if(ISTGPRD(x25,1)){
      CPPRD(x25,2);
      CPCLS(__AIde_14,2);
      x34=__ABUILTIN_5;
     }else{
      CPPRD(x25,2);
      CPCLS(__AIde_14,2);
      x34=__ABUILTIN_3;}
     x29=_ABag_49(__AIde_14,x25,x3);
     x30=_ABag_49(__AIde_14,x25,x2);
     ANat_72(x30,x29,x35);
     if(ISTGPRM(x34,1)){
      {OBJ x36;OBJ x37;
       ANat_73(x35,__ANat_8,x36);
       if(x_x4){
	RSOME(x4,x37);FLD1(x37,2)=x36;
       }else{
	FRPRD(x4,1);PRD1(2,x37);FLD1(x37,1)=x25;FLD1(x37,2)=x36;}
       PRD1(2,r);FLD1(r,1)=x37;FLD1(r,2)=x5;}
     }else{
      {OBJ x38;
       ANat_76(x35,__ANat_5,x38);
       if(ISTGPRM(x38,1)){
	if(x_x4){
	 DSPRDF(x4);
	}else{
	 FRPRD(x4,1);}
	FRPRD(x25,1);
	r=x5;
       }else{
	{OBJ x39;
	 if(x_x4){
	  RSOME(x4,x39);FLD1(x39,2)=x35;
	 }else{
	  FRPRD(x4,1);PRD1(2,x39);FLD1(x39,1)=x25;FLD1(x39,2)=x35;}
	 PRD1(2,r);FLD1(r,1)=x39;FLD1(r,2)=x5;}}}}}}}}
 return r;}

extern OBJ _ATransDec_43(OBJ x1,OBJ x2) /* genFree */
{OBJ r;
 {OBJ x10=FLD1(x2,1);OBJ x11=FLD1(x2,2);
  if(EXPRD(x2,1)){
   CPPRD(x10,1);
   DSPRDF(x2);
  }else{
   CPPRD(x10,2);
   FRPRD(x2,1);}
  {
   PRD(3,10,r);FLD(r,1)=x10;FLD(r,3)=x11;
   FLD(r,2)=_ATransDec_26(x1,x10);}}
 return r;}

extern OBJ _ATransDec_44(OBJ x1,OBJ x2) /* genCopy */
{OBJ r;
 {OBJ x10=FLD1(x2,1);OBJ x11=FLD1(x2,2);
  if(EXPRD(x2,1)){
   CPPRD(x10,1);
   DSPRDF(x2);
  }else{
   CPPRD(x10,2);
   FRPRD(x2,1);}
  {
   PRD(3,9,r);FLD(r,1)=x10;FLD(r,3)=x11;
   FLD(r,2)=_ATransDec_26(x1,x10);}}
 return r;}

extern TUP4 _ATransDec_45(OBJ x1,OBJ x2,OBJ x3) /* transMatch */
{TUP4 r;
 CPCLS(__ATransDec_48,1);
 CPPRD(x2,1);
 {OBJ x25;
  x25=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransDec_48,1))(__ATransDec_48,x2);
  {OBJ x71=FLD1(x3,1);OBJ x72=FLD1(x3,2);OBJ x73=FLD1(x3,3);
   if(EXPRD(x3,1)){
    DSPRDF(x3);
   }else{
    CPPRD(x71,1);COPY(x72,1);CPPRD(x73,1);
    FRPRD(x3,1);}
   {OBJ x110=FLD1(x1,2);OBJ x115=FLD1(x1,7);
    CPPRD(x110,1);COPY(x115,1);
    CPPRD(x1,1);
    CPPRD(x2,1);
    COPY(x72,2);
    CPCLS(__ATransDec_49,1);
    {OBJ x117;OBJ x118;OBJ x119;OBJ x120;OBJ x121;OBJ x122;OBJ x123;
     x117=_ATransAnFun_3(x110,x71);
     COPY(x117,2);
     x118=_ATransDec_22(x2,x117,x1);
     x119=_AStore_17(x117);
     x120=_ASeqReduce_3(__ATransDec_49,x118,x72);
     PRD1F(2,x121);FLD1(x121,1)=x119;FLD1(x121,2)=__ASeq_6;
     x122=_ASeqReduce_3(x25,x120,x72);
     CPPRD(x122,1);
     x123=_ATransDec_32(x122,x73);
     {OBJ x124=FLD1(x123,1);OBJ x125=FLD1(x123,2);OBJ x126=FLD1(x123,3);
      if(EXPRD(x123,1)){
       COPY(x124,1);
       r.c1=x122;r.c3=x125;
       DSPRDF(x123);
      }else{
       COPY(x124,2);COPY(x125,1);COPY(x126,1);
       r.c1=x122;r.c3=x125;
       FRPRD(x123,1);}
      CPPRD(r.c1,1);
      CPCLS(__ATransDec_46,1);
      CPCLS(__AIde_14,1);
      {OBJ x127;OBJ x128;OBJ x129;
       x127=_ABag_44(__AIde_14,x124,x115);
       x128=_ATransDec_47(x1,x127,x2);
       x129=(*(OBJ(*)(OBJ,OBJ,OBJ))METHOD(__ATransDec_46,2))(__ATransDec_46,r.c1,x128);
       PRD1(4,r.c4);FLD1(r.c4,1)=x121;FLD1(r.c4,2)=x117;FLD1(r.c4,4)=x126;
       {TUP2 t=_ASeqMapEnv_4(x129,x124,x72);
	r.c2=t.c1;
	FLD1(r.c4,3)=t.c2;}}}}}}}
 return r;}
extern OBJ _ATransDec_45_c(OBJ x1,OBJ x2,OBJ x3) /* transMatch */
{OBJ r;
 {TUP4 t=_ATransDec_45(x1,x2,x3);
  PRD1(4,r);
  FLD1(r,1)=t.c1;
  FLD1(r,2)=t.c2;
  FLD1(r,3)=t.c3;
  FLD1(r,4)=t.c4;}
 return r;}

extern TUP2 _ATransDec_46(OBJ x1,OBJ x2,OBJ x3,OBJ x4) /* genSel */
{TUP2 r;
 if(ISTGPRD(x4,0)){
  COPY(x3,1);
  CPCLS(__AIde_14,1);
  {OBJ x19;OBJ x20;OBJ x21;OBJ x22;
   x19=_AAc_21(x4);
   CPPRD(x19,2);
   x20=_ABag_49(__AIde_14,x19,x3);
   x21=_ATransDec_26(x1,x19);
   ANat_81(x20,__ANat_5,x22);
   if(ISTGPRM(x22,1)){
    {OBJ x23;OBJ x24;
     if(ISTGPRM(x2,1)){
      CPPRD(x19,1);
      CPCLS(__AIde_14,1);
      x23=__ABUILTIN_3;
     }else{
      CPPRD(x19,1);
      CPCLS(__AIde_14,1);
      x23=__ABUILTIN_5;}
     x24=_ABag_43(__AIde_14,x19,x3);
     if(ISTGPRM(x23,1)){
      r.c1=x24;
      PRD(3,2,r.c2);FLD(r.c2,1)=x19;FLD(r.c2,2)=x21;FLD(r.c2,3)=x20;
     }else{
      r.c1=x24;
      PRD(3,1,r.c2);FLD(r.c2,1)=x19;FLD(r.c2,2)=x21;FLD(r.c2,3)=x20;}}
   }else{
    PRD(2,0,r.c2);FLD(r.c2,1)=x19;FLD(r.c2,2)=x21;
    r.c1=x3;}}
 }else{
  HLT("TransDec at <504,7-12> : missing else in genSel\'TransDec:inh**bool->ideBag**dec->ideBag**sel");}
 return r;}
extern OBJ _ATransDec_46_c(OBJ x1,OBJ x2,OBJ x3,OBJ x4) /* genSel */
{OBJ r;
 {TUP2 t=_ATransDec_46(x1,x2,x3,x4);
  PRD1(2,r);
  FLD1(r,1)=t.c1;
  FLD1(r,2)=t.c2;}
 return r;}

extern OBJ _ATransDec_47(register OBJ x1,register OBJ x2,register OBJ x3) /* checkSharedSel */
{OBJ r;
 for(;;){
  CPCLS(__AIde_14,1);
  COPY(x2,1);
  CPPRD(x3,1);
  {OBJ x4;OBJ x5;
   x4=_ABag_49(__AIde_14,x3,x2);
   ANat_81(x4,__ANat_5,x5);
   if(ISTGPRM(x5,1)){
    FRPRD(x1,1);
    FREE(x2,1);
    FRPRD(x3,1);
    r=__ABUILTIN_5;
   }else{
    {OBJ x13=FLD1(x1,8);
     COPY(x13,1);
     CPCLS(__AIde_14,1);
     {OBJ x14;OBJ x15;
      x14=x13;
      x15=_AMap_33(__AIde_14,x14,x3);
      if(ISPRM(x15)){
       if(EXPRD(x1,1)){
	DSPRD(x1);
       }else{
	DCPRD(x1,1);}
       FREE(x2,1);
       r=__ABUILTIN_3;
      }else{
       {OBJ x20=FLD1(x15,1);
	if(EXPRD(x15,1)){
	 DSPRDF(x15);
	}else{
	 CPPRD(x20,1);
	 FRPRD(x15,1);}
	x3=x20;continue;}}}}}}
  break;}
 return r;}

extern OBJ _ATransDec_48(OBJ x1,OBJ x2,OBJ x3) /* genOrigin */
{OBJ r;
 if(ISTGPRD(x2,0)){
  {OBJ x37;
   x37=_AAc_21(x2);
   {OBJ x38;OBJ x39;OBJ x40;OBJ x41;OBJ x42;OBJ x43;OBJ x44;OBJ x45=FLD1(x3,8);
    if(EXPRD(x3,1)){
     CPCLS(__AIde_14,1);
     {
      RSOME(x3,r);
      FLD1(r,8)=_AMap_31(__AIde_14,x37,x1,x45);}
    }else{
     x38=FLD1(x3,1);x39=FLD1(x3,2);x40=FLD1(x3,3);x41=FLD1(x3,4);x42=FLD1(x3,5);x43=FLD1(x3,6);x44=FLD1(x3,7);CPPRD(x38,1);CPPRD(x39,1);CPPRD(x40,1);COPY(x41,1);COPY(x42,1);COPY(x43,1);COPY(x44,1);COPY(x45,1);
     CPCLS(__AIde_14,1);
     {
      FRPRD(x3,1);PRD1(8,r);FLD1(r,1)=x38;FLD1(r,2)=x39;FLD1(r,3)=x40;FLD1(r,4)=x41;FLD1(r,5)=x42;FLD1(r,6)=x43;FLD1(r,7)=x44;
      FLD1(r,8)=_AMap_31(__AIde_14,x37,x1,x45);}}}}
 }else{
  HLT("TransDec at <530,9-17> : missing else in genOrigin\'TransDec:ide->dec**inh->inh");}
 return r;}

extern OBJ _ATransDec_49(OBJ x1,OBJ x2) /* genStore */
{OBJ r;
 if(ISTGPRD(x1,0)){
  CPPRD(x1,1);
  {OBJ x20;OBJ x21;
   x20=_ATypeAnFun_4(x1);
   x21=_AAc_21(x1);
   {OBJ x23=FLD1(x2,2);
    CPPRD(x23,1);
    {OBJ x30;
     x30=_ATransType_2(x23,x20);
     r=_ATransDec_22(x21,x30,x2);}}}
 }else{
  HLT("TransDec at <536,5-12> : missing else in genStore\'TransDec:dec**inh->inh");}
 return r;}

extern OBJ _ATransDec_51(register OBJ x1,register OBJ x2,register OBJ x3) /* resultStores */
{OBJ r;
 for(;;){
  CPCLS(__ATypeAnFun_9,1);
  CPPRD(x1,1);
  {OBJ x4;OBJ x5;
   x4=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATypeAnFun_9,1))(__ATypeAnFun_9,x1);
   CPCLS(x4,1);
   x5=_ATypeAnFun_8(x4,x2);
   if(ISPRD(x5)&&(ISTGPRD(x5,3))){
    {OBJ x41=FLD(x5,1);OBJ x42=FLD(x5,2);
     if(EXPRD(x5,1)){
      DSPRDF(x5);
     }else{
      COPY(x41,1);COPY(x42,1);
      FRPRD(x5,1);}
     {OBJ x43;OBJ x44;
      x43=_ASeq_52(x41,__ANat_5);
      ANat_81(x43,x3,x44);
      if(ISTGPRM(x44,1)){
       FRPRD(x1,1);
       FRCLS(x4,1);
       FREE(x42,1);
       COPY(__ATransDec_62,1);
       r=__ATransDec_62;
      }else{
       {OBJ x45;
	ANat_80(x43,x3,x45);
	if(ISTGPRM(x45,1)){
	 FRCLS(x4,1);
	 {OBJ x46;
	  ANat_62(x3,x43,x46);
	  x2=x42;x3=x46;continue;}
	}else{
	 {OBJ x47;
	  x47=_ATypeAnFun_8(x4,x42);
	  if(ISPRD(x47)&&(ISTGPRD(x47,2))){
	   {OBJ x48=FLD(x47,1);
	    if(EXPRD(x47,1)){
	     DSPRDF(x47);
	    }else{
	     COPY(x48,1);
	     FRPRD(x47,1);}
	    CPCLS(__ATransType_2,1);
	    {OBJ x49;
	     x49=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransType_2,1))(__ATransType_2,x1);
	     r=_ASeqMap_3(x49,x48);}}
	  }else{
	   {
	    PRD1(2,r);FLD1(r,2)=__ASeq_6;
	    FLD1(r,1)=_ATransType_2(x1,x47);}}}}}}}}
   }else{
    FRPRD(x1,1);
    FRCLS(x4,1);
    FREE(x5,1);
    COPY(__ATransDec_63,1);
    r=__ATransDec_63;}}
  break;}
 return r;}

extern OBJ _ATransDec_52(OBJ x1,OBJ x2) /* genGlobalCopy */
{OBJ r;
 {OBJ x10=FLD1(x2,1);OBJ x11=FLD1(x2,2);
  if(EXPRD(x2,1)){
   CPPRD(x10,1);
   DSPRDF(x2);
  }else{
   CPPRD(x10,2);
   FRPRD(x2,1);}
  {
   PRD(3,9,r);FLD(r,1)=x10;FLD(r,3)=x11;
   FLD(r,2)=_ATransDec_26(x1,x10);}}
 return r;}

extern OBJ _ATransDec_53(OBJ x1,OBJ x2) /* genStoreP */
{OBJ r;
 {OBJ x9=FLD1(x1,1);OBJ x10=FLD1(x1,2);
  if(EXPRD(x1,1)){
   DSPRDF(x1);
  }else{
   CPPRD(x9,1);COPY(x10,1);
   FRPRD(x1,1);}
  r=_ATransDec_22(x9,x10,x2);}
 return r;}

extern OBJ _ATransDec_54(OBJ x1) /* Ksome */
{OBJ r;
 r=__AStore_32;
 return r;}

extern OBJ _ATransDec_55(OBJ x1) /* icMode */
{OBJ r;
 switch(TGPRM(x1)){
  case 2:
   r=__AIc_17;break;
  case 0:
   r=__AIc_21;break;
  default: 
   r=__AIc_19;}
 return r;}

extern OBJ _ATransDec_56(OBJ x1) /* lazyApply?'56 */
{OBJ r;
 r=_ABuiltin_18(__ANat_5);
 return r;}

extern OBJ _ATransDec_57(OBJ x1,OBJ x2,OBJ x3) /* sortBinds'57 */
{OBJ r;
 FRPRD(x2,1);
 if(ISTGPRD(x3,2)){
  {OBJ x71=FLD(x3,4);
   if(EXPRD(x3,1)){
    FLD(x3,4)=NIL;DSPRD(x3);
   }else{
    CPPRD(x71,1);
    FRPRD(x3,1);}
   if(ISTGPRD(x71,3)){
    {OBJ x73=FLD(x71,2);
     if(EXPRD(x71,1)){
      FLD(x71,2)=NIL;DSPRD(x71);
     }else{
      CPPRD(x73,1);
      FRPRD(x71,1);}
     if(ISTGPRD(x73,2)){
      {OBJ x76=FLD(x73,2);
       if(EXPRD(x73,1)){
	FREE(FLD(x73,1),1);DSPRDF(x73);
       }else{
	CPPRD(x76,1);
	FRPRD(x73,1);}
       {OBJ x79=FLD1(x1,3);
	if(EXPRD(x1,1)){
	 FLD1(x1,3)=NIL;DSPRD(x1);
	}else{
	 CPPRD(x79,1);
	 FRPRD(x1,1);}
	r=_AIde_13(x76,x79);}}
     }else{
      FRPRD(x1,1);
      FRPRD(x73,1);
      r=__ABUILTIN_3;}}
   }else{
    FRPRD(x1,1);
    FRPRD(x71,1);
    r=__ABUILTIN_3;}}
 }else{
  HLT("Ac at <unknown> : undefined selection def\'Ac:dec->exp");}
 return r;}

extern OBJ _ATransDec_64(OBJ x1) /* transDec'64 */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _ATransDec_66(OBJ x1) /* transDec'66 */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _ATransDec_67(OBJ x1) /* transImportDec'67 */
{OBJ r;
 r=x1;
 return r;}






static OBJ _mt_5_0_3(OBJ t,OBJ t1,OBJ t2,OBJ t3) 
{OBJ r;
 DPCLS(t,r);
 INCCLS(r,0,3);
 FLDCLS(r,1)=t1;
 FLDCLS(r,2)=t2;
 FLDCLS(r,3)=t3;
 return r;}

static OBJ _mt_5_3_2(OBJ t,OBJ t1,OBJ t2) 
{OBJ r;
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  COPY(FLDCLS(t,1),1);
  COPY(FLDCLS(t,2),1);
  COPY(FLDCLS(t,3),1);
  DCCLS(t,1);}
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),FLDCLS(t,3),t1,t2);
 return r;}

init_ATransDec()
{
 static int visited=0; if(visited) return; visited=1;
 init_ASeqSort();
 init_ASeqMap();
 init_ASeqReduce();
 init_ASeqZip();
 init_APreparedOptions();
 init_ASeqMapEnv();
 init_AAc();
 init_AIdeBag();
 init_AIc();
 init_ATypeAnFun();
 init_AIdeSet();
 init_ATransAnFun();
 init_ANat();
 init_ASourceAnFun();
 init_ASeq();
 init_AAcFun();
 init_AIde();
 init_ABuiltin();
 init_AFormat();
 init_ATransType();
 init_AString();
 init_ATree();
 init_ACom();
 init_ABitset();
 init_AStream();
 init_AMap();
 init_AVoid();
 init_ASetByBST();
 init_AFmt();
 init_ABSTree();
 init_AOption();
 init_AArray();
 init_AChar();
 init_ABag();
 init_AFile();
 init_ABagConv();
 init_AInt();
 init_ABagFilter();
 init_ASet();
 init_ASetByBSTFilter();
 init_ANatMap();
 init_ASetByBSTConv();
 init_AStore();
 init_ABSTreeConv();
 init_ASourceAn();
 init_AMapConv();
 init_APair();
 init_ADenotation();
 init_AAn();
 init_AMapReduce();
 init_ATypeAn();
 init_AOptimAn();
 init_ATransAn();
 init_APragmaAn();
 init_AIdeMap();
 init_AOcOptions();
 CLS(3,_ATransDec_31,__ATransDec_31);
 CLS(2,_ATransDec_30,__ATransDec_30);
 CLS(2,_ATransDec_29,__ATransDec_29);
 DEN("RUNTIME ERROR: unknown source",__ATransDec_60);
 CLS(2,_ATransDec_28,__ATransDec_28);
 CLS(1,_ATransDec_27,__ATransDec_27);
 DEN("evalAll",__ATransDec_58);
 CLS(2,_ATransDec_26,__ATransDec_26);
 CLS(3,_ATransDec_57,__ATransDec_57);
 CLS(2,_ATransDec_25,__ATransDec_25);
 LCLS(1,_ATransDec_56,__ATransDec_56);
 CLS(2,_ATransDec_24,__ATransDec_24);
 CLS(3,_ATransDec_23,__ATransDec_23);
 CLS(1,_ATransDec_55,__ATransDec_55);
 CLS(3,_ATransDec_22,__ATransDec_22);
 CLS(1,_ATransDec_54,__ATransDec_54);
 CLS(2,_ATransDec_21,__ATransDec_21);
 CLS(2,_ATransDec_53,__ATransDec_53);
 CLS(3,_ATransDec_20,__ATransDec_20);
 CLS(2,_ATransDec_52,__ATransDec_52);
 CLS(1,_ATransDec_19,__ATransDec_19);
 CLS(3,_ATransDec_51,__ATransDec_51);
 CLS(1,_ATransDec_18,__ATransDec_18);
 CLS(1,_ATransDec_17,__ATransDec_17);
 CLS(2,_ATransDec_49,__ATransDec_49);
 CLS(1,_ATransDec_16,__ATransDec_16);
 CLS(3,_ATransDec_48,__ATransDec_48);
 CLS(1,_ATransDec_15,__ATransDec_15);
 CLS(3,_ATransDec_47,__ATransDec_47);
 CLS(1,_ATransDec_14,__ATransDec_14);
 CLS(4,_ATransDec_46_c,__ATransDec_46);
 CLS(1,_ATransDec_13,__ATransDec_13);
 CLS(3,_ATransDec_45_c,__ATransDec_45);
 CLS(1,_ATransDec_12,__ATransDec_12);
 CLS(2,_ATransDec_44,__ATransDec_44);
 CLS(1,_ATransDec_11,__ATransDec_11);
 CLS(2,_ATransDec_43,__ATransDec_43);
 CLS(8,_ATransDec_10,__ATransDec_10);
 CLS(5,_ATransDec_42,__ATransDec_42);
 CLS(3,_ATransDec_41,__ATransDec_41);
 CLS(1,_ATransDec_8,__ATransDec_8);
 CLS(5,_ATransDec_40_c,__ATransDec_40);
 CLS(1,_ATransDec_7,__ATransDec_7);
 CLS(2,_ATransDec_39_c,__ATransDec_39);
 CLS(1,_ATransDec_6,__ATransDec_6);
 CLS(3,_ATransDec_38_c,__ATransDec_38);
 CLS(1,_ATransDec_5,__ATransDec_5);
 CLS(2,_ATransDec_37,__ATransDec_37);
 CLS(3,_ATransDec_4,__ATransDec_4);
 CLS(3,_ATransDec_36,__ATransDec_36);
 CLS(1,_ATransDec_67,__ATransDec_67);
 CLS(3,_ATransDec_35_c,__ATransDec_35);
 CLS(1,_ATransDec_66,__ATransDec_66);
 CLS(3,_ATransDec_2,__ATransDec_2);
 CLS(2,_ATransDec_34,__ATransDec_34);
 CLS(3,_ATransDec_1_c,__ATransDec_1);
 CLS(2,_ATransDec_33,__ATransDec_33);
 CLS(1,_ATransDec_64,__ATransDec_64);
 CLS(2,_ATransDec_32,__ATransDec_32);
 MTH(5,0,3,_mt_5_0_3);LZYMTH(5,0,3,_mt_5_0_3);
 MTH(5,3,2,_mt_5_3_2);LZYMTH(5,3,2,_mt_5_3_2);
 PRDF(1,3,__ATransDec_59);FLD(__ATransDec_59,1)=__ANat_5;
 CPPRD(__ATransDec_60,1);
 PRD(2,2,__ATransDec_61);FLD(__ATransDec_61,1)=__ATransDec_60;FLD(__ATransDec_61,2)=__ASourceAn_2;
 PRD1F(2,__ATransDec_62);FLD1(__ATransDec_62,1)=__AStore_12;FLD1(__ATransDec_62,2)=__ASeq_6;
 PRD1F(2,__ATransDec_63);FLD1(__ATransDec_63,1)=__AStore_32;FLD1(__ATransDec_63,2)=__ASeq_6;
 PRD1F(2,__ATransDec_65);FLD1(__ATransDec_65,1)=__AStore_22;FLD1(__ATransDec_65,2)=__ASeq_6;}

