/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation.  All rights reserved. */
/* time: March 10, 1993 10:48:12 am PST */
/* C2C version: February 24, 1993 (sun4) */
/* ref-counting: off */
/* file: XlAccessImpl, module: XlAccessImpl */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [1023673773,3190855662] XlAccessImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef word (*fPt)();
typedef struct {word f0, f1;} W2;
typedef struct {word f0, f1, f2, f3, f4;} W5;
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {W8 f; W2 r;} W10;
typedef W2 *W2Pt;
#define SOURCE(p, l) /* source p, l */
static void NoName←Q984();
static void XlAccessImpl←P0();
static word GetCirioPortNum←P60();
static word NoName←Q1044();
static word GetCirioPortRope←P120();
static word Self←P180();
static word ServerNameFromProperties←P240();
static word IsArpaAddress←P300();
static word SubstituteLocalNames←P360();
static word StripDisplayNumber←P420();
static word IsLocalHost←P480();
static word DefaultServer←P540();
static word AddressFromName←P600();
static word NoName←Q1104();
static void Raise←P756();
static void NoName←Q1164();
static void NoName←Q1224();
static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\104\304\000\000"};
static struct {unsigned f; char r[24];} string2 = {1376277, "\007\000\001\002\007\020\001\002\000\007\036\002\004\003\002\004\014\016\015\003\001\000\000"};
static struct {unsigned f; char r[16];} string3 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[4];} string4 = {65537, "\001\000\000"};
static struct {unsigned f; char r[4];} string5 = {131076, "\216\251\000"};
static struct {unsigned f; char r[8];} string6 = {262152, "Host\000\000\000"};
static struct {unsigned f; char r[8];} string7 = {458760, "%g (%g)"};
static struct {unsigned f; char r[8];} string8 = {327688, "Cirio\000\000"};
static struct {unsigned f; char r[4];} string9 = {196612, "X11"};
static struct {unsigned f; char r[8];} string10 = {458760, "DISPLAY"};
static struct {unsigned f; char r[12];} string11 = {720908, "0123456789."};
static struct {unsigned f; char r[8];} string12 = {458760, "*.*.*.*"};
static struct {unsigned f; char r[12];} string13 = {589836, "localhost\000\000"};
static struct {unsigned f; char r[4];} string14 = {65540, ":\000\000"};
static struct {unsigned f; char r[8];} string15 = {262152, "unix\000\000\000"};
static struct {unsigned f; char r[12];} string16 = {589836, "127.0.0.1\000\000"};
static struct {unsigned f; char r[12];} string17 = {720908, "[127.0.0.1]"};
static struct {unsigned f; char r[8];} string18 = {262152, "Unix\000\000\000"};
static struct {unsigned f; char r[8];} string19 = {262152, "ARPA\000\000\000"};
static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\075\004\005\255\300\276\060\227\356\100\164\000\000"};
static struct {unsigned f; char r[16];} string21 = {851981, "\006\004\020\001\024\001\030\001\060\004\200\177\377\000\000"};
static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"};
static struct {unsigned f; char r[16];} string23 = {851984, "\257\300\255\053\300\023\300\142\135\315\105\100\150\000\000"};
static struct {unsigned f; char r[16];} string24 = {851984, "\257\300\314\240\077\114\300\013\241\042\210\100\150\000\000"};
static struct {unsigned f; char r[16];} string25 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"};
static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\060\265\373\245\300\074\044\062\136\100\150\000\000"};
static struct {unsigned f; char r[16];} string27 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {unsigned f; char r[12];} string28 = {720908, "\257\300kte\023\205\204\320@h"};
static struct {unsigned f; char r[16];} string29 = {851984, "\257\300\163\265\337\305\300\117\370\025\000\100\150\000\000"};
static struct {unsigned f; char r[16];} string30 = {851984, "\257\300\156\124\232\133\300\236\077\321\110\100\150\000\000"};
static struct {
   word f0[28]; word f28; word f29; word f30; 
   word f31; word f32; word f33; word f34; 
   word f35; word f36; word f37; word f38; 
   word f39; word f40; word f41; word f42; 
   word f43; word f44; word f45; word f46; 
   word f47; word f48; word f49[9]; 
   } globalframe = {
   {0}, (word) AddressFromName←P600, 0, (word) DefaultServer←P540, 
   0, (word) IsLocalHost←P480, 0, (word) StripDisplayNumber←P420, 
   0, (word) SubstituteLocalNames←P360, 0, (word) IsArpaAddress←P300, 
   0, (word) ServerNameFromProperties←P240, 0, (word) Self←P180, 
   0, (word) GetCirioPortRope←P120, 0, (word) GetCirioPortNum←P60, 
   0, (word) XlAccessImpl←P0, {0}
   };

static void NoName←Q984()
   {
   register ptr gf←c078 =  (ptr) &globalframe;
   word var←c13068;
   (* (( (ptr) gf←c078)+7) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
   (* (( (ptr) gf←c078)+8) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4);
   (* (( (ptr) gf←c078)+11) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string4);
   (*  (ptr) (( (bPt) gf←c078)+48) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+11) ), (word) &string6);
   (*  (ptr) (( (bPt) gf←c078)+52) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+8) ), (word) &string7);
   (*  (ptr) (( (bPt) gf←c078)+56) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+11) ), (word) &string8);
   (*  (ptr) (( (bPt) gf←c078)+60) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+11) ), (word) &string9);
   (*  (ptr) (( (bPt) gf←c078)+64) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+11) ), (word) &string10);
   (*  (ptr) (( (bPt) gf←c078)+68) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+8) ), (word) &string11);
   (*  (ptr) (( (bPt) gf←c078)+72) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+8) ), (word) &string12);
   (*  (ptr) (( (bPt) gf←c078)+76) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+8) ), (word) &string13);
   (*  (ptr) (( (bPt) gf←c078)+80) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+8) ), (word) &string14);
   (*  (ptr) (( (bPt) gf←c078)+84) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+8) ), (word) &string15);
   (*  (ptr) (( (bPt) gf←c078)+88) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+8) ), (word) &string16);
   (*  (ptr) (( (bPt) gf←c078)+92) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+8) ), (word) &string17);
   (*  (ptr) (( (bPt) gf←c078)+96) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+11) ), (word) &string18);
   (*  (ptr) (( (bPt) gf←c078)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+8) ), (word) &string10);
   (*  (ptr) (( (bPt) gf←c078)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c078)+11) ), (word) &string19);
   (void) XR←DeclareGlobalFrame((word) "XlAccessImpl", &globalframe, (word) XR←GetTypeIndex((word) &string20, 0, (word) &string21)
      , (word) (( (bPt) gf←c078)+192)/* var←c12460 */ );
   var←c13068 = (word) XR←ImportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string22)), 16);
   (* (( (ptr) gf←c078)+53)/* var←c12780 */  ) = var←c13068;
   (void) XR←ImportProcS(var←c13068, 67634946);
   var←c13068 = (word) XR←ImportInterface((word) "Convert", (word) XR←GetTypeIndexS((word) (&string23)), 73);
   (* (( (ptr) gf←c078)+52)/* var←c12716 */  ) = var←c13068;
   (void) XR←ImportProcS(var←c13068, 67901443);
   var←c13068 = (word) XR←ImportInterface((word) "EnvironmentVariables", (word) XR←GetTypeIndexS((word) (&string24)), 1);
   (* (( (ptr) gf←c078)+55)/* var←c12972 */  ) = var←c13068;
   (void) XR←ImportProcS(var←c13068, 67371009);
   var←c13068 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string25)), 103);
   (* (( (ptr) gf←c078)+51)/* var←c12620 */  ) = var←c13068;
   (void) XR←ImportProcS(var←c13068, 68958724);
   var←c13068 = (word) XR←ImportInterface((word) "NetworkName", (word) XR←GetTypeIndexS((word) (&string26)), 6);
   (* (( (ptr) gf←c078)+56)/* var←c13036 */  ) = var←c13068;
   (void) XR←ImportProcS(var←c13068, 135528965);
   var←c13068 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string27)), 43);
   (* (( (ptr) gf←c078)+54)/* var←c12844 */  ) = var←c13068;
   (void) XR←ImportProcS(var←c13068, 67896323);
   (void) XR←ImportProcS(var←c13068, 67373313);
   (void) XR←ImportProcS(var←c13068, 67898627);
   (void) XR←ImportProcS(var←c13068, 68160516);
   (void) XR←ImportProcS(var←c13068, 67900419);
   (void) XR←ImportProcS(var←c13068, 67900163);
   (void) XR←ImportProcS(var←c13068, 67900675);
   (void) XR←ImportProcS(var←c13068, 67634434);
   (void) XR←ImportProcS(var←c13068, 67373569);
   var←c13068 = (word) XR←ImportInterface((word) "SystemNames", (word) XR←GetTypeIndexS((word) (&string28)), 9);
   (* (( (ptr) gf←c078)+50)/* var←c12492 */  ) = var←c13068;
   (void) XR←ImportProcS(var←c13068, 67109120);
   var←c13068 = (word) XR←ExportInterface((word) "Identification", (word) XR←GetTypeIndexS((word) (&string29)), 1);
   (* (( (ptr) gf←c078)+57)/* var←c13100 */  ) = var←c13068;
   (void) XR←ExportProcS(var←c13068, (word) (( (bPt) gf←c078)+168)/* var←c12364 */ , 67371009);
   var←c13068 = (word) XR←ExportInterface((word) "XlAccess", (word) XR←GetTypeIndexS((word) (&string30)), 4);
   (* (( (ptr) gf←c078)+57)/* var←c13100 */  ) = var←c13068;
   (void) XR←ExportProcS(var←c13068, (word) (( (bPt) gf←c078)+120)/* var←c12172 */ , 67371009);
   (void) XR←ExportProcS(var←c13068, (word) (( (bPt) gf←c078)+128)/* var←c12204 */ , 67371265);
   (void) XR←ExportProcS(var←c13068, (word) (( (bPt) gf←c078)+112)/* var←c12140 */ , 67371521);
   (void) XR←ExportVar(var←c13068, 3, (word) (( (bPt) gf←c078)+108)/* var←c12108 */ );
   }

static void XlAccessImpl←P0(formal←c034, formal←c031)
   word formal←c034;
   word formal←c031;
   {
   register ptr gf←c13132 =  (ptr) &globalframe;
   /* XlAccessImpl: */ 
SOURCE(118, 3039)
SOURCE(276, 47)
   {
      word pd31;
      pd31 = (* (( (ptr) (* (( (ptr) gf←c13132)+50)/* var←c12492 */  ))+5) );
      (* (( (ptr) gf←c13132)+4)/* hostName←v2888 */  ) = (word) ( *( (fPt) ((*  (ptr) pd31 ))))(pd31);
      };
SOURCE(325, 41)
   (* (( (ptr) gf←c13132)+5)/* cirioPort←v2916 */  ) = (word) GetCirioPortRope←P120();
SOURCE(368, 77)
   {
      W2 var←c12524;
      W2 var←c12556;
      W2 var←c095;
      var←c12524.f0 = 11;
      var←c12524.f1 = (* (( (ptr) gf←c13132)+4)/* hostName←v2888 */  );
      var←c12556.f0 = 11;
      var←c12556.f1 = (* (( (ptr) gf←c13132)+5)/* cirioPort←v2916 */  );
      (*  (ptr) (word) &var←c095 ) = 0;
      (* (( (ptr) (word) &var←c095) + 1) ) = 0;
      {
         word pd32;
         pd32 = (* (( (ptr) (* (( (ptr) gf←c13132)+51)/* var←c12620 */  ))+62) );
         (* (( (ptr) gf←c13132)+6)/* ident←v2944 */  ) = (word) ( *( (fPt) ((*  (ptr) pd32 ))))((* (( (ptr) gf←c13132)+13) ), var←c12524, var←c12556, var←c095, pd32)
         ;
         };
      };
   }

static word GetCirioPortNum←P60()
   {
   W5 var←c13164;
   word n←v3332;
   /* GetCirioPortNum: */ 
SOURCE(448, 153)
SOURCE(448, 153)
   n←v3332 = 0;
SOURCE(578, 23)
SOURCE(578, 23)
   {
      /* declaration of var←c01 skipped */ 
      {
         word var←c02;
         {
            word var←c096;
            var←c096 = (word) &var←c13164;
            var←c02 = (word) XR←Enable(( ((word)  (fPt) NoName←Q1044) ), ( ((word)  (fPt) NoName←Q1224) ), var←c096);
            };
         if ((var←c02 == 2)) {
            goto lab←L100001;
            };
         };
      n←v3332 = var←c13164.f4/* var←c01 */ ;
      };
   lab←L100001: ;
SOURCE(448, 153)
   return(n←v3332);
   }

static word NoName←Q1044(formal←c080)
   word formal←c080;
   {
SOURCE(578, 23)
   (* (( (ptr) formal←c080)+4) ) = (word) CirioNubLocalGetPort();
   return(0);
   }

static word GetCirioPortRope←P120()
   {
   register ptr gf←c13196 =  (ptr) &globalframe;
   word var←c3392;
   /* GetCirioPortRope: */ 
SOURCE(616, 99)
SOURCE(666, 49)
   {
      word var←c12684;
      var←c12684 = (word) GetCirioPortNum←P60();
      {
         word pd33;
         pd33 = (* (( (ptr) (* (( (ptr) gf←c13196)+52)/* var←c12716 */  ))+28) );
         return((word) ( *( (fPt) ((*  (ptr) pd33 ))))(var←c12684, 8, 1, pd33));
         };
      };
   }

static word Self←P180(a←v3452)
   word a←v3452;
   {
   register ptr gf←c13228 =  (ptr) &globalframe;
   word var←c3496;
   /* Self: */ 
SOURCE(719, 178)
SOURCE(777, 120)
   {
      word var←c12748;
      var←c12748 = a←v3452;
      if ((var←c12748 == 0)) {
SOURCE(798, 14)
         return((* (( (ptr) gf←c13228)+6)/* ident←v2944 */  ));
         };
      if ((var←c12748 == (* (( (ptr) gf←c13228)+12) ))) {
SOURCE(823, 17)
         return((* (( (ptr) gf←c13228)+4)/* hostName←v2888 */  ));
         };
      if ((var←c12748 == (* (( (ptr) gf←c13228)+14) ))) {
SOURCE(852, 18)
         return((* (( (ptr) gf←c13228)+5)/* cirioPort←v2916 */  ));
         };
SOURCE(883, 14)
      return((* (( (ptr) gf←c13228)+6)/* ident←v2944 */  ));
      };
   }

static word ServerNameFromProperties←P240(for←v3556)
   word for←v3556;
   {
   register ptr gf←c13260 =  (ptr) &globalframe;
   word name←v3600;
   /* ServerNameFromProperties: */ 
SOURCE(902, 176)
SOURCE(902, 176)
   name←v3600 = 0;
SOURCE(981, 26)
   if ((for←v3556 == 0)) {
SOURCE(997, 10)
      for←v3556 = (* (( (ptr) gf←c13260)+15) );
      };
SOURCE(1009, 69)
   {
      word var←c12812;
      {
         word pd35;
         pd35 = (* (( (ptr) (* (( (ptr) gf←c13260)+53)/* var←c12780 */  ))+11) );
         var←c12812 = (word) ( *( (fPt) ((*  (ptr) pd35 ))))(for←v3556, (* (( (ptr) gf←c13260)+16) ), pd35);
         };
      if ((var←c12812 == 0)) {
         goto lab←L100004;
         };
      {
         word tc36;
         if (((* (( (ptr) gf←c13260)+7) ) == XR←GetReferentType(var←c12812))) {
            tc36 =  (word) ( (unsigned) (*(int*)var←c12812<0) == 0);
            }
         else {
            tc36 =  (word) 0;
            };
         if (tc36) {
            {
               word r←v4416;
               r←v4416 = var←c12812;
SOURCE(1070, 8)
               name←v3600 = r←v4416;
               };
            }
         else {
            lab←L100004: ;
            };
         };
      };
SOURCE(902, 176)
   return(name←v3600);
   }

static word IsArpaAddress←P300(r←v3660)
   word r←v3660;
   {
   register ptr gf←c13292 =  (ptr) &globalframe;
   word var←c3704;
   word len←v4460;
   word var←c12876;
   word ch←v12060;
   /* IsArpaAddress: */ 
SOURCE(1099, 259)
SOURCE(1099, 259)
   var←c3704 = 0;
SOURCE(1161, 25)
   {
      word pd37;
      pd37 = (* (( (ptr) (* (( (ptr) gf←c13292)+54)/* var←c12844 */  ))+14) );
      len←v4460 = (word) ( *( (fPt) ((*  (ptr) pd37 ))))(r←v3660, pd37);
      };
SOURCE(1188, 170)
   {
      word tc38;
      if (( (int)len←v4460 >  (int)0)) {
         {
            word pd39;
            pd39 = (* (( (ptr) (* (( (ptr) gf←c13292)+54)/* var←c12844 */  ))+9) );
            ch←v12060 = (word) ( *( (fPt) ((*  (ptr) pd39 ))))(r←v3660, 0, pd39);
            };
         var←c12876 =  (unsigned) ((ch←v12060 - 48) <= 9);
         tc38 =  (word) (0 != var←c12876);
         }
      else {
         tc38 =  (word) 0;
         };
      if (tc38) {
SOURCE(1237, 121)
         {
            word pd40;
            pd40 = (* (( (ptr) (* (( (ptr) gf←c13292)+54)/* var←c12844 */  ))+25) );
            if (( (int)(word) ( *( (fPt) ((*  (ptr) pd40 ))))(r←v3660, 0, (* (( (ptr) gf←c13292)+17) ), pd40) >=  (int)len←v4460)) {
SOURCE(1294, 64)
               {
                  word pd41;
                  pd41 = (* (( (ptr) (* (( (ptr) gf←c13292)+54)/* var←c12844 */  ))+23) );
                  if ((0 != (word) ( *( (fPt) ((*  (ptr) pd41 ))))((* (( (ptr) gf←c13292)+18) ), r←v3660, 1, pd41))) {
SOURCE(1344, 14)
                     return(1);
                     };
                  };
               };
            };
         };
      };
SOURCE(1099, 259)
   return(var←c3704);
   }

static word SubstituteLocalNames←P360(serverName←v3764)
   word serverName←v3764;
   {
   register ptr gf←c13324 =  (ptr) &globalframe;
   word var←c3808;
   /* SubstituteLocalNames: */ 
SOURCE(1362, 300)
SOURCE(1437, 225)
   if ((0 == (word) IsLocalHost←P480(serverName←v3764))) {
SOURCE(1470, 26)
      return(serverName←v3764);
      }
   else {
SOURCE(1496, 168)
      {
         word colonPos←v4532;
SOURCE(1534, 53)
         {
            word pd42;
            pd42 = (* (( (ptr) (* (( (ptr) gf←c13324)+54)/* var←c12844 */  ))+24) );
            colonPos←v4532 = (word) ( *( (fPt) ((*  (ptr) pd42 ))))(serverName←v3764, 0, (* (( (ptr) gf←c13324)+20) ), pd42);
            };
SOURCE(1589, 73)
         {
            word pd43;
            pd43 = (* (( (ptr) (* (( (ptr) gf←c13324)+54)/* var←c12844 */  ))+16) );
            return((word) ( *( (fPt) ((*  (ptr) pd43 ))))(serverName←v3764, 0, colonPos←v4532, (* (( (ptr) gf←c13324)+19) ), pd43));
            };
         };
      };
   }

static word StripDisplayNumber←P420(name←v3868)
   word name←v3868;
   {
   register ptr gf←c13356 =  (ptr) &globalframe;
   word var←c3912;
   word colonPos←v4576;
   /* StripDisplayNumber: */ 
SOURCE(1671, 156)
SOURCE(1738, 47)
   {
      word pd44;
      pd44 = (* (( (ptr) (* (( (ptr) gf←c13356)+54)/* var←c12844 */  ))+24) );
      colonPos←v4576 = (word) ( *( (fPt) ((*  (ptr) pd44 ))))(name←v3868, 0, (* (( (ptr) gf←c13356)+20) ), pd44);
      };
SOURCE(1787, 40)
   {
      word pd45;
      pd45 = (* (( (ptr) (* (( (ptr) gf←c13356)+54)/* var←c12844 */  ))+17) );
      return((word) ( *( (fPt) ((*  (ptr) pd45 ))))(name←v3868, 0, colonPos←v4576, pd45));
      };
   }

static word IsLocalHost←P480(serverName←v3972)
   word serverName←v3972;
   {
   register ptr gf←c13388 =  (ptr) &globalframe;
   word var←c4016;
   /* IsLocalHost: */ 
SOURCE(1831, 498)
SOURCE(1899, 43)
   serverName←v3972 = (word) StripDisplayNumber←P420(serverName←v3972);
   {
      word pd46;
      pd46 = (* (( (ptr) (* (( (ptr) gf←c13388)+54)/* var←c12844 */  ))+13) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd46 ))))(serverName←v3972, pd46))) {
SOURCE(1989, 13)
         return(1);
         }
      else {
         {
            word pd47;
            pd47 = (* (( (ptr) (* (( (ptr) gf←c13388)+54)/* var←c12844 */  ))+8) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd47 ))))((* (( (ptr) gf←c13388)+19) ), serverName←v3972, 0, pd47))) {
SOURCE(2050, 13)
               return(1);
               }
            else {
               {
                  word pd48;
                  pd48 = (* (( (ptr) (* (( (ptr) gf←c13388)+54)/* var←c12844 */  ))+8) );
                  if ((0 != (word) ( *( (fPt) ((*  (ptr) pd48 ))))((* (( (ptr) gf←c13388)+21) ), serverName←v3972, 0, pd48))) {
SOURCE(2106, 13)
                     return(1);
                     }
                  else {
                     {
                        word pd49;
                        pd49 = (* (( (ptr) (* (( (ptr) gf←c13388)+54)/* var←c12844 */  ))+8) );
                        if ((0 != (word) ( *( (fPt) ((*  (ptr) pd49 ))))((* (( (ptr) gf←c13388)+22) ), serverName←v3972, 0, pd49))) {
SOURCE(2167, 13)
                           return(1);
                           }
                        else {
                           {
/*1*/   word pd50;
/*1*/   pd50 = (* (( (ptr) (* (( (ptr) gf←c13388)+54)/* var←c12844 */  ))+8) );
/*1*/   if ((0 != (word) ( *( (fPt) ((*  (ptr) pd50 ))))((* (( (ptr) gf←c13388)+23) ), serverName←v3972, 0, pd50))) {
SOURCE(2230, 13)
/*1*/      return(1);
/*1*/      }
/*1*/   else {
/*1*/      {
/*1*/         word pd51;
/*1*/         pd51 = (* (( (ptr) (* (( (ptr) gf←c13388)+54)/* var←c12844 */  ))+8) );
/*1*/         if ((0 != (word) ( *( (fPt) ((*  (ptr) pd51 ))))((* (( (ptr) gf←c13388)+4)/* hostName←v2888 */  ), serverName←v3972, 0, pd51)
/*1*/         )) {
SOURCE(2288, 13)
/*1*/            return(1);
/*1*/            }
/*1*/         else {
SOURCE(2314, 15)
/*1*/            return(0);
/*1*/            };
/*1*/         };
/*1*/      };
/*1*/   };
                           };
                        };
                     };
                  };
               };
            };
         };
      };
   }

static word DefaultServer←P540(for←v4076)
   word for←v4076;
   {
   register ptr gf←c13420 =  (ptr) &globalframe;
   word serverName←v4120;
   /* DefaultServer: */ 
SOURCE(2333, 365)
SOURCE(2333, 365)
   serverName←v4120 = 0;
SOURCE(2414, 153)
   if ((for←v4076 != (* (( (ptr) gf←c13420)+24) ))) {
SOURCE(2434, 42)
      serverName←v4120 = (word) ServerNameFromProperties←P240(for←v4076);
SOURCE(2478, 89)
      {
         word tc52;
         word pd53;
         pd53 = (* (( (ptr) (* (( (ptr) gf←c13420)+54)/* var←c12844 */  ))+13) );
         if ((0 != (word) ( *( (fPt) ((*  (ptr) pd53 ))))(serverName←v4120, pd53))) {
            tc52 =  (word) (for←v4076 != 0);
            }
         else {
            tc52 =  (word) 0;
            };
         if (tc52) {
SOURCE(2524, 43)
            serverName←v4120 = (word) ServerNameFromProperties←P240(0);
            };
         };
      };
SOURCE(2570, 81)
   {
      word pd54;
      pd54 = (* (( (ptr) (* (( (ptr) gf←c13420)+54)/* var←c12844 */  ))+13) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd54 ))))(serverName←v4120, pd54))) {
SOURCE(2603, 48)
         {
            word pd55;
            pd55 = (* (( (ptr) (* (( (ptr) gf←c13420)+55)/* var←c12972 */  ))+4) );
            serverName←v4120 = (word) ( *( (fPt) ((*  (ptr) pd55 ))))((* ((( (ptr) gf←c13420)+25)) ), pd55);
            };
         };
      };
SOURCE(2653, 45)
   serverName←v4120 = (word) SubstituteLocalNames←P360(serverName←v4120);
SOURCE(2333, 365)
   return(serverName←v4120);
   }

static word AddressFromName←P600(formal←c0102)
   word formal←c0102;
   {
   W10 var←c13452;
   /* declaration of name←v4240 skipped */ 
   register ptr gf←c13484 =  (ptr) &globalframe;
   word address←v4284;
   /* declaration of var←c13004 skipped */ 
   (* (( (ptr) &var←c13452)+4)/* name←v4240 */  ) = formal←c0102;
   /* AddressFromName: */ 
SOURCE(2766, 391)
   {
      word tmpAddr56;
      tmpAddr56 = (word) (( (ptr) &var←c13452)+5)/* var←c13004 */ ;
      (*  (ptr) tmpAddr56 ) = ( ((word)  (fPt) Raise←P756) );
      (* (( (ptr) tmpAddr56) + 1) ) = 1;
      };
SOURCE(2766, 391)
   address←v4284 = 0;
   {
      /* declaration of var←c03 skipped */ 
      /* declaration of var←c04 skipped */ 
SOURCE(2912, 31)
      (* (( (ptr) &var←c13452)+4)/* name←v4240 */  ) = (word) StripDisplayNumber←P420((* ((( (ptr) &var←c13452)+4)/* name←v4240 */ ) ))
      ;
SOURCE(2945, 41)
      if ((0 != (word) IsArpaAddress←P300((* ((( (ptr) &var←c13452)+4)/* name←v4240 */ ) )))) {
SOURCE(2973, 13)
         return((* (( (ptr) &var←c13452)+4)/* name←v4240 */  ));
         };
SOURCE(2988, 46)
      if ((0 != (word) IsLocalHost←P480((* ((( (ptr) &var←c13452)+4)/* name←v4240 */ ) )))) {
SOURCE(3014, 20)
         return((* (( (ptr) gf←c13484)+22) ));
         };
SOURCE(3036, 121)
      (* (( (ptr) &var←c13452)+7)/* var←c03 */  ) = (* (( (ptr) (* (( (ptr) gf←c13484)+56)/* var←c13036 */  ))+6) );
      {
         word var←c097;
         var←c097 = (word) &var←c13452;
          (void) (word) XR←Enable(( ((word)  (fPt) NoName←Q1104) ), ( ((word)  (fPt) NoName←Q1164) ), var←c097);
         };
      address←v4284 = (*  (W2Pt) (( (ptr) &var←c13452)+8)/* var←c04 */  ).f0;
      };
SOURCE(2766, 391)
   return(address←v4284);
   }

static word NoName←Q1104(formal←c091)
   word formal←c091;
   {
   register ptr gf←c090 =  (ptr) &globalframe;
SOURCE(3036, 121)
   {
      word pd57;
      pd57 = (* (( (ptr) formal←c091)+7) );
      (void) ( *( (fPt) ((*  (ptr) pd57 ))))((word) (( (bPt) formal←c091)+32), (* (( (ptr) gf←c090)+26) ), (* (( (ptr) formal←c091)+4)
          ), 0, 0, 0, pd57);
      };
   return(0);
   }

static void Raise←P756(msg←v4696, formal←c13548)
   word msg←v4696;
   word formal←c13548;
   {
   register ptr gf←c13516 =  (ptr) &globalframe;
   formal←c13548 = (formal←c13548 - 20);
   /* Raise: */ 
SOURCE(2852, 57)
SOURCE(2883, 26)
   {
      word var←c065;
      var←c065 = msg←v4696;
      (void) XR←RaiseError((word) (( (bPt) gf←c13516)+108)/* var←c12108 */ , (word) &var←c065);
      };
   }

static void NoName←Q1164(formal←c072, formal←c200004, formal←c200005, formal←c200006, formal←c200007)
   word formal←c072;
   word formal←c200004;
   word formal←c200005;
   word formal←c200006;
   word formal←c200007;
   {
   register ptr gf←c094 =  (ptr) &globalframe;
   if ((formal←c200005 == (* (( (ptr) (* (( (ptr) gf←c094)+56)/* var←c13036 */  ))+4) ))) {
      {
         word codes←v11852;
         word msg←v11880;
         codes←v11852 = (*  (ptr) formal←c200007 );
         msg←v11880 = (* (( (ptr) formal←c200007)+1) );
SOURCE(3141, 16)
         (void) Raise←P756(msg←v11880, (word) (( (bPt) formal←c200004)+20));
         };
      };
   (*  (ptr) formal←c072 ) = 0;
   (* (( (ptr) formal←c072)+1) ) = 0;
   return;
   }

static void NoName←Q1224(formal←c077, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
   word formal←c077;
   word formal←c200000;
   word formal←c200001;
   word formal←c200002;
   word formal←c200003;
   {
   if ((formal←c200001 == XR←Uncaught)) {
SOURCE(601, 11)
      (*  (ptr) formal←c077 ) = 2;
      (* (( (ptr) formal←c077)+1) ) = 2;
      return;
      };
   (*  (ptr) formal←c077 ) = 0;
   (* (( (ptr) formal←c077)+1) ) = 0;
   return;
   }

/* file: XlAccessImpl, module: XlAccessImpl, compiled at: March 10, 1993 10:48:11 am PST */ 
extern void XR←install←XlAccessImpl() {
   NoName←Q984();
   }
extern void XR←run←XlAccessImpl() { XR←Start(&globalframe); }