/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1994 by Xerox Corporation.  All rights reserved. */
/* time: March 9, 1994 11:42:15 am PST */
/* C2C version: January 12, 1994 (sun4) */
/* ref-counting: off */
/* file: ImagerType1TypefaceImpl, module: ImagerType1TypefaceImpl */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [3379819592,114441260] ImagerType1TypefaceImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef word (*fPt)();
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {W8 f; W8 r;} W16;
typedef struct {word f0, f1;} W2;
typedef struct {W16 f; W2 r;} W18;
typedef struct {word f0, f1, f2, f3;} W4;
typedef W2 *W2Pt;
typedef W4 *W4Pt;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
typedef struct {word f0, f1, f2, f3, f4;} W5;
#define SOURCE(p, l) /* source p, l */
static float fc36 = 0.0;
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
static void NoName←Q2352();
static void ImagerType1TypefaceImpl←P0();
static word MakeCharData←P120();
static void Pt←P1380();
static void move←P1440();
static void line←P1500();
static void curve←P1560();
static word Lost←P180();
static word DataFromType1Data←P240();
static word GetNonemptySets←P300();
static void EachCharString←P1668();
static word NoName←Q2412();
static word GetCharData←P360();
static word Type1Contains←P420();
static word Type1NextChar←P480();
static void Type1Escapement←P540();
static word Type1Amplified←P600();
static word Type1Correction←P660();
static void Type1BoundingBox←P720();
static void Type1FontBoundingBox←P780();
static void Type1Kern←P840();
static word Type1NextKern←P900();
static word Type1Ligature←P960();
static word Type1NextLigature←P1020();
static void Type1Mask←P1080();
static void path←P2112();
static void RegisterMakeCharMask←P1140();
static word DispatchMakeCharMask←P1200();
static word MakeType1TypefaceClass←P1260();
static word Type1Create←P1320();
static void NoName←Q2472();
static struct {unsigned f; char r[16];} string1 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[4];} string2 = {65537, "\001\000\000"};
static struct {unsigned f; char r[4];} string3 = {131076, "\216\251\000"};
static struct {unsigned f; char r[16];} string4 = {851984, "\257\300\266\010\325\227\300\311\073\313\147\100\164\000\000"};
static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\266\010\325\227\300\311\073\313\147\100\200\000\000"};
static struct {unsigned f; char r[4];} string6 = {131074, "\004\037\000"};
static struct {unsigned f; char r[12];} string7 = {524300, "\254\205\210\241\000\100\377\232\000\000\000"};
static struct {unsigned f; char r[24];} string8 = {1310744, "\260\006\005\146\151\162\163\164\216\251\005\004\162\145\163\164\214\216\251\261\000\000\000"};
static struct {unsigned f; char r[4];} string9 = {131074, "\004\003\000"};
static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\301\227\276\106\300\342\254\204\020\100\200\000\000"};
static struct {unsigned f; char r[8];} string11 = {458759, "\006\002\000\001@@\001"};
static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\301\227\276\106\300\342\254\204\020\100\164\000\000"};
static struct {unsigned f; char r[4];} string13 = {196611, "\004@\357"};
static struct {unsigned f; char r[4];} string14 = {196612, "psf"};
static struct {unsigned f; char r[12];} string15 = {589836, "Type1Font\000\000"};
static struct {unsigned f; char r[8];} string16 = {458760, ".notdef"};
static struct {unsigned f; char r[16];} string17 = {851984, "\257\300\311\163\364\110\300\006\322\074\054\100\164\000\000"};
static struct {unsigned f; char r[16];} string18 = {786444, "\006\004\020\001\034\001\040\001\100\144\004\007\000\000\000"};
static struct {unsigned f; char r[16];} string19 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"};
static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\223\215\300\016\300\070\141\304\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string21 = {851984, "\257\300\205\172\215\051\300\114\244\144\300\100\150\000\000"};
static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\150\000\000"};
static struct {unsigned f; char r[16];} string23 = {851984, "\257\300\000\172\225\152\300\104\041\252\375\100\150\000\000"};
static struct {unsigned f; char r[16];} string24 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"};
static struct {unsigned f; char r[16];} string25 = {851984, "\257\300\301\227\276\106\300\342\254\204\020\100\150\000\000"};
static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\165\060\311\160\300\377\002\144\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string27 = {851984, "\257\300\266\010\325\227\300\311\073\313\147\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; word f50; 
   word f51; word f52; word f53; word f54; 
   word f55; word f56; word f57; word f58; 
   word f59; word f60; word f61; word f62; 
   word f63; word f64; word f65; word f66; 
   word f67; word f68; word f69; word f70; 
   word f71[10]; 
   } globalframe = {
   {0}, (word) Type1Create←P1320, 0, (word) MakeType1TypefaceClass←P1260, 
   0, (word) DispatchMakeCharMask←P1200, 0, (word) RegisterMakeCharMask←P1140, 
   0, (word) Type1Mask←P1080, 0, (word) Type1NextLigature←P1020, 
   0, (word) Type1Ligature←P960, 0, (word) Type1NextKern←P900, 
   0, (word) Type1Kern←P840, 0, (word) Type1FontBoundingBox←P780, 
   0, (word) Type1BoundingBox←P720, 0, (word) Type1Correction←P660, 
   0, (word) Type1Amplified←P600, 0, (word) Type1Escapement←P540, 
   0, (word) Type1NextChar←P480, 0, (word) Type1Contains←P420, 
   0, (word) GetCharData←P360, 0, (word) GetNonemptySets←P300, 
   0, (word) DataFromType1Data←P240, 0, (word) Lost←P180, 
   0, (word) MakeCharData←P120, 0, (word) ImagerType1TypefaceImpl←P0, 
   {0}
   };

static void NoName←Q2352()
   {
   register ptr gf←c0204 =  (ptr) &globalframe;
   word var←c27656;
   (* (( (ptr) gf←c0204)+10) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
   (* (( (ptr) gf←c0204)+12) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string2);
   (* (( (ptr) gf←c0204)+17) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string2);
   (* (( (ptr) gf←c0204)+18) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6);
   (* (( (ptr) gf←c0204)+20) ) = (word) XR←GetTypeIndexS((word) (&string7));
   (* (( (ptr) gf←c0204)+21) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string9);
   (* (( (ptr) gf←c0204)+22) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string11);
   (* (( (ptr) gf←c0204)+24) ) = (word) XR←GetTypeIndex((word) &string12, 0, (word) &string13);
   (*  (ptr) (( (bPt) gf←c0204)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0204)+10) ), (word) &string14);
   (*  (ptr) (( (bPt) gf←c0204)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0204)+12) ), (word) &string15);
   (*  (ptr) (( (bPt) gf←c0204)+108) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0204)+10) ), (word) &string16);
   (void) XR←DeclareGlobalFrame((word) "ImagerType1TypefaceImpl", &globalframe, (word) XR←GetTypeIndex((word) &string17, 0, (word) &string18)
      , (word) (( (bPt) gf←c0204)+280)/* var←c26312 */ );
   var←c27656 = (word) XR←ImportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string19)), 16);
   (* (( (ptr) gf←c0204)+72)/* var←c26376 */  ) = var←c27656;
   (void) XR←ImportProcS(var←c27656, 67895555);
   var←c27656 = (word) XR←ImportInterface((word) "CardTab", (word) XR←GetTypeIndexS((word) (&string20)), 12);
   (* (( (ptr) gf←c0204)+78)/* var←c26888 */  ) = var←c27656;
   (void) XR←ImportProcS(var←c27656, 67896835);
   (void) XR←ImportProcS(var←c27656, 134742786);
   (void) XR←ImportProcS(var←c27656, 67371265);
   var←c27656 = (word) XR←ImportInterface((word) "CharCodeConvert", (word) XR←GetTypeIndexS((word) (&string21)), 8);
   (* (( (ptr) gf←c0204)+73)/* var←c26408 */  ) = var←c27656;
   (void) XR←ImportProcS(var←c27656, 67371265);
   (void) XR←ImportProcS(var←c27656, 67371521);
   var←c27656 = (word) XR←ImportInterface((word) "Imager", (word) XR←GetTypeIndexS((word) (&string22)), 84);
   (* (( (ptr) gf←c0204)+79)/* var←c27464 */  ) = var←c27656;
   (void) XR←ImportProcS(var←c27656, 801283);
   (void) XR←ImportProcS(var←c27656, 526850);
   var←c27656 = (word) XR←ImportInterface((word) "ImagerBox", (word) XR←GetTypeIndexS((word) (&string23)), 7);
   (* (( (ptr) gf←c0204)+77)/* var←c26824 */  ) = var←c27656;
   (void) XR←ImportProcS(var←c27656, 269484033);
   (void) XR←ImportProcS(var←c27656, 269484289);
   (void) XR←ImportProcS(var←c27656, 269484801);
   var←c27656 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string24)), 55);
   (* (( (ptr) gf←c0204)+76)/* var←c26760 */  ) = var←c27656;
   (void) XR←ImportProcS(var←c27656, 269756930);
   (void) XR←ImportProcS(var←c27656, 135013122);
   (void) XR←ImportProcS(var←c27656, 135013378);
   var←c27656 = (word) XR←ImportInterface((word) "ImagerTypeface", (word) XR←GetTypeIndexS((word) (&string25)), 12);
   (* (( (ptr) gf←c0204)+74)/* var←c26440 */  ) = var←c27656;
   (void) XR←ImportProcS(var←c27656, 526082);
   (void) XR←ImportProcS(var←c27656, 67635202);
   var←c27656 = (word) XR←ImportInterface((word) "Type1Font", (word) XR←GetTypeIndexS((word) (&string26)), 12);
   (* (( (ptr) gf←c0204)+75)/* var←c26664 */  ) = var←c27656;
   (void) XR←ImportProcS(var←c27656, 67373569);
   (void) XR←ImportProcS(var←c27656, 272108301);
   var←c27656 = (word) XR←ExportInterface((word) "ImagerType1Typeface", (word) XR←GetTypeIndexS((word) (&string27)), 4);
   (* (( (ptr) gf←c0204)+80)/* var←c27688 */  ) = var←c27656;
   (void) XR←ExportProcS(var←c27656, (word) (( (bPt) gf←c0204)+256)/* var←c26216 */ , 67371009, (word) "DataFromType1Data");
   (void) XR←ExportProcS(var←c27656, (word) (( (bPt) gf←c0204)+120)/* var←c25672 */ , 67371265, (word) "MakeType1TypefaceClass")
   ;
   (void) XR←ExportProcS(var←c27656, (word) (( (bPt) gf←c0204)+240)/* var←c26152 */ , 67633666, (word) "GetCharData");
   (void) XR←ExportProcS(var←c27656, (word) (( (bPt) gf←c0204)+136)/* var←c25736 */ , 262913, (word) "RegisterMakeCharMask")
   ;
   }

static void ImagerType1TypefaceImpl←P0(formal←c043, formal←c041)
   word formal←c043;
   word formal←c041;
   {
   register ptr gf←c27720 =  (ptr) &globalframe;
   /* ImagerType1TypefaceImpl: */ 
SOURCE(707, 7960)
SOURCE(3314, 71)
   {
      word var←c26344;
      {
         word pd28;
         pd28 = (* (( (ptr) (* (( (ptr) gf←c27720)+72)/* var←c26376 */  ))+5) );
         var←c26344 = (word) ( *( (fPt) ((*  (ptr) pd28 ))))((* (( (ptr) gf←c27720)+27) ), 0, 2147483647, pd28);
         };
      {
         word pd29;
         pd29 = (* (( (ptr) (* (( (ptr) gf←c27720)+73)/* var←c26408 */  ))+6) );
         (* (( (ptr) gf←c27720)+5)/* notdef←v3532 */  ) = (word) ( *( (fPt) ((*  (ptr) pd29 ))))(var←c26344, pd29);
         };
      };
SOURCE(8184, 77)
   (* (( (ptr) gf←c27720)+7)/* type1Class←v4036 */  ) = (word) MakeType1TypefaceClass←P1260((* ((( (ptr) gf←c27720)+26)) ));
SOURCE(8509, 93)
   {
      word pd30;
      pd30 = (* (( (ptr) (* (( (ptr) gf←c27720)+74)/* var←c26440 */  ))+12) );
      (* (( (ptr) gf←c27720)+8)/* creator←v4092 */  ) = (word) ( *( (fPt) ((*  (ptr) pd30 ))))((* (( (ptr) gf←c27720)+25) ), (word) (
            ( (bPt) gf←c27720)+112)/* var←c25640 */ , pd30);
      };
SOURCE(8605, 62)
   {
      word pd31;
      pd31 = (* (( (ptr) (* (( (ptr) gf←c27720)+74)/* var←c26440 */  ))+11) );
      (void) ( *( (fPt) ((*  (ptr) pd31 ))))((* (( (ptr) gf←c27720)+8)/* creator←v4092 */  ), 1, pd31);
      };
   }

static word MakeCharData←P120(self←v4288, name←v4316)
   word self←v4288;
   word name←v4316;
   {
   W18 var←c27752;
   register ptr gf←c27784 =  (ptr) &globalframe;
   word var←c4360;
   /* declaration of var←c26472 skipped */ 
   /* declaration of var←c26504 skipped */ 
   /* declaration of var←c26536 skipped */ 
   /* declaration of var←c26568 skipped */ 
   /* declaration of m←v6900 skipped */ 
   /* declaration of box←v6928 skipped */ 
   /* declaration of count←v6956 skipped */ 
   W4 info←v7096;
   /* MakeCharData: */ 
SOURCE(1285, 876)
   {
      word tmpAddr32;
      tmpAddr32 = (word) (( (ptr) &var←c27752)+4)/* var←c26472 */ ;
      (*  (ptr) tmpAddr32 ) = ( ((word)  (fPt) curve←P1560) );
      (* (( (ptr) tmpAddr32) + 1) ) = 1;
      };
   {
      word tmpAddr33;
      tmpAddr33 = (word) (( (ptr) &var←c27752)+6)/* var←c26504 */ ;
      (*  (ptr) tmpAddr33 ) = ( ((word)  (fPt) line←P1500) );
      (* (( (ptr) tmpAddr33) + 1) ) = 1;
      };
   {
      word tmpAddr34;
      tmpAddr34 = (word) (( (ptr) &var←c27752)+8)/* var←c26536 */ ;
      (*  (ptr) tmpAddr34 ) = ( ((word)  (fPt) move←P1440) );
      (* (( (ptr) tmpAddr34) + 1) ) = 1;
      };
   {
      word tmpAddr35;
      tmpAddr35 = (word) (( (ptr) &var←c27752)+10)/* var←c26568 */ ;
      (*  (ptr) tmpAddr35 ) = ( ((word)  (fPt) Pt←P1380) );
      (* (( (ptr) tmpAddr35) + 1) ) = 1;
      };
SOURCE(1367, 56)
   (* (( (ptr) &var←c27752)+12)/* m←v6900 */  ) = (* (( (ptr) self←v4288)+17) );
SOURCE(1425, 33)
   (* (( (ptr) &var←c27752)+13) ) = (*  (ptr) &fc36 );
   (* (( (ptr) &var←c27752)+14) ) = (*  (ptr) &fc36 );
   (* (( (ptr) &var←c27752)+15) ) = (*  (ptr) &fc36 );
   (* (( (ptr) &var←c27752)+16) ) = (*  (ptr) &fc36 );
SOURCE(1460, 14)
   (* (( (ptr) &var←c27752)+17)/* count←v6956 */  ) = 0;
SOURCE(1941, 79)
   {
      W4 var←c056;
      {
         W2 var←c26632;
         var←c26632.f0 = (*  (ptr) &fc36 );
         var←c26632.f1 = (*  (ptr) &fc36 );
         {
            word pd37;
            pd37 = (* (( (ptr) (* (( (ptr) gf←c27784)+75)/* var←c26664 */  ))+15) );
            (void) ( *( (fPt) ((*  (ptr) pd37 ))))((word) &var←c056, self←v4288, name←v4316, (word) (( (bPt) &var←c27752)+32)/* var←c26536 */ , (word) (
                  ( (bPt) &var←c27752)+24)/* var←c26504 */ , (word) (( (bPt) &var←c27752)+16)/* var←c26472 */ 
               , 0, 0, 0, 0, 0, 0
               , 0, var←c26632, pd37);
            };
         };
      info←v7096 = var←c056;
      };
SOURCE(2022, 139)
   {
      W2 var←c058;
      W2 var←c26728;
      W4 var←c26792;
      W4 var←c060;
      word var←c26856;
      {
         word pd38;
         pd38 = (* (( (ptr) (* (( (ptr) gf←c27784)+76)/* var←c26760 */  ))+40) );
         (void) ( *( (fPt) ((*  (ptr) pd38 ))))((word) &var←c058, (* (( (ptr) &var←c27752)+12)/* m←v6900 */  ), (*  (W2Pt) (( (ptr) &info←v7096)+2)
             ), pd38);
         };
      var←c26728 = var←c058;
      {
         word pd39;
         pd39 = (* (( (ptr) (* (( (ptr) gf←c27784)+77)/* var←c26824 */  ))+7) );
         (void) ( *( (fPt) ((*  (ptr) pd39 ))))((word) &var←c060, (*  (W4Pt) (( (ptr) &var←c27752)+13)/* box←v6928 */  ), pd39);
         };
      var←c26792 = var←c060;
      var←c26856 = XR←NewObject(28, (* (( (ptr) gf←c27784)+17) ));
      (*  (ptr) var←c26856 ) = name←v4316;
      (*  (W2Pt) (( (ptr) var←c26856)+1) ) = var←c26728;
      (*  (W4Pt) (( (ptr) var←c26856)+3) ) = var←c26792;
      return(var←c26856);
      };
   }

static void Pt←P1380(v←v7172, formal←c27848)
   W2 v←v7172;
   word formal←c27848;
   {
   register ptr gf←c27816 =  (ptr) &globalframe;
   W2 p←v7200;
   formal←c27848 = (formal←c27848 - 40);
   /* Pt: */ 
SOURCE(1476, 317)
SOURCE(1498, 45)
   {
      word pd40;
      pd40 = (* (( (ptr) (* (( (ptr) gf←c27816)+76)/* var←c26760 */  ))+39) );
      (void) ( *( (fPt) ((*  (ptr) pd40 ))))((word) &p←v7200, (* (( (ptr) formal←c27848)+12) ), v←v7172, pd40);
      };
SOURCE(1545, 228)
   if (((* (( (ptr) formal←c27848)+17) ) == 0)) {
SOURCE(1561, 56)
      (* (( (ptr) formal←c27848)+13) ) = p←v7200.f0;
      (* (( (ptr) formal←c27848)+14) ) = p←v7200.f1;
      (* (( (ptr) formal←c27848)+15) ) = p←v7200.f0;
      (* (( (ptr) formal←c27848)+16) ) = p←v7200.f1;
      }
   else {
SOURCE(1619, 76)
      {
         word x41;
         word x42;
         if (((
            x41 = p←v7200.f0,  *(float*)&x41
            ) < (
            x42 = (* (( (ptr) formal←c27848)+13) ),  *(float*)&x42
            ))) {
SOURCE(1640, 20)
            (* (( (ptr) formal←c27848)+13) ) = p←v7200.f0;
            }
         else {
SOURCE(1660, 35)
            {
               word x43;
               word x44;
               if (((
                  x43 = p←v7200.f0,  *(float*)&x43
                  ) > (
                  x44 = (* (( (ptr) formal←c27848)+15) ),  *(float*)&x44
                  ))) {
SOURCE(1681, 14)
                  (* (( (ptr) formal←c27848)+15) ) = p←v7200.f0;
                  };
               };
            };
         };
SOURCE(1697, 76)
      {
         word x45;
         word x46;
         if (((
            x45 = p←v7200.f1,  *(float*)&x45
            ) < (
            x46 = (* (( (ptr) formal←c27848)+14) ),  *(float*)&x46
            ))) {
SOURCE(1718, 20)
            (* (( (ptr) formal←c27848)+14) ) = p←v7200.f1;
            }
         else {
SOURCE(1738, 35)
            {
               word x47;
               word x48;
               if (((
                  x47 = p←v7200.f1,  *(float*)&x47
                  ) > (
                  x48 = (* (( (ptr) formal←c27848)+16) ),  *(float*)&x48
                  ))) {
SOURCE(1759, 14)
                  (* (( (ptr) formal←c27848)+16) ) = p←v7200.f1;
                  };
               };
            };
         };
      };
SOURCE(1778, 15)
   (* (( (ptr) formal←c27848)+17) ) = ((* (( (ptr) formal←c27848)+17) ) + 1);
   }

static void move←P1440(p←v19212, formal←c27880)
   W2 p←v19212;
   word formal←c27880;
   {
   formal←c27880 = (formal←c27880 - 32);
   /* move: */ 
SOURCE(1798, 38)
SOURCE(1830, 6)
   (void) Pt←P1380(p←v19212, (word) (( (bPt) formal←c27880)+40));
   }

static void line←P1500(p1←v19272, formal←c27912)
   W2 p1←v19272;
   word formal←c27912;
   {
   formal←c27912 = (formal←c27912 - 24);
   /* line: */ 
SOURCE(1839, 39)
SOURCE(1871, 7)
   (void) Pt←P1380(p1←v19272, (word) (( (bPt) formal←c27912)+40));
   }

static void curve←P1560(p1←v19332, p2←v19360, p3←v19388, formal←c27944)
   W2 p1←v19332;
   W2 p2←v19360;
   W2 p3←v19388;
   word formal←c27944;
   {
   formal←c27944 = (formal←c27944 - 16);
   /* curve: */ 
SOURCE(1881, 57)
SOURCE(1915, 6)
   (void) Pt←P1380(p1←v19332, (word) (( (bPt) formal←c27944)+40));
SOURCE(1923, 6)
   (void) Pt←P1380(p2←v19360, (word) (( (bPt) formal←c27944)+40));
SOURCE(1931, 7)
   (void) Pt←P1380(p3←v19388, (word) (( (bPt) formal←c27944)+40));
   }

static word Lost←P180()
   {
   register ptr gf←c27976 =  (ptr) &globalframe;
   word var←c4516;
   /* Lost: */ 
SOURCE(2352, 50)
SOURCE(2389, 13)
   return((* (( (ptr) gf←c27976)+4)/* lost←v3420 */  ));
   }

static word DataFromType1Data←P240(type1Data←v4660)
   word type1Data←v4660;
   {
   register ptr gf←c28008 =  (ptr) &globalframe;
   word var←c4704;
   word charDataForCode←v7244;
   /* DataFromType1Data: */ 
SOURCE(2430, 279)
SOURCE(2546, 47)
   {
      word pd49;
      pd49 = (* (( (ptr) (* (( (ptr) gf←c28008)+78)/* var←c26888 */  ))+5) );
      charDataForCode←v7244 = (word) ( *( (fPt) ((*  (ptr) pd49 ))))(17, pd49);
      };
SOURCE(2595, 114)
   {
      word var←c26952;
      var←c26952 = XR←NewObject(20, (* (( (ptr) gf←c28008)+18) ));
      (*  (ptr) var←c26952 ) = type1Data←v4660;
      (* (( (ptr) var←c26952)+1) ) = charDataForCode←v7244;
      return(var←c26952);
      };
   }

static word GetNonemptySets←P300(data←v4764)
   word data←v4764;
   {
   W7 var←c28040;
   register ptr gf←c28072 =  (ptr) &globalframe;
   word var←c4808;
   /* declaration of var←c26984 skipped */ 
   word charSetNonempty←v7288;
   /* GetNonemptySets: */ 
SOURCE(2715, 595)
   {
      word tmpAddr50;
      tmpAddr50 = (word) (( (ptr) &var←c28040)+4)/* var←c26984 */ ;
      (*  (ptr) tmpAddr50 ) = ( ((word)  (fPt) EachCharString←P1668) );
      (* (( (ptr) tmpAddr50) + 1) ) = 1;
      };
SOURCE(2830, 52)
   charSetNonempty←v7288 = (* (( (ptr) data←v4764)+2) );
SOURCE(2884, 396)
   if ((charSetNonempty←v7288 == 0)) {
SOURCE(2914, 368)
      {
         /* declaration of new←v7344 skipped */ 
         word td←v7400;
SOURCE(2916, 33)
         var←c28040.f6/* new←v7344 */  = XR←NewObject(32, (* (( (ptr) gf←c28072)+20) ));
SOURCE(3152, 40)
         td←v7400 = (*  (ptr) data←v4764 );
SOURCE(3194, 40)
         {
            word pd51;
            pd51 = (* (( (ptr) td←v7400)+2) );
            (void) ( *( (fPt) ((*  (ptr) pd51 ))))(td←v7400, (word) (( (bPt) &var←c28040)+16)/* var←c26984 */ , pd51);
            };
SOURCE(3236, 44)
         (* (( (ptr) data←v4764)+2) ) = var←c28040.f6/* new←v7344 */ ;
         charSetNonempty←v7288 = var←c28040.f6/* new←v7344 */ ;
         };
      };
SOURCE(3285, 25)
   return(charSetNonempty←v7288);
   }

static void EachCharString←P1668(formal←c0242, charString←v7516, formal←c28136)
   word formal←c0242;
   W2 charString←v7516;
   word formal←c28136;
   {
   W5 var←c28104;
   /* declaration of name←v7488 skipped */ 
   formal←c28136 = (formal←c28136 - 16);
   var←c28104.f4/* name←v7488 */  = formal←c0242;
   var←c28104.f0 = formal←c28136;
   /* EachCharString: */ 
SOURCE(2951, 22)
SOURCE(3023, 124)
SOURCE(3023, 124)
   {
      word var←c01;
      {
         word var←c0233;
         var←c0233 = (word) &var←c28104;
         var←c01 = (word) XR←Enable(( ((word)  (fPt) NoName←Q2412) ), ( ((word)  (fPt) NoName←Q2472) ), var←c0233);
         };
      /* removed trivial cond node */ 
      };
   }

static word NoName←Q2412(formal←c0217)
   word formal←c0217;
   {
   register ptr gf←c0216 =  (ptr) &globalframe;
SOURCE(3074, 47)
   {
      word xc←v7544;
SOURCE(3074, 47)
      {
         word pd52;
         pd52 = (* (( (ptr) (* (( (ptr) gf←c0216)+73)/* var←c26408 */  ))+6) );
         xc←v7544 = (word) ( *( (fPt) ((*  (ptr) pd52 ))))((* ((( (ptr) formal←c0217)+4)) ), pd52);
         };
SOURCE(3123, 24)
      {
         word idx53;
         word xs54;
         xs54 = (word) (
            idx53 = (word) ((word) xc←v7544 >> 8),
            BCK(idx53, 256)
            );
         (*  (ptr) (( (ptr) (* (( (ptr) (*  (ptr) formal←c0217 ))+6) )) + ((word) xs54 >> 5)) ) |= ((unsigned) 1 << 32 - ((word) (xs54 & 037)+1)
         );
         };
      };
   return(0);
   }

static word GetCharData←P360(data←v4880, char←v4908)
   word data←v4880;
   word char←v4908;
   {
   register ptr gf←c28168 =  (ptr) &globalframe;
   word var←c4952;
   word td←v7588;
   word charDataForCode←v7616;
   /* GetCharData: */ 
SOURCE(3388, 711)
SOURCE(3495, 40)
   td←v7588 = (*  (ptr) data←v4880 );
SOURCE(3537, 51)
   charDataForCode←v7616 = (* (( (ptr) data←v4880)+1) );
SOURCE(3590, 90)
   {
      word var←c27080;
      W2 var←c091;
      {
         word pd55;
         pd55 = (* (( (ptr) (* (( (ptr) gf←c28168)+78)/* var←c26888 */  ))+7) );
         (void) ( *( (fPt) ((*  (ptr) pd55 ))))((word) &var←c091, charDataForCode←v7616, char←v4908, pd55);
         };
      var←c27080 = var←c091.f1;
      if ((var←c27080 == 0)) {
         goto lab←L100004;
         };
      if (((* (( (ptr) gf←c28168)+17) ) == XR←GetReferentType(var←c27080))) {
         {
            word cd←v7660;
            cd←v7660 = var←c27080;
SOURCE(3669, 11)
            return(cd←v7660);
            };
         }
      else {
         lab←L100004: ;
         };
      };
SOURCE(3691, 324)
   {
      register word names←v7704;
      {
         word pd56;
         pd56 = (* (( (ptr) (* (( (ptr) gf←c28168)+73)/* var←c26408 */  ))+5) );
         names←v7704 = (word) ( *( (fPt) ((*  (ptr) pd56 ))))(char←v4908, pd56);
         };
      lab←L100008: ;
      if ((names←v7704 != 0)) {
         }
      else {
         goto lab←L100005;
         };
      {
         word name←v7832;
SOURCE(3787, 24)
         name←v7832 = (*  (ptr) names←v7704 );
SOURCE(3813, 202)
         {
            word pd57;
            pd57 = (* (( (ptr) td←v7588)+3) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd57 ))))(td←v7588, name←v7832, pd57))) {
SOURCE(3851, 166)
               {
                  word cd←v7876;
                  word set←v7904;
SOURCE(3853, 37)
                  cd←v7876 = (word) MakeCharData←P120(td←v7588, name←v7832);
SOURCE(3892, 26)
                  set←v7904 = ((word) char←v4908 >> 8);
SOURCE(3920, 82)
                  {
                     word pd58;
                     pd58 = (* (( (ptr) (* (( (ptr) gf←c28168)+78)/* var←c26888 */  ))+10) );
                     if ((0 == (word) ( *( (fPt) ((*  (ptr) pd58 ))))(charDataForCode←v7616, char←v4908, cd←v7876, pd58))) {
SOURCE(3979, 23)
                        {
                           word var←c27112;
                           var←c27112 = XR←NewObject(8, (* (( (ptr) gf←c28168)+21) ));
                           (*  (ptr) var←c27112 ) = name←v7832;
                           (* (( (ptr) var←c27112)+1) ) = (* (( (ptr) gf←c28168)+4)/* lost←v3420 */  );
                           (* (( (ptr) gf←c28168)+4)/* lost←v3420 */  ) = var←c27112;
                           };
                        };
                     };
SOURCE(4004, 11)
                  return(cd←v7876);
                  };
               };
            };
         };
      names←v7704 = (* (( (ptr) names←v7704)+1) );
      goto lab←L100008;
      lab←L100005: ;
      };
SOURCE(4029, 56)
   if ((char←v4908 != (* (( (ptr) gf←c28168)+5)/* notdef←v3532 */  ))) {
SOURCE(4051, 34)
      return((word) GetCharData←P360(data←v4880, (* (( (ptr) gf←c28168)+5)/* notdef←v3532 */  )));
      };
SOURCE(4087, 12)
   return(0);
   }

static word Type1Contains←P420(self←v5012, char←v5040)
   word self←v5012;
   word char←v5040;
   {
   register ptr gf←c28200 =  (ptr) &globalframe;
   word var←c5084;
   word data←v7948;
   word td←v7976;
   word charDataForCode←v8004;
   /* Type1Contains: */ 
SOURCE(4105, 478)
SOURCE(4174, 30)
   data←v7948 = XR←Narrow((* (( (ptr) self←v5012)+1) ), (* (( (ptr) gf←c28200)+18) ));
SOURCE(4206, 40)
   td←v7976 = (*  (ptr) data←v7948 );
SOURCE(4248, 51)
   charDataForCode←v8004 = (* (( (ptr) data←v7948)+1) );
SOURCE(4301, 92)
   {
      word var←c27176;
      W2 var←c0105;
      {
         word pd59;
         pd59 = (* (( (ptr) (* (( (ptr) gf←c28200)+78)/* var←c26888 */  ))+7) );
         (void) ( *( (fPt) ((*  (ptr) pd59 ))))((word) &var←c0105, charDataForCode←v8004, char←v5040, pd59);
         };
      var←c27176 = var←c0105.f1;
      if ((var←c27176 == 0)) {
         goto lab←L100009;
         };
      if (((* (( (ptr) gf←c28200)+17) ) == XR←GetReferentType(var←c27176))) {
         {
            word cd←v8048;
            cd←v8048 = var←c27176;
SOURCE(4380, 13)
            return(1);
            };
         }
      else {
         lab←L100009: ;
         };
      };
SOURCE(4404, 154)
   {
      register word names←v8092;
      {
         word pd60;
         pd60 = (* (( (ptr) (* (( (ptr) gf←c28200)+73)/* var←c26408 */  ))+5) );
         names←v8092 = (word) ( *( (fPt) ((*  (ptr) pd60 ))))(char←v5040, pd60);
         };
      lab←L100013: ;
      if ((names←v8092 != 0)) {
         }
      else {
         goto lab←L100010;
         };
SOURCE(4500, 58)
      {
         word pd61;
         pd61 = (* (( (ptr) td←v7976)+3) );
         if ((0 != (word) ( *( (fPt) ((*  (ptr) pd61 ))))(td←v7976, (*  (ptr) names←v8092 ), pd61))) {
SOURCE(4545, 13)
            return(1);
            };
         };
      names←v8092 = (* (( (ptr) names←v8092)+1) );
      goto lab←L100013;
      lab←L100010: ;
      };
SOURCE(4569, 14)
   return(0);
   }

static word Type1NextChar←P480(self←v5144, char←v5172)
   word self←v5144;
   word char←v5172;
   {
   register ptr gf←c28232 =  (ptr) &globalframe;
   word var←c5216;
   word data←v8220;
   word set←v8276;
   word code←v8304;
   word charSetNonempty←v8332;
   /* Type1NextChar: */ 
SOURCE(4589, 604)
SOURCE(4659, 30)
   data←v8220 = XR←Narrow((* (( (ptr) self←v5144)+1) ), (* (( (ptr) gf←c28232)+18) ));
SOURCE(4736, 34)
   set←v8276 = ((word) char←v5172 >> 8);
SOURCE(4772, 28)
   code←v8304 = (char←v5172 & 0377);
SOURCE(4802, 73)
   charSetNonempty←v8332 = (word) GetNonemptySets←P300(data←v8220);
SOURCE(4877, 316)
   lab←L100016: ;
   if ((set←v8276 == 16777215)) {
SOURCE(4914, 14)
      set←v8276 = 0;
      code←v8304 = 0;
      }
   else {
      if ((code←v8304 < 255)) {
SOURCE(4950, 13)
         code←v8304 = BCK((code←v8304 + 1), 256);
         }
      else {
         if ((set←v8276 < 255)) {
SOURCE(4985, 11)
            set←v8276 = BCK((set←v8276 + 1), 16777216);
SOURCE(4998, 8)
            code←v8304 = 0;
            }
         else {
SOURCE(5020, 18)
            return( (word) -1);
            };
         };
      };
SOURCE(5040, 153)
   {
      word ix62;
      if ((
         ix62 = BCK(set←v8276, 256),
         ((*  (ptr) (( (ptr) charSetNonempty←v8332) + ((word) ix62 >> 5)) ) >> (31 - ((word) (ix62 & 037)))) & 1
         )) {
SOURCE(5071, 122)
         lab←L100019: ;
         if ((code←v8304 < 255)) {
            }
         else {
            goto lab←L100017;
            };
SOURCE(5097, 79)
         if ((0 != (word) Type1Contains←P420(self←v5144, (((word) set←v8276 << 8) + code←v8304)))) {
SOURCE(5147, 29)
            return((((word) set←v8276 << 8) + code←v8304));
            };
SOURCE(5178, 15)
         code←v8304 = BCK((code←v8304 + 1), 256);
         goto lab←L100019;
         lab←L100017: ;
         };
      };
   goto lab←L100016;
   }

static void Type1Escapement←P540(formal←c0122, self←v5276, char←v5304)
   word formal←c0122;
   word self←v5276;
   word char←v5304;
   {
   register ptr gf←c28264 =  (ptr) &globalframe;
   W2 var←c5348;
   word data←v8388;
   word cd←v8416;
   /* Type1Escapement: */ 
SOURCE(5220, 190)
SOURCE(5290, 30)
   data←v8388 = XR←Narrow((* (( (ptr) self←v5276)+1) ), (* (( (ptr) gf←c28264)+18) ));
SOURCE(5322, 38)
   cd←v8416 = (word) GetCharData←P360(data←v8388, char←v5304);
SOURCE(5362, 48)
   if ((cd←v8416 == 0)) {
      var←c5348.f0 = (*  (ptr) &fc36 );
      var←c5348.f1 = (*  (ptr) &fc36 );
      }
   else {
      var←c5348 = (*  (W2Pt) (( (ptr) cd←v8416)+1) );
      };
   /* removed tail goto */ 
   (*  (W2Pt) formal←c0122 ) = var←c5348;
   return;
   }

static word Type1Amplified←P600(self←v5408, char←v5436)
   word self←v5408;
   word char←v5436;
   {
   register ptr gf←c28296 =  (ptr) &globalframe;
   word var←c5480;
   word data←v8460;
   /* Type1Amplified: */ 
SOURCE(5416, 146)
SOURCE(5486, 30)
   data←v8460 = XR←Narrow((* (( (ptr) self←v5408)+1) ), (* (( (ptr) gf←c28296)+18) ));
SOURCE(5518, 44)
   return( (unsigned) (char←v5436 == 32));
   }

static word Type1Correction←P660(self←v5540, char←v5568)
   word self←v5540;
   word char←v5568;
   {
   word var←c5612;
   /* Type1Correction: */ 
SOURCE(5568, 148)
SOURCE(5649, 67)
   if ((char←v5568 == 32)) {
      return(1);
      }
   else {
      return(0);
      };
   }

static void Type1BoundingBox←P720(formal←c0137, self←v5672, char←v5700)
   word formal←c0137;
   word self←v5672;
   word char←v5700;
   {
   register ptr gf←c28328 =  (ptr) &globalframe;
   W4 var←c5744;
   word data←v8504;
   word cd←v8532;
   /* Type1BoundingBox: */ 
SOURCE(5722, 198)
SOURCE(5797, 30)
   data←v8504 = XR←Narrow((* (( (ptr) self←v5672)+1) ), (* (( (ptr) gf←c28328)+18) ));
SOURCE(5829, 38)
   cd←v8532 = (word) GetCharData←P360(data←v8504, char←v5700);
SOURCE(5869, 51)
   if ((cd←v8532 == 0)) {
      var←c5744.f0 = (*  (ptr) &fc36 );
      var←c5744.f1 = (*  (ptr) &fc36 );
      var←c5744.f2 = (*  (ptr) &fc36 );
      var←c5744.f3 = (*  (ptr) &fc36 );
      }
   else {
      var←c5744 = (*  (W4Pt) (( (ptr) cd←v8532)+3) );
      };
   /* removed tail goto */ 
   (*  (W4Pt) formal←c0137 ) = var←c5744;
   return;
   }

static void Type1FontBoundingBox←P780(formal←c0151, self←v5804)
   word formal←c0151;
   word self←v5804;
   {
   register ptr gf←c28360 =  (ptr) &globalframe;
   W4 var←c5848;
   word data←v8576;
   word type1Data←v8604;
   W4 box1←v8632;
   W4 rect1←v8660;
   W4 rect2←v8688;
   W4 box2←v8716;
   /* Type1FontBoundingBox: */ 
SOURCE(5926, 447)
SOURCE(5992, 30)
   data←v8576 = XR←Narrow((* (( (ptr) self←v5804)+1) ), (* (( (ptr) gf←c28360)+18) ));
SOURCE(6024, 47)
   type1Data←v8604 = (*  (ptr) data←v8576 );
SOURCE(6073, 40)
   box1←v8632 = (*  (W4Pt) (( (ptr) type1Data←v8604)+18) );
SOURCE(6115, 61)
   {
      word pd63;
      pd63 = (* (( (ptr) (* (( (ptr) gf←c28360)+77)/* var←c26824 */  ))+5) );
      (void) ( *( (fPt) ((*  (ptr) pd63 ))))((word) &rect1←v8660, box1←v8632, pd63);
      };
SOURCE(6178, 97)
   {
      word pd64;
      pd64 = (* (( (ptr) (* (( (ptr) gf←c28360)+76)/* var←c26760 */  ))+46) );
      (void) ( *( (fPt) ((*  (ptr) pd64 ))))((word) &rect2←v8688, (* (( (ptr) type1Data←v8604)+17) ), rect1←v8660, pd64);
      };
SOURCE(6277, 55)
   {
      word pd65;
      pd65 = (* (( (ptr) (* (( (ptr) gf←c28360)+77)/* var←c26824 */  ))+4) );
      (void) ( *( (fPt) ((*  (ptr) pd65 ))))((word) &box2←v8716, rect2←v8688, pd65);
      };
SOURCE(6334, 39)
   {
      W4 var←c27368;
      {
         word pd66;
         pd66 = (* (( (ptr) (* (( (ptr) gf←c28360)+77)/* var←c26824 */  ))+7) );
         (void) ( *( (fPt) ((*  (ptr) pd66 ))))((word) &var←c27368, box2←v8716, pd66);
         };
      var←c5848 = var←c27368;
      /* removed tail goto */ 
      };
   (*  (W4Pt) formal←c0151 ) = var←c5848;
   return;
   }

static void Type1Kern←P840(formal←c0156, self←v5908, char←v5936, successor←v5964)
   word formal←c0156;
   word self←v5908;
   word char←v5936;
   word successor←v5964;
   {
   /* Type1Kern: */ 
SOURCE(6379, 89)
   /* Return var split */ 
SOURCE(6454, 14)
   /* eliminated constant return field */ 
   /* eliminated constant return field */ 
   /* removed tail goto */ 
   (* (( (ptr) formal←c0156)+1) ) = (*  (ptr) &fc36 );
   (*  (ptr) formal←c0156 ) = (*  (ptr) &fc36 );
   return;
   }

static word Type1NextKern←P900(self←v6068, char←v6096, successor←v6124)
   word self←v6068;
   word char←v6096;
   word successor←v6124;
   {
   word var←c6168;
   /* Type1NextKern: */ 
SOURCE(6474, 98)
SOURCE(6555, 17)
   return( (word) -1);
   }

static word Type1Ligature←P960(self←v6228, char←v6256, successor←v6284)
   word self←v6228;
   word char←v6256;
   word successor←v6284;
   {
   word var←c6328;
   /* Type1Ligature: */ 
SOURCE(6578, 98)
SOURCE(6659, 17)
   return( (word) -1);
   }

static word Type1NextLigature←P1020(self←v6388, char←v6416, successor←v6444)
   word self←v6388;
   word char←v6416;
   word successor←v6444;
   {
   word var←c6488;
   /* Type1NextLigature: */ 
SOURCE(6682, 102)
SOURCE(6767, 17)
   return( (word) -1);
   }

static void Type1Mask←P1080(self←v6548, char←v6576, context←v6604)
   word self←v6548;
   word char←v6576;
   word context←v6604;
   {
   W8 var←c28392;
   register ptr gf←c28424 =  (ptr) &globalframe;
   /* declaration of var←c27432 skipped */ 
   word data←v8760;
   word cd←v8788;
   /* Type1Mask: */ 
SOURCE(6790, 416)
   {
      word tmpAddr67;
      tmpAddr67 = (word) (( (ptr) &var←c28392)+4)/* var←c27432 */ ;
      (*  (ptr) tmpAddr67 ) = ( ((word)  (fPt) path←P2112) );
      (* (( (ptr) tmpAddr67) + 1) ) = 1;
      };
SOURCE(6865, 30)
   data←v8760 = XR←Narrow((* (( (ptr) self←v6548)+1) ), (* (( (ptr) gf←c28424)+18) ));
SOURCE(6897, 38)
   cd←v8788 = (word) GetCharData←P360(data←v8760, char←v6576);
SOURCE(6937, 269)
   if ((cd←v8788 != 0)) {
SOURCE(6953, 255)
      {
         /* declaration of type1Data←v8832 skipped */ 
         /* declaration of name←v8860 skipped */ 
SOURCE(6955, 47)
         var←c28392.f6/* type1Data←v8832 */  = (*  (ptr) data←v8760 );
SOURCE(7004, 20)
         var←c28392.f7/* name←v8860 */  = (*  (ptr) cd←v8788 );
SOURCE(7129, 45)
         {
            word pd68;
            pd68 = (* (( (ptr) (* (( (ptr) gf←c28424)+79)/* var←c27464 */  ))+14) );
            (void) ( *( (fPt) ((*  (ptr) pd68 ))))(context←v6604, (* (( (ptr) var←c28392.f6/* type1Data←v8832 */ )+17) ), pd68);
            };
SOURCE(7176, 30)
         {
            word pd69;
            pd69 = (* (( (ptr) (* (( (ptr) gf←c28424)+79)/* var←c27464 */  ))+62) );
            (void) ( *( (fPt) ((*  (ptr) pd69 ))))(context←v6604, (word) (( (bPt) &var←c28392)+16)/* var←c27432 */ , 0, pd69);
            };
         };
      };
   }

static void path←P2112(moveTo←v21900, lineTo←v21928, curveTo←v21956, conicTo←v21984, arcTo←v22012, formal←c28488)
   word moveTo←v21900;
   word lineTo←v21928;
   word curveTo←v21956;
   word conicTo←v21984;
   word arcTo←v22012;
   word formal←c28488;
   {
   register ptr gf←c28456 =  (ptr) &globalframe;
   formal←c28488 = (formal←c28488 - 16);
   /* path: */ 
SOURCE(7026, 28)
SOURCE(7056, 68)
   {
      W4 var←c27528;
      {
         W4 var←c0184;
         {
            W2 var←c27496;
            var←c27496.f0 = (*  (ptr) &fc36 );
            var←c27496.f1 = (*  (ptr) &fc36 );
            {
               word pd70;
               pd70 = (* (( (ptr) (* (( (ptr) gf←c28456)+75)/* var←c26664 */  ))+15) );
               (void) ( *( (fPt) ((*  (ptr) pd70 ))))((word) &var←c0184, (* (( (ptr) formal←c28488)+6) ), (* (( (ptr) formal←c28488)+7) ), moveTo←v21900, lineTo←v21928, curveTo←v21956
                  , 0, 0, 0, 0, 0, 0
                  , 0, var←c27496, pd70);
               };
            };
         var←c27528 = var←c0184;
         };
      };
   }

static void RegisterMakeCharMask←P1140(makeCharMask←v6664)
   word makeCharMask←v6664;
   {
   register ptr gf←c28520 =  (ptr) &globalframe;
   /* RegisterMakeCharMask: */ 
SOURCE(7279, 124)
SOURCE(7366, 37)
   (* (( (ptr) gf←c28520)+6)/* registeredMakeCharMask←v3924 */  ) = XR←CheckProc(makeCharMask←v6664);
   }

static word DispatchMakeCharMask←P1200(parameters←v18504, font←v18532, char←v18560)
   word parameters←v18504;
   word font←v18532;
   word char←v18560;
   {
   register ptr gf←c28552 =  (ptr) &globalframe;
   word var←c18604;
   word P←v8932;
   /* DispatchMakeCharMask: */ 
SOURCE(7408, 207)
SOURCE(7467, 60)
   P←v8932 = (* (( (ptr) gf←c28552)+6)/* registeredMakeCharMask←v3924 */  );
SOURCE(7529, 28)
   if ((P←v8932 == 0)) {
SOURCE(7545, 12)
      return(0);
      };
SOURCE(7559, 56)
   return((word) ( *( (fPt) ((*  (ptr) P←v8932 ))))(parameters←v18504, font←v18532, char←v18560, P←v8932));
   }

static word MakeType1TypefaceClass←P1260(type←v6724)
   word type←v6724;
   {
   register ptr gf←c28584 =  (ptr) &globalframe;
   word var←c6768;
   word class←v8976;
   /* MakeType1TypefaceClass: */ 
SOURCE(7621, 559)
SOURCE(7713, 450)
   class←v8976 = XR←NewObject(68, (* (( (ptr) gf←c28584)+22) ));
   (*  (ptr) class←v8976 ) = type←v6724;
   (* (( (ptr) class←v8976)+2) ) = (word) (( (bPt) gf←c28584)+232)/* var←c26120 */ ;
   (* (( (ptr) class←v8976)+3) ) = (word) (( (bPt) gf←c28584)+224)/* var←c26088 */ ;
   (* (( (ptr) class←v8976)+4) ) = (word) (( (bPt) gf←c28584)+216)/* var←c26056 */ ;
   (* (( (ptr) class←v8976)+5) ) = (word) (( (bPt) gf←c28584)+208)/* var←c26024 */ ;
   (* (( (ptr) class←v8976)+6) ) = (word) (( (bPt) gf←c28584)+200)/* var←c25992 */ ;
   (* (( (ptr) class←v8976)+7) ) = (word) (( (bPt) gf←c28584)+192)/* var←c25960 */ ;
   (* (( (ptr) class←v8976)+8) ) = (word) (( (bPt) gf←c28584)+184)/* var←c25928 */ ;
   (* (( (ptr) class←v8976)+9) ) = (word) (( (bPt) gf←c28584)+160)/* var←c25832 */ ;
   (* (( (ptr) class←v8976)+10) ) = (word) (( (bPt) gf←c28584)+152)/* var←c25800 */ ;
   (* (( (ptr) class←v8976)+11) ) = (word) (( (bPt) gf←c28584)+176)/* var←c25896 */ ;
   (* (( (ptr) class←v8976)+12) ) = (word) (( (bPt) gf←c28584)+168)/* var←c25864 */ ;
   (* (( (ptr) class←v8976)+13) ) = (word) (( (bPt) gf←c28584)+144)/* var←c25768 */ ;
   (* (( (ptr) class←v8976)+14) ) = (word) (( (bPt) gf←c28584)+128)/* var←c25704 */ ;
   (* (( (ptr) class←v8976)+15) ) = XR←CheckProc(0);
SOURCE(8165, 15)
   return(class←v8976);
   }

static word Type1Create←P1320(stream←v6828)
   word stream←v6828;
   {
   register ptr gf←c28616 =  (ptr) &globalframe;
   word var←c6872;
   word type1Data←v9020;
   word data←v9048;
   /* Type1Create: */ 
SOURCE(8264, 239)
SOURCE(8325, 60)
   {
      word pd71;
      pd71 = (* (( (ptr) (* (( (ptr) gf←c28616)+75)/* var←c26664 */  ))+14) );
      type1Data←v9020 = (word) ( *( (fPt) ((*  (ptr) pd71 ))))(stream←v6828, pd71);
      };
SOURCE(8387, 41)
   data←v9048 = (word) DataFromType1Data←P240(type1Data←v9020);
SOURCE(8430, 73)
   {
      word var←c27624;
      var←c27624 = XR←NewObject(32, (* (( (ptr) gf←c28616)+24) ));
      (*  (ptr) var←c27624 ) = (* (( (ptr) gf←c28616)+7)/* type1Class←v4036 */  );
      (* (( (ptr) var←c27624)+1) ) = data←v9048;
      (* (( (ptr) var←c27624)+4) ) = 2147483647;
      return(var←c27624);
      };
   }

static void NoName←Q2472(formal←c0203, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
   word formal←c0203;
   word formal←c200000;
   word formal←c200001;
   word formal←c200002;
   word formal←c200003;
   {
   register ptr gf←c0232 =  (ptr) &globalframe;
   if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0232)+73)/* var←c26408 */  ))+7) ))) {
SOURCE(3064, 8)
      (*  (ptr) formal←c0203 ) = 2;
      (* (( (ptr) formal←c0203)+1) ) = 2;
      return;
      };
   (*  (ptr) formal←c0203 ) = 0;
   (* (( (ptr) formal←c0203)+1) ) = 0;
   return;
   }

/* file: ImagerType1TypefaceImpl, module: ImagerType1TypefaceImpl, compiled at: March 9, 1994 11:42:14 am PST */ 
extern void XR←install←ImagerType1TypefaceImpl() {
   NoName←Q2352();
   }
extern void XR←run←ImagerType1TypefaceImpl() { XR←Start(&globalframe); }