

#include "BUILTIN.h"

#include "Bitset.h"
extern OBJ _AGlobSig_55(OBJ);extern OBJ __AGlobSig_55;
extern OBJ __AInterOpal_57;
extern OBJ _AInterOpal_275(OBJ);extern OBJ __AInterOpal_275;
extern OBJ __AInterOpal_296;
extern OBJ __AInterOpal_298;
extern OBJ __AInterOpal_300;
extern OBJ __AInterOpal_302;
extern OBJ _AInterOpal_309(OBJ,OBJ);extern OBJ __AInterOpal_309;
extern OBJ _AInterOpal_310(OBJ,OBJ);extern OBJ __AInterOpal_310;
extern OBJ _AInterOpal_314(OBJ,OBJ);extern OBJ __AInterOpal_314;
extern OBJ _AInterOpal_315(OBJ,OBJ);extern OBJ __AInterOpal_315;
extern OBJ _ADArray_20(OBJ,OBJ);extern OBJ __ADArray_20;

#include "Nat.h"
extern OBJ _AOcOptions_7(OBJ);extern OBJ __AOcOptions_7;
extern OBJ _AOcOptions_8(OBJ);extern OBJ __AOcOptions_8;
extern OBJ _AOcOptions_9(OBJ);extern OBJ __AOcOptions_9;
extern OBJ _AOcOptions_10(OBJ);extern OBJ __AOcOptions_10;

#include "Array.h"
extern OBJ __AOcPos_2;
extern OBJ __AOcPos_9;
extern OBJ _AOcPos_20(OBJ);extern OBJ __AOcPos_20;
extern OBJ _AOcPos_21(OBJ);extern OBJ __AOcPos_21;
extern OBJ _AOcPos_24(OBJ);extern OBJ __AOcPos_24;
extern OBJ __AOcPos_35;
extern OBJ __ASeq_6;
extern OBJ _ASeq_26(OBJ,OBJ);extern OBJ __ASeq_26;
extern OBJ _AAnalyzedGlobSig_41(OBJ,OBJ);extern OBJ __AAnalyzedGlobSig_41;

#include "Denotation.h"

#include "Char.h"
extern OBJ _AMap_31(OBJ,OBJ,OBJ,OBJ);extern OBJ __AMap_31;

#include "Int.h"
extern OBJ _ABaseGeneration_1(OBJ);OBJ __ABaseGeneration_1; /* globSig2Part */
extern OBJ _ABaseGeneration_2(OBJ);OBJ __ABaseGeneration_2; /* rep2Ident */
extern OBJ _ABaseGeneration_3(OBJ);OBJ __ABaseGeneration_3; /* rep2LawIdent */
extern OBJ _ABaseGeneration_4(OBJ,OBJ);OBJ __ABaseGeneration_4; /* = */
extern OBJ _ABaseGeneration_5(OBJ,OBJ);OBJ __ABaseGeneration_5; /* =,1 */
extern OBJ _ABaseGeneration_6(OBJ,OBJ);OBJ __ABaseGeneration_6; /* =,2 */
extern OBJ _ABaseGeneration_7(OBJ,OBJ,OBJ);OBJ __ABaseGeneration_7; /* updateStruct */
extern OBJ _ABaseGeneration_8(OBJ,OBJ,OBJ);OBJ __ABaseGeneration_8; /* updateInst */
extern OBJ _ABaseGeneration_9(OBJ,OBJ,OBJ);OBJ __ABaseGeneration_9; /* updateOnlys */
extern OBJ _ABaseGeneration_10(OBJ,OBJ);OBJ __ABaseGeneration_10; /* updateObject */
extern OBJ _ABaseGeneration_11(OBJ,OBJ);OBJ __ABaseGeneration_11; /* updateProp */
extern OBJ _ABaseGeneration_12(OBJ,OBJ);OBJ __ABaseGeneration_12; /* updateObjPos */
extern OBJ _ABaseGeneration_13(OBJ,OBJ);OBJ __ABaseGeneration_13; /* updatePragmas */
extern OBJ _ABaseGeneration_14(OBJ,OBJ);OBJ __ABaseGeneration_14; /* addPragma */
extern OBJ _ABaseGeneration_15(OBJ,OBJ);OBJ __ABaseGeneration_15; /* structPos */
extern OBJ _ABaseGeneration_16(OBJ,OBJ);OBJ __ABaseGeneration_16; /* importPos */
extern OBJ _ABaseGeneration_17(OBJ,OBJ);OBJ __ABaseGeneration_17; /* pos */
extern OBJ _ABaseGeneration_18(OBJ,OBJ,OBJ);OBJ __ABaseGeneration_18; /* pos,1 */
extern OBJ _ABaseGeneration_19(OBJ);OBJ __ABaseGeneration_19; /* pos,2 */
OBJ __ABaseGeneration_20; /* importPos'20 */
extern OBJ _ABaseGeneration_21(OBJ);OBJ __ABaseGeneration_21; /* importPos'21 */
extern OBJ _ABaseGeneration_22(OBJ);OBJ __ABaseGeneration_22; /* importPos'22 */

extern OBJ _ABaseGeneration_1(OBJ x1) /* globSig2Part */
{OBJ r;
 CPPRD(x1,1);
 {OBJ x2;
  x2=_AOcOptions_7(x1);
  if(ISTGPRM(x2,1)){
   FRPRD(x1,1);
   r=__AInterOpal_302;
  }else{
   CPPRD(x1,1);
   {OBJ x3;
    x3=_AOcOptions_8(x1);
    if(ISTGPRM(x3,1)){
     FRPRD(x1,1);
     r=__AInterOpal_298;
    }else{
     CPPRD(x1,1);
     {OBJ x4;
      x4=_AOcOptions_9(x1);
      if(ISTGPRM(x4,1)){
       FRPRD(x1,1);
       r=__AInterOpal_300;
      }else{
       {OBJ x5;
	x5=_AOcOptions_10(x1);
	if(ISTGPRM(x5,1)){
	 r=__AInterOpal_296;
	}else{
	 HLT("BaseGeneration at <31,12-34,40> : missing else in globSig2Part\'BaseGeneration:options->part");}}}}}}}}
 return r;}

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

extern OBJ _ABaseGeneration_3(OBJ x1) /* rep2LawIdent */
{OBJ r;
 {OBJ x2=FLD1(x1,1);
  if(EXPRD(x1,1)){
   FRPRD(FLD1(x1,2),1);DSPRDF(x1);
  }else{
   FRPRD(x1,1);}
  {OBJ x5;
   x5=x2;
   ANat_61(x5,__ANat_55,r);}}
 return r;}

extern OBJ _ABaseGeneration_4(OBJ x1,OBJ x2) /* = */
{OBJ r;
 COPY(x1,1);
 COPY(x2,1);
 {OBJ x3;
  x3=_AInterOpal_314(x1,x2);
  if(ISTGPRM(x3,1)){
   FREE(x1,1);
   FREE(x2,1);
   r=__ABUILTIN_3;
  }else{
   {OBJ x4;
    x4=_AInterOpal_314(x2,x1);
    if(ISTGPRM(x4,1)){
     r=__ABUILTIN_3;
    }else{
     r=__ABUILTIN_5;}}}}
 return r;}

extern OBJ _ABaseGeneration_5(OBJ x1,OBJ x2) /* =,1 */
{OBJ r;
 r=_ABaseGeneration_6(x1,x2);
 return r;}

extern OBJ _ABaseGeneration_6(OBJ x1,OBJ x2) /* =,2 */
{OBJ r;
 CPPRD(x1,1);
 CPPRD(x2,1);
 {OBJ x3;
  x3=_AInterOpal_309(x1,x2);
  if(ISTGPRM(x3,1)){
   FRPRD(x1,1);
   FRPRD(x2,1);
   r=__ABUILTIN_3;
  }else{
   {OBJ x4;
    x4=_AInterOpal_309(x2,x1);
    if(ISTGPRM(x4,1)){
     r=__ABUILTIN_3;
    }else{
     r=__ABUILTIN_5;}}}}
 return r;}

extern OBJ _ABaseGeneration_7(OBJ x1,OBJ x2,OBJ x3) /* updateStruct */
{OBJ r;
 {OBJ x11;OBJ x12=FLD1(x3,2);
  if(EXPRD(x3,1)){
   CPCLS(__AInterOpal_314,1);
   {
    RSOME(x3,r);
    FLD1(r,2)=_AMap_31(__AInterOpal_314,x1,x2,x12);}
  }else{
   x11=FLD1(x3,1);COPY(x12,1);
   CPCLS(__AInterOpal_314,1);
   {
    FRPRD(x3,1);PRD1(2,r);FLD1(r,1)=x11;
    FLD1(r,2)=_AMap_31(__AInterOpal_314,x1,x2,x12);}}}
 return r;}

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

extern OBJ _ABaseGeneration_9(OBJ x1,OBJ x2,OBJ x3) /* updateOnlys */
{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(__AInterOpal_315,1);
   {
    RSOME(x3,r);
    FLD1(r,5)=_AMap_31(__AInterOpal_315,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);COPY(x77,1);COPY(x78,1);CPPRD(x79,1);COPY(x80,1);COPY(x81,1);COPY(x82,1);COPY(x83,1);COPY(x84,1);
   CPCLS(__AInterOpal_315,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(__AInterOpal_315,x1,x2,x81);}}}
 return r;}

extern OBJ _ABaseGeneration_10(OBJ x1,OBJ x2) /* updateObject */
{OBJ r;
 {OBJ x84=FLD1(x2,1);OBJ x85=FLD1(x2,2);OBJ x86=FLD1(x2,3);OBJ x87=FLD1(x2,4);OBJ x88=FLD1(x2,5);OBJ x89=FLD1(x2,6);OBJ x90=FLD1(x2,7);OBJ x91=FLD1(x2,8);FLAG x_x2=EXPRD(x2,1);
  if(x_x2){
  }else{
   COPY(x84,1);COPY(x85,1);CPPRD(x86,1);COPY(x87,1);COPY(x88,1);COPY(x89,1);COPY(x90,1);COPY(x91,1);}
  {OBJ x93=FLD1(x1,2);
   CPCLS(__AInterOpal_310,1);
   {OBJ x99;
    x99=x93;
    if(x_x2){
     RSOME(x2,r);
    }else{
     FRPRD(x2,1);PRD1(8,r);FLD1(r,1)=x84;FLD1(r,2)=x85;FLD1(r,3)=x86;FLD1(r,4)=x87;FLD1(r,5)=x88;FLD1(r,7)=x90;FLD1(r,8)=x91;}
    FLD1(r,6)=_AMap_31(__AInterOpal_310,x99,x1,x89);}}}
 return r;}

extern OBJ _ABaseGeneration_11(OBJ x1,OBJ x2) /* updateProp */
{OBJ r;
 CPPRD(x1,1);
 {OBJ x75;
  x75=_AInterOpal_275(x1);
  {OBJ x77;OBJ x78;OBJ x79;OBJ x80;OBJ x81;OBJ x82;OBJ x83=FLD1(x2,7);OBJ x84;
   if(EXPRD(x2,1)){
    CPCLS(__AInterOpal_310,1);
    {
     RSOME(x2,r);
     FLD1(r,7)=_AMap_31(__AInterOpal_310,x75,x1,x83);}
   }else{
    x77=FLD1(x2,1);x78=FLD1(x2,2);x79=FLD1(x2,3);x80=FLD1(x2,4);x81=FLD1(x2,5);x82=FLD1(x2,6);x84=FLD1(x2,8);COPY(x77,1);COPY(x78,1);CPPRD(x79,1);COPY(x80,1);COPY(x81,1);COPY(x82,1);COPY(x83,1);COPY(x84,1);
    CPCLS(__AInterOpal_310,1);
    {
     FRPRD(x2,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,6)=x82;FLD1(r,8)=x84;
     FLD1(r,7)=_AMap_31(__AInterOpal_310,x75,x1,x83);}}}}
 return r;}

extern OBJ _ABaseGeneration_12(OBJ x1,OBJ x2) /* updateObjPos */
{OBJ r;
 {OBJ x60=FLD1(x2,1);OBJ x61;OBJ x62;OBJ x63;OBJ x64;OBJ x65;OBJ x66;
  if(EXPRD(x2,1)){
   {
    RSOME(x2,r);
    FLD1(r,1)=_ASeq_26(x1,x60);}
  }else{
   x61=FLD1(x2,2);x62=FLD1(x2,3);x63=FLD1(x2,4);x64=FLD1(x2,5);x65=FLD1(x2,6);x66=FLD1(x2,7);COPY(x60,1);CPPRD(x62,1);COPY(x63,1);COPY(x64,1);COPY(x65,1);COPY(x66,1);
   {
    FRPRD(x2,1);PRD1(7,r);FLD1(r,2)=x61;FLD1(r,3)=x62;FLD1(r,4)=x63;FLD1(r,5)=x64;FLD1(r,6)=x65;FLD1(r,7)=x66;
    FLD1(r,1)=_ASeq_26(x1,x60);}}}
 return r;}

extern OBJ _ABaseGeneration_13(OBJ x1,OBJ x2) /* updatePragmas */
{OBJ r;
 {OBJ x75;OBJ x76;OBJ x77;OBJ x78;OBJ x79;OBJ x80;OBJ x81;
  if(EXPRD(x2,1)){
   RSOME(x2,r);FREE(FLD1(r,8),1);FLD1(r,8)=x1;
  }else{
   x75=FLD1(x2,1);x76=FLD1(x2,2);x77=FLD1(x2,3);x78=FLD1(x2,4);x79=FLD1(x2,5);x80=FLD1(x2,6);x81=FLD1(x2,7);COPY(x75,1);COPY(x76,1);CPPRD(x77,1);COPY(x78,1);COPY(x79,1);COPY(x80,1);COPY(x81,1);
   FRPRD(x2,1);PRD1(8,r);FLD1(r,1)=x75;FLD1(r,2)=x76;FLD1(r,3)=x77;FLD1(r,4)=x78;FLD1(r,5)=x79;FLD1(r,6)=x80;FLD1(r,7)=x81;FLD1(r,8)=x1;}}
 return r;}

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

extern OBJ _ABaseGeneration_15(OBJ x1,OBJ x2) /* structPos */
{OBJ r;
 COPY(__AOcPos_35,1);
 FREE(x1,1);
 r=_ABaseGeneration_17(__AOcPos_35,x2);
 return r;}

extern OBJ _ABaseGeneration_16(OBJ x1,OBJ x2) /* importPos */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x10;OBJ x16;
  x3=_AGlobSig_55(x1);
  x4=_ADArray_20(x3,x2);
  if(ISTGPRD(x4,2)){
   x10=__ABUILTIN_5;
  }else{
   x10=__ABUILTIN_3;}
  if(ISTGPRM(x10,1)){
   FRPRD(x4,1);
   x16=__ABUILTIN_5;
  }else{
   if(ISTGPRD(x4,4)){
    if(EXPRD(x4,1)){
     DSPRD(x4);
    }else{
     DCPRD(x4,1);}
    x16=__ABUILTIN_5;
   }else{
    FRPRD(x4,1);
    x16=__ABUILTIN_3;}}
  if(ISTGPRM(x16,1)){
   CPCLS(__ABaseGeneration_21,1);
   {OBJ x17;
    x17=(*(OBJ(*)(OBJ,OBJ))METHOD(__ABaseGeneration_21,1))(__ABaseGeneration_21,__ABUILTIN_20);
    PRD1(2,r);FLD1(r,1)=x17;FLD1(r,2)=__ASeq_6;}
  }else{
   CPCLS(__ABaseGeneration_22,1);
   {OBJ x18;
    x18=(*(OBJ(*)(OBJ,OBJ))METHOD(__ABaseGeneration_22,1))(__ABaseGeneration_22,__ABUILTIN_20);
    PRD1(2,r);FLD1(r,1)=x18;FLD1(r,2)=__ASeq_6;}}}
 return r;}

extern OBJ _ABaseGeneration_17(OBJ x1,OBJ x2) /* pos */
{OBJ r;
 {OBJ x4;OBJ x3;OBJ x5;
  if(ISPRM(x1)){
   x4=__ABUILTIN_5;
  }else{
   COPY(x1,1);
   x4=__ABUILTIN_3;}
  x3=_AOcPos_24(x1);
  if(ISTGPRM(x3,1)){
   x5=__AInterOpal_302;
  }else{
   x5=x2;}
  if(ISTGPRM(x4,1)){
   FREE(x1,1);
   r=__AInterOpal_57;
  }else{
   COPY(x1,2);
   {OBJ x12;OBJ x13;
    x12=_AOcPos_20(x1);
    x13=_AOcPos_21(x1);
    if(ISPRD(x1)&&(ISTGPRD(x1,2))){
     {OBJ x34;OBJ x35;
      if(EXPRD(x1,1)){
       RPRDF(x1,r);CHGTG(r,3);FLD(r,1)=x5;FLD(r,2)=x12;FLD(r,3)=x13;
      }else{
       x34=FLD(x1,4);x35=FLD(x1,5);
       FRPRD(x1,1);PRDF(5,3,r);FLD(r,1)=x5;FLD(r,2)=x12;FLD(r,3)=x13;FLD(r,4)=x34;FLD(r,5)=x35;}}
    }else{
     FREE(x1,1);
     PRDF(3,2,r);FLD(r,1)=x5;FLD(r,2)=x12;FLD(r,3)=x13;}}}}
 return r;}

extern OBJ _ABaseGeneration_18(OBJ x1,OBJ x2,OBJ x3) /* pos,1 */
{OBJ r;
 {OBJ x4;
  x4=_AAnalyzedGlobSig_41(x1,x2);
  PRD1(2,r);FLD1(r,2)=__ASeq_6;
  FLD1(r,1)=_ABaseGeneration_17(x4,x3);}
 return r;}

extern OBJ _ABaseGeneration_19(OBJ x1) /* pos,2 */
{OBJ r;
 {OBJ x8=FLD1(x1,1);
  if(EXPRD(x1,1)){
   FREE(FLD1(x1,2),1);DSPRDF(x1);
  }else{
   FRPRD(x1,1);}
  PRDF(1,1,r);FLD(r,1)=x8;}
 return r;}

extern OBJ _ABaseGeneration_21(OBJ x1) /* importPos'21 */
{OBJ r;
 COPY(__ABaseGeneration_20,1);
 r=_ABaseGeneration_17(__ABaseGeneration_20,__AInterOpal_302);
 return r;}

extern OBJ _ABaseGeneration_22(OBJ x1) /* importPos'22 */
{OBJ r;
 r=_ABaseGeneration_17(__AOcPos_9,__AInterOpal_302);
 return r;}


init_ABaseGeneration()
{
 static int visited=0; if(visited) return; visited=1;
 init_APragma();
 init_AImpl();
 init_AGlobPragma();
 init_ABitset();
 init_AGlobSig();
 init_APatterns();
 init_AInterOpal();
 init_AAttributes();
 init_AName();
 init_ADArray();
 init_ANat();
 init_ANatMap();
 init_AOcOptions();
 init_AArray();
 init_AOcPos();
 init_APartName();
 init_ARep();
 init_AAGSig();
 init_ASeq();
 init_AAnalyzedGlobSig();
 init_AEnvIO();
 init_AOcError();
 init_ASet();
 init_ASetByBST();
 init_AOption();
 init_ABSTree();
 init_AObjects();
 init_ATree();
 init_AFct();
 init_ADenotation();
 init_AChar();
 init_AMapReduce();
 init_AMap();
 init_ASeqReduce();
 init_ADyn();
 init_ALexem();
 init_APair();
 init_AAbsyFun3();
 init_ACom();
 init_AAnalyzedGlobSigH();
 init_AStream();
 init_AGlobSigToText();
 init_AVoid();
 init_AImpDecl4SigAna();
 init_AString();
 init_AMySeqFun1();
 init_AFile();
 init_AName4SigAna();
 init_AInt();
 init_ADArrayReduce();
 init_ATable();
 init_AUniqueTable();
 init_ADeclEntry();
 init_APartNameEntry();
 init_AImpExpEntry();
 init_AGlobSigImpl();
 LCLS(1,_ABaseGeneration_22,__ABaseGeneration_22);
 LCLS(1,_ABaseGeneration_21,__ABaseGeneration_21);
 CLS(1,_ABaseGeneration_19,__ABaseGeneration_19);
 CLS(3,_ABaseGeneration_18,__ABaseGeneration_18);
 CLS(2,_ABaseGeneration_17,__ABaseGeneration_17);
 CLS(2,_ABaseGeneration_16,__ABaseGeneration_16);
 CLS(2,_ABaseGeneration_15,__ABaseGeneration_15);
 CLS(2,_ABaseGeneration_14,__ABaseGeneration_14);
 CLS(2,_ABaseGeneration_13,__ABaseGeneration_13);
 CLS(2,_ABaseGeneration_12,__ABaseGeneration_12);
 CLS(2,_ABaseGeneration_11,__ABaseGeneration_11);
 CLS(2,_ABaseGeneration_10,__ABaseGeneration_10);
 CLS(3,_ABaseGeneration_9,__ABaseGeneration_9);
 CLS(3,_ABaseGeneration_8,__ABaseGeneration_8);
 CLS(3,_ABaseGeneration_7,__ABaseGeneration_7);
 CLS(2,_ABaseGeneration_6,__ABaseGeneration_6);
 CLS(2,_ABaseGeneration_5,__ABaseGeneration_5);
 CLS(2,_ABaseGeneration_4,__ABaseGeneration_4);
 CLS(1,_ABaseGeneration_3,__ABaseGeneration_3);
 CLS(1,_ABaseGeneration_2,__ABaseGeneration_2);
 CLS(1,_ABaseGeneration_1,__ABaseGeneration_1);
 PRDF(3,1,__ABaseGeneration_20);FLD(__ABaseGeneration_20,1)=__AOcPos_2;FLD(__ABaseGeneration_20,2)=__ANat_55;FLD(__ABaseGeneration_20,3)=__ANat_55;}

