

#include "BUILTIN.h"
extern OBJ _ATripleMap_7(OBJ,OBJ,OBJ,OBJ);OBJ __ATripleMap_7; /* * */

extern OBJ _ATripleMap_7(OBJ x1,OBJ x2,OBJ x3,OBJ x4) /* * */
{OBJ r;
 {OBJ x20=FLD1(x4,1);OBJ x21=FLD1(x4,2);OBJ x22=FLD1(x4,3);
  if(EXPRD(x4,1)){
   {OBJ x23;OBJ x24;OBJ x25;
    x23=(*(OBJ(*)(OBJ,OBJ))METHOD(x3,1))(x3,x22);
    x24=(*(OBJ(*)(OBJ,OBJ))METHOD(x2,1))(x2,x21);
    x25=(*(OBJ(*)(OBJ,OBJ))METHOD(x1,1))(x1,x20);
    RSOME(x4,r);FLD1(r,1)=x25;FLD1(r,2)=x24;FLD1(r,3)=x23;}
  }else{
   COPY(x20,1);COPY(x21,1);COPY(x22,1);
   {OBJ x23;OBJ x24;OBJ x25;
    x23=(*(OBJ(*)(OBJ,OBJ))METHOD(x3,1))(x3,x22);
    x24=(*(OBJ(*)(OBJ,OBJ))METHOD(x2,1))(x2,x21);
    x25=(*(OBJ(*)(OBJ,OBJ))METHOD(x1,1))(x1,x20);
    FRPRD(x4,1);PRD1(3,r);FLD1(r,1)=x25;FLD1(r,2)=x24;FLD1(r,3)=x23;}}}
 return r;}

static OBJ _mt_4_0_4(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4) 
{OBJ r;
 DCCLS(t,1);
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ))ENTRY(t))(t1,t2,t3,t4);
 return r;}

init_ATripleMap()
{
 static int visited=0; if(visited) return; visited=1;
 init_ATriple();
 CLS(4,_ATripleMap_7,__ATripleMap_7);
 MTH(4,0,4,_mt_4_0_4);LZYMTH(4,0,4,_mt_4_0_4);}

