/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1992 by Xerox Corporation.  All rights reserved. */
/* time: June 3, 1992 10:21:55 am PDT */
/* C2C version: October 16, 1990 (native) */
/* ref-counting: off */
/* file: ImagerPrintContextImpl, module: ImagerPrintContextImpl */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [3729459926,2436903308] ImagerPrintContextImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef word (*fPt)();
typedef struct {word f0, f1, f2, f3;} W4;
typedef W4 *W4Pt;
typedef struct {word f0, f1, f2;} W3;
typedef W3 *W3Pt;
typedef struct {word f0, f1;} W2;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
#define SOURCE(p, l) /* source p, l */
static float fc24 = 0.48;
static float fc25 = 45.0;
static float fc26 = 75.0;
static float fc27 = 105.0;
static float fc28 = 90.0;
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
static float fc31 = 0.05;
#define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i )
#define MAX(cast, x, y)  ( ( cast x) > ( cast y) ? (x) : (y) )
#define MIN(cast, x, y)  ( ( cast x) < ( cast y) ? (x) : (y) )
static float fc66 = 1.0;
static float fc69 = 0.0;
static float fc72 = 2.0;
static float fc75 = 3.0;
static void NoName←Q2076();
static void ImagerPrintContextImpl←P0();
static word MakeHalftoneProperties←P60();
static word SimpleCreate←P120();
static word Create←P180();
static word IsPrintDevice←P240();
static word GetDeviceBitmap←P300();
static void SetDeviceBitmap←P360();
static word GetColorData←P420();
static void ValidateAllow←P480();
static void SetColorData←P540();
static void SetBitmap←P600();
static void SetSeparation←P660();
static void MySetColor←P720();
static word TranslateHalftoneProperties←P780();
static void MySetHalftoneProperties←P840();
static void MyMaskBoxes←P900();
static void MyMaskBitmap←P960();
static void MyMaskRegion←P1020();
static void MyMaskRawBitmaps←P1080();
static void WMaskPixelArray←P1200();
static void SetMaskCacheTradeoffs←P1260();
static void Action←P1668();
static struct {unsigned f; char r[4];} string1 = {131076, "\216\251\000"};
static struct {unsigned f; char r[4];} string2 = {65537, "\001\000\000"};
static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\241\011\366\176\300\127\130\105\301\100\274\000\000"};
static struct {unsigned f; char r[4];} string4 = {131074, "\003\016\000"};
static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\241\011\366\176\300\127\130\105\301\102\250\000\000"};
static struct {unsigned f; char r[44];} string6 = {2752556, "\260\006\005\146\151\162\163\164\257\300\236\211\262\021\300\215\235\324\340\101\034\005\004\162\145\163\164\214\257\300\236\211\262\021\300\215\235\324\340\101\034\261\000"};
static struct {unsigned f; char r[4];} string7 = {131074, "\004)\000"};
static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\336\113\012\326\300\221\100\061\214\100\200\000\000"};
static struct {unsigned f; char r[4];} string9 = {131074, "\004\003\000"};
static struct {unsigned f; char r[8];} string10 = {327688, "Print\000\000"};
static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\336\113\012\326\300\221\100\061\214\100\164\000\000"};
static struct {unsigned f; char r[12];} string12 = {720907, "\006\004$\001(\001,\001@`\001"};
static struct {unsigned f; char r[16];} string13 = {851984, "\257\300\361\072\110\004\300\054\212\055\367\100\150\000\000"};
static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\241\011\366\176\300\127\130\105\301\100\150\000\000"};
static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\352\210\333\354\300\066\006\043\223\100\150\000\000"};
static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\254\224\163\216\300\143\061\230\115\100\150\000\000"};
static struct {unsigned f; char r[16];} string17 = {851984, "\257\300\230\052\311\306\300\242\375\035\324\100\150\000\000"};
static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\166\344\362\325\300\124\127\204\375\100\150\000\000"};
static struct {unsigned f; char r[16];} string19 = {851984, "\257\300\067\246\211\216\300\354\224\134\067\100\150\000\000"};
static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\213\226\301\143\300\072\355\320\373\100\150\000\000"};
static struct {unsigned f; char r[16];} string21 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"};
static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\136\344\215\017\300\051\016\154\236\100\150\000\000"};
static struct {unsigned f; char r[16];} string23 = {851984, "\257\300\363\034\007\231\300\362\156\044\001\100\150\000\000"};
static struct {
   word f0[25]; word f25; word f26; word f27; 
   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[19]; 
   } globalframe = {
   {0}, (word) SetMaskCacheTradeoffs←P1260, 0, (word) WMaskPixelArray←P1200, 
   0, (word) MyMaskRawBitmaps←P1080, 0, (word) MyMaskRegion←P1020, 
   0, (word) MyMaskBitmap←P960, 0, (word) MyMaskBoxes←P900, 
   0, (word) MySetHalftoneProperties←P840, 0, (word) TranslateHalftoneProperties←P780, 
   0, (word) MySetColor←P720, 0, (word) SetSeparation←P660, 
   0, (word) SetBitmap←P600, 0, (word) SetColorData←P540, 
   0, (word) ValidateAllow←P480, 0, (word) GetColorData←P420, 
   0, (word) SetDeviceBitmap←P360, 0, (word) GetDeviceBitmap←P300, 
   0, (word) IsPrintDevice←P240, 0, (word) Create←P180, 
   0, (word) SimpleCreate←P120, 0, (word) MakeHalftoneProperties←P60, 
   0, (word) ImagerPrintContextImpl←P0, {0}
   };

static void NoName←Q2076()
   {
   register ptr gf←c0180 =  (ptr) &globalframe;
   word var←c31964;
   (* (( (ptr) gf←c0180)+12) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
   (* (( (ptr) gf←c0180)+15) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4);
   (* (( (ptr) gf←c0180)+17) ) = (word) XR←GetTypeIndexS((word) (&string5));
   (* (( (ptr) gf←c0180)+19) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7);
   (* (( (ptr) gf←c0180)+22) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string9);
   (*  (ptr) (( (bPt) gf←c0180)+96) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0180)+12) ), (word) &string10);
   (void) XR←DeclareGlobalFrame((word) "ImagerPrintContextImpl", &globalframe, (word) XR←GetTypeIndex((word) &string11, 0, (word) &string12)
      , (word) (( (bPt) gf←c0180)+260)/* var←c30556 */ );
   var←c31964 = (word) XR←ImportInterface((word) "ImagerBrick", (word) XR←GetTypeIndexS((word) (&string13)), 4);
   (* (( (ptr) gf←c0180)+77)/* var←c30844 */  ) = var←c31964;
   (void) XR←ImportProcS(var←c31964, 203424264);
   var←c31964 = (word) XR←ImportInterface((word) "ImagerDevice", (word) XR←GetTypeIndexS((word) (&string14)), 2);
   (* (( (ptr) gf←c0180)+80)/* var←c31100 */  ) = var←c31964;
   (void) XR←ImportProcS(var←c31964, 69730569);
   var←c31964 = (word) XR←ImportInterface((word) "ImagerDeviceWorks", (word) XR←GetTypeIndexS((word) (&string15)), 23);
   (* (( (ptr) gf←c0180)+75)/* var←c30780 */  ) = var←c31964;
   (void) XR←ImportProcS(var←c31964, 791299);
   (void) XR←ImportProcS(var←c31964, 2102792);
   (void) XR←ImportProcS(var←c31964, 67900675);
   (void) XR←ImportProcS(var←c31964, 1577987);
   (void) XR←ImportProcS(var←c31964, 791043);
   (void) XR←ImportProcS(var←c31964, 3150092);
   (void) XR←ImportProcS(var←c31964, 2101254);
   (void) XR←ImportProcS(var←c31964, 2101000);
   (void) XR←ImportProcS(var←c31964, 1576451);
   (void) XR←ImportProcS(var←c31964, 1051908);
   (void) XR←ImportProcS(var←c31964, 1051652);
   var←c31964 = (word) XR←ImportInterface((word) "ImagerMaskCache", (word) XR←GetTypeIndexS((word) (&string16)), 21);
   (* (( (ptr) gf←c0180)+79)/* var←c31068 */  ) = var←c31964;
   (void) XR←ImportProcS(var←c31964, 265473);
   (void) XR←ImportProcS(var←c31964, 527106);
   (void) XR←ImportProcS(var←c31964, 67375105);
   var←c31964 = (word) XR←ImportInterface((word) "ImagerPixelArray", (word) XR←GetTypeIndexS((word) (&string17)), 13);
   (* (( (ptr) gf←c0180)+83)/* var←c31772 */  ) = var←c31964;
   (void) XR←ImportProcS(var←c31964, 2623240);
   var←c31964 = (word) XR←ImportInterface((word) "ImagerPrintColor", (word) XR←GetTypeIndexS((word) (&string18)), 4);
   (* (( (ptr) gf←c0180)+78)/* var←c30972 */  ) = var←c31964;
   (void) XR←ImportProcS(var←c31964, 1835780);
   (void) XR←ImportProcS(var←c31964, 786947);
   (void) XR←ImportProcS(var←c31964, 524546);
   (void) XR←ImportProcS(var←c31964, 68157444);
   var←c31964 = (word) XR←ImportInterface((word) "ImagerRaster", (word) XR←GetTypeIndexS((word) (&string19)), 13);
   (* (( (ptr) gf←c0180)+76)/* var←c30812 */  ) = var←c31964;
   (void) XR←ImportProcS(var←c31964, 1312514);
   (void) XR←ImportProcS(var←c31964, 67371521);
   (void) XR←ImportProcS(var←c31964, 68419845);
   (void) XR←ImportProcS(var←c31964, 67371009);
   var←c31964 = (word) XR←ImportInterface((word) "ImagerSample", (word) XR←GetTypeIndexS((word) (&string20)), 60);
   (* (( (ptr) gf←c0180)+81)/* var←c31388 */  ) = var←c31964;
   (void) XR←ImportProcS(var←c31964, 798979);
   (void) XR←ImportProcS(var←c31964, 1062660);
   (void) XR←ImportProcS(var←c31964, 1586437);
   var←c31964 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string21)), 55);
   (* (( (ptr) gf←c0180)+82)/* var←c31644 */  ) = var←c31964;
   (void) XR←ImportProcS(var←c31964, 262401);
   (void) XR←ImportProcS(var←c31964, 67635458);
   var←c31964 = (word) XR←ExportInterface((word) "ImagerPrintContext", (word) XR←GetTypeIndexS((word) (&string22)), 5);
   (* (( (ptr) gf←c0180)+84)/* var←c31996 */  ) = var←c31964;
   (void) XR←ExportProcS(var←c31964, (word) (( (bPt) gf←c0180)+100)/* var←c29916 */ , 262145);
   (void) XR←ExportProcS(var←c31964, (word) (( (bPt) gf←c0180)+236)/* var←c30460 */ , 69992713);
   (void) XR←ExportProcS(var←c31964, (word) (( (bPt) gf←c0180)+244)/* var←c30492 */ , 69206534);
   (void) XR←ExportProcS(var←c31964, (word) (( (bPt) gf←c0180)+180)/* var←c30236 */ , 525058);
   (void) XR←ExportProcS(var←c31964, (word) (( (bPt) gf←c0180)+172)/* var←c30204 */ , 525314);
   var←c31964 = (word) XR←ExportInterface((word) "ImagerPrintDevice", (word) XR←GetTypeIndexS((word) (&string23)), 5);
   (* (( (ptr) gf←c0180)+84)/* var←c31996 */  ) = var←c31964;
   (void) XR←ExportProcS(var←c31964, (word) (( (bPt) gf←c0180)+228)/* var←c30428 */ , 67371009);
   (void) XR←ExportProcS(var←c31964, (word) (( (bPt) gf←c0180)+204)/* var←c30332 */ , 67371265);
   (void) XR←ExportProcS(var←c31964, (word) (( (bPt) gf←c0180)+188)/* var←c30268 */ , 524802);
   (void) XR←ExportProcS(var←c31964, (word) (( (bPt) gf←c0180)+220)/* var←c30396 */ , 67371777);
   (void) XR←ExportProcS(var←c31964, (word) (( (bPt) gf←c0180)+212)/* var←c30364 */ , 525314);
   }

static void ImagerPrintContextImpl←P0(formal←c045, formal←c042)
   word formal←c045;
   word formal←c042;
   {
   register ptr gf←c32028 =  (ptr) &globalframe;
   /* ImagerPrintContextImpl: */ 
SOURCE(260, 10486)
SOURCE(797, 28)
   (* (( (ptr) gf←c32028)+4)/* defaultDotShape←v3252 */  ) = (*  (ptr) &fc24 );
SOURCE(827, 117)
   (* (( (ptr) gf←c32028)+5) ) = (*  (ptr) &fc25 );
   (* (( (ptr) gf←c32028)+6) ) = (*  (ptr) &fc26 );
   (* (( (ptr) gf←c32028)+7) ) = (*  (ptr) &fc27 );
   (* (( (ptr) gf←c32028)+8) ) = (*  (ptr) &fc28 );
SOURCE(9174, 257)
   {
      word var←c30716;
      var←c30716 = XR←NewObject(60, (* (( (ptr) gf←c32028)+15) ));
      (*  (ptr) var←c30716 ) = (word) (( (bPt) gf←c32028)+164)/* var←c30172 */ ;
      (* (( (ptr) var←c30716)+1) ) = XR←CheckProc(0);
      (* (( (ptr) var←c30716)+2) ) = (word) (( (bPt) gf←c32028)+148)/* var←c30108 */ ;
      (* (( (ptr) var←c30716)+3) ) = (word) (( (bPt) gf←c32028)+140)/* var←c30076 */ ;
      (* (( (ptr) var←c30716)+4) ) = (word) (( (bPt) gf←c32028)+124)/* var←c30012 */ ;
      (* (( (ptr) var←c30716)+5) ) = (word) (( (bPt) gf←c32028)+132)/* var←c30044 */ ;
      (* (( (ptr) var←c30716)+6) ) = XR←CheckProc(0);
      (* (( (ptr) var←c30716)+7) ) = (word) (( (bPt) gf←c32028)+116)/* var←c29980 */ ;
      (* (( (ptr) var←c30716)+8) ) = XR←CheckProc(0);
      (* (( (ptr) var←c30716)+9) ) = XR←CheckProc(0);
      (* (( (ptr) var←c30716)+10) ) = XR←CheckProc(0);
      (* (( (ptr) var←c30716)+11) ) = XR←CheckProc(0);
      (* (( (ptr) var←c30716)+12) ) = XR←CheckProc(0);
      (* (( (ptr) var←c30716)+13) ) = XR←CheckProc(0);
      (* (( (ptr) gf←c32028)+9)/* deviceClass←v3868 */  ) = var←c30716;
      };
SOURCE(9434, 599)
   {
      word var←c30748;
      var←c30748 = XR←NewObject(44, (* (( (ptr) gf←c32028)+17) ));
      (*  (ptr) var←c30748 ) = (* (( (ptr) (* (( (ptr) gf←c32028)+75)/* var←c30780 */  ))+16) );
      (* (( (ptr) var←c30748)+1) ) = (* (( (ptr) (* (( (ptr) gf←c32028)+75)/* var←c30780 */  ))+17) );
      (* (( (ptr) var←c30748)+2) ) = (* (( (ptr) (* (( (ptr) gf←c32028)+75)/* var←c30780 */  ))+18) );
      (* (( (ptr) var←c30748)+3) ) = (* (( (ptr) (* (( (ptr) gf←c32028)+75)/* var←c30780 */  ))+19) );
      (* (( (ptr) var←c30748)+4) ) = (* (( (ptr) (* (( (ptr) gf←c32028)+75)/* var←c30780 */  ))+20) );
      (* (( (ptr) var←c30748)+5) ) = (* (( (ptr) (* (( (ptr) gf←c32028)+75)/* var←c30780 */  ))+21) );
      (* (( (ptr) var←c30748)+6) ) = (* (( (ptr) (* (( (ptr) gf←c32028)+75)/* var←c30780 */  ))+22) );
      (* (( (ptr) var←c30748)+7) ) = (word) (( (bPt) gf←c32028)+108)/* var←c29948 */ ;
      (* (( (ptr) var←c30748)+8) ) = (* (( (ptr) (* (( (ptr) gf←c32028)+75)/* var←c30780 */  ))+24) );
      (* (( (ptr) var←c30748)+9) ) = (* (( (ptr) (* (( (ptr) gf←c32028)+75)/* var←c30780 */  ))+25) );
      (* (( (ptr) var←c30748)+10) ) = (* (( (ptr) (* (( (ptr) gf←c32028)+75)/* var←c30780 */  ))+26) );
      (* (( (ptr) gf←c32028)+10)/* worksClass←v3896 */  ) = var←c30748;
      };
SOURCE(10036, 74)
   {
      word pd29;
      pd29 = (* (( (ptr) (* (( (ptr) gf←c32028)+76)/* var←c30812 */  ))+4) );
      (* (( (ptr) gf←c32028)+11)/* contextClass←v3924 */  ) = (word) ( *( (fPt) ((*  (ptr) pd29 ))))((* ((( (ptr) gf←c32028)+24)
         ) ), pd29);
      };
SOURCE(10717, 29)
   (void) SetMaskCacheTradeoffs←P1260((* ((( (ptr) gf←c32028)+24)) ));
   }

static word MakeHalftoneProperties←P60(logicalDevice←v4152, pixelsPerHalftoneDot←v4180, toners←v4208)
   word logicalDevice←v4152;
   word pixelsPerHalftoneDot←v4180;
   word toners←v4208;
   {
   register ptr gf←c32060 =  (ptr) &globalframe;
   word h←v4252;
   W4 angle←v6912;
   /* MakeHalftoneProperties: */ 
SOURCE(947, 563)
SOURCE(947, 563)
   h←v4252 = 0;
SOURCE(1133, 73)
   angle←v6912 = (*  (W4Pt) (( (ptr) gf←c32060)+5)/* defaultScreenAngle←v3280 */  );
SOURCE(1208, 302)
   {
      register word t←v6992 = 0;
      lab←L100003: ;
SOURCE(1270, 240)
      if (((word) toners←v4208 >> (31 - (t←v6992 + 16))) & 1) {
SOURCE(1288, 224)
         {
            word angle←v7036;
            W3 brick←v7064;
SOURCE(1290, 35)
            angle←v7036 = (* ((( (ptr) gf←c32060)+5)/* defaultScreenAngle←v3280 */ +BCK(t←v6992, 4)) );
SOURCE(1327, 133)
            {
               word pd30;
               pd30 = (* (( (ptr) (* (( (ptr) gf←c32060)+77)/* var←c30844 */  ))+6) );
               (void) ( *( (fPt) ((*  (ptr) pd30 ))))((word) &brick←v7064, pixelsPerHalftoneDot←v4180, angle←v7036, (* (( (ptr) gf←c32060)+4)
                  /* defaultDotShape←v3252 */  ), (*  (ptr) &fc31 ), 16
                  , 255, 0, 0, pd30);
               };
SOURCE(1462, 48)
            {
               word var←c30876;
               var←c30876 = XR←NewObject(24, (* (( (ptr) gf←c32060)+19) ));
               (* (( (ptr) var←c30876)+1) ) = t←v6992;
               (*  (W3Pt) (( (ptr) var←c30876)+2) ) = brick←v7064;
               (* (( (ptr) var←c30876)+5) ) = h←v4252;
               h←v4252 = var←c30876;
               };
            };
         };
      if ((t←v6992 >= 3)) {
         goto lab←L100000;
         };
      t←v6992 = (t←v6992 + 1);
      goto lab←L100003;
      lab←L100000: ;
      };
SOURCE(947, 563)
   return(h←v4252);
   }

static word SimpleCreate←P120(deviceSpaceSize←v4312, scanMode←v4340, surfaceUnitsPerInch←v4368, logicalDevice←v4396, pixelsPerHalftoneDot←v4424, toners←v4452)
   W2 deviceSpaceSize←v4312;
   word scanMode←v4340;
   W2 surfaceUnitsPerInch←v4368;
   word logicalDevice←v4396;
   word pixelsPerHalftoneDot←v4424;
   word toners←v4452;
   {
   register ptr gf←c32092 =  (ptr) &globalframe;
   word var←c4496;
   word halftoneProperties←v7108;
   /* SimpleCreate: */ 
SOURCE(1528, 599)
SOURCE(1788, 119)
   halftoneProperties←v7108 = (word) MakeHalftoneProperties←P60(logicalDevice←v4396, pixelsPerHalftoneDot←v4424, toners←v4452)
   ;
SOURCE(1909, 218)
   return((word) Create←P180(deviceSpaceSize←v4312, scanMode←v4340, surfaceUnitsPerInch←v4368, logicalDevice←v4396, halftoneProperties←v7108, 0
      , 0, (* (( (ptr) gf←c32092)+24) ), 0));
   }

static word Create←P180(deviceSpaceSize←v4556, scanMode←v4584, surfaceUnitsPerInch←v4612, logicalDevice←v4640, halftoneProperties←v4668, correction←v4696, interpolate←v4724, fontCacheName←v4752, parameters←v4780)
   W2 deviceSpaceSize←v4556;
   word scanMode←v4584;
   W2 surfaceUnitsPerInch←v4612;
   word logicalDevice←v4640;
   word halftoneProperties←v4668;
   word correction←v4696;
   word interpolate←v4724;
   word fontCacheName←v4752;
   word parameters←v4780;
   {
   register ptr gf←c32124 =  (ptr) &globalframe;
   word var←c4824;
   word data←v7152;
   word deviceParm←v7180;
   word context←v7208;
   word device←v7236;
   /* Create: */ 
SOURCE(2133, 1202)
SOURCE(2510, 215)
   {
      word var←c30940;
      word var←c31004;
      {
         word pd32;
         pd32 = (* (( (ptr) (* (( (ptr) gf←c32124)+78)/* var←c30972 */  ))+4) );
         var←c30940 = (word) ( *( (fPt) ((*  (ptr) pd32 ))))(logicalDevice←v4640, halftoneProperties←v4668, correction←v4696, interpolate←v4724, pd32)
         ;
         };
      var←c31004 = XR←NewObject(8, (* (( (ptr) gf←c32124)+22) ));
      (* (( (ptr) var←c31004)+1) ) = var←c30940;
      data←v7152 = var←c31004;
      };
SOURCE(2727, 307)
   {
      word var←c31036;
      {
         word pd33;
         pd33 = (* (( (ptr) (* (( (ptr) gf←c32124)+79)/* var←c31068 */  ))+20) );
         var←c31036 = (word) ( *( (fPt) ((*  (ptr) pd33 ))))(fontCacheName←v4752, pd33);
         };
      {
         word pd34;
         word idx35;
         word idx36;
         pd34 = (* (( (ptr) (* (( (ptr) gf←c32124)+80)/* var←c31100 */  ))+5) );
         deviceParm←v7180 = (word) ( *( (fPt) ((*  (ptr) pd34 ))))((* (( (ptr) gf←c32124)+9)/* deviceClass←v3868 */  ), (
               idx35 = (word) deviceSpaceSize←v4556.f0,
               SGNCK(idx35)
               ), (
               idx36 = (word) deviceSpaceSize←v4556.f1,
               SGNCK(idx36)
               ), scanMode←v4584, surfaceUnitsPerInch←v4612, 1
            , var←c31036, parameters←v4780, 0, pd34);
         };
      };
SOURCE(3036, 147)
   {
      word pd37;
      pd37 = (* (( (ptr) (* (( (ptr) gf←c32124)+76)/* var←c30812 */  ))+5) );
      context←v7208 = (word) ( *( (fPt) ((*  (ptr) pd37 ))))((* (( (ptr) gf←c32124)+11)/* contextClass←v3924 */  ), (* (( (ptr) gf←c32124)+9)
         /* deviceClass←v3868 */  ), deviceParm←v7180, data←v7152, 0, pd37);
      };
SOURCE(3185, 48)
   {
      word pd38;
      pd38 = (* (( (ptr) (* (( (ptr) gf←c32124)+76)/* var←c30812 */  ))+6) );
      device←v7236 = (word) ( *( (fPt) ((*  (ptr) pd38 ))))(context←v7208, pd38);
      };
SOURCE(3235, 25)
   (*  (ptr) device←v7236 ) = (* (( (ptr) gf←c32124)+10)/* worksClass←v3896 */  );
SOURCE(3262, 54)
   {
      word pd39;
      pd39 = (* (( (ptr) (* (( (ptr) gf←c32124)+76)/* var←c30812 */  ))+11) );
      (void) ( *( (fPt) ((*  (ptr) pd39 ))))(context←v7208, (*  (W4Pt) (( (ptr) gf←c32124)+67)/* var←c30620 */  ), pd39);
      };
SOURCE(3318, 17)
   return(context←v7208);
   }

static word IsPrintDevice←P240(device←v4884)
   word device←v4884;
   {
   register ptr gf←c32156 =  (ptr) &globalframe;
   word var←c4928;
   /* IsPrintDevice: */ 
SOURCE(3339, 146)
SOURCE(3402, 83)
   {
      word var←c31132;
      var←c31132 = (* (( (ptr) device←v4884)+7) );
      if ((var←c31132 == 0)) {
         goto lab←L100004;
         };
      if (((* (( (ptr) gf←c32156)+22) ) == XR←GetReferentType(var←c31132))) {
         {
            word data←v7280;
            data←v7280 = var←c31132;
SOURCE(3445, 13)
            return(1);
            };
         }
      else {
         lab←L100004: ;
SOURCE(3471, 14)
         return(0);
         };
      };
   }

static word GetDeviceBitmap←P300(device←v4988)
   word device←v4988;
   {
   register ptr gf←c32188 =  (ptr) &globalframe;
   word var←c5032;
   word data←v7324;
   /* GetDeviceBitmap: */ 
SOURCE(3491, 138)
SOURCE(3574, 32)
   data←v7324 = XR←Narrow((* (( (ptr) device←v4988)+7) ), (* (( (ptr) gf←c32188)+22) ));
SOURCE(3608, 21)
   return((*  (ptr) data←v7324 ));
   }

static void SetDeviceBitmap←P360(device←v5092, bitmap←v5120)
   word device←v5092;
   word bitmap←v5120;
   {
   register ptr gf←c32220 =  (ptr) &globalframe;
   word data←v7368;
   W4 var←c31164;
   word map←v29868;
   /* SetDeviceBitmap: */ 
SOURCE(3633, 261)
SOURCE(3715, 32)
   data←v7368 = XR←Narrow((* (( (ptr) device←v5092)+7) ), (* (( (ptr) gf←c32220)+22) ));
SOURCE(3749, 97)
   map←v29868 = (*  (ptr) data←v7368 );
   var←c31164 = (*  (W4Pt) map←v29868 );
   if (XR←EqualWords(bitmap←v5120, &var←c31164, 4)) {
SOURCE(3820, 26)
      (*  (ptr) data←v7368 ) = bitmap←v5120;
      }
   else {
SOURCE(3846, 5)
      (void) XR←RaiseUnnamedError();
      };
SOURCE(3867, 27)
   (void) ValidateAllow←P480(device←v5092, data←v7368);
   }

static word GetColorData←P420(device←v5180)
   word device←v5180;
   {
   register ptr gf←c32252 =  (ptr) &globalframe;
   word var←c5224;
   word data←v7412;
   /* GetColorData: */ 
SOURCE(3900, 154)
SOURCE(3990, 32)
   data←v7412 = XR←Narrow((* (( (ptr) device←v5180)+7) ), (* (( (ptr) gf←c32252)+22) ));
SOURCE(4024, 30)
   return((* (( (ptr) data←v7412)+1) ));
   }

static void ValidateAllow←P480(device←v5284, data←v5312)
   word device←v5284;
   word data←v5312;
   {
   word realRaster←v7456;
   /* ValidateAllow: */ 
SOURCE(4058, 446)
SOURCE(4111, 68)
   {
      word var←c31196;
      var←c31196 = (*  (ptr) data←v5312 );
      if ((var←c31196 == 0)) {
         realRaster←v7456 = 1;
         }
      else {
         realRaster←v7456 = ((* (( (ptr) var←c31196)+6) ) == 0);
         };
      };
SOURCE(4181, 323)
   (*  (ptr) (* (( (ptr) device←v5284)+6) ) ) = ((((((((((* (( (ptr) (* (( (ptr) data←v5312)+1) ))+10) ) < 3) << 1) + ((* (( (ptr) (* (
         ( (ptr) data←v5312)+1) ))+10) ) < 3)) << 1) +  ( ((* (( (ptr) (* (( (ptr) data←v5312)+1) ))+10) ) == 1) ? (0 != realRaster←v7456) : 0 ) ) << 1) + 
   ((* (( (ptr) (* (( (ptr) data←v5312)+1) ))+10) ) == 1)) << 28) + ( ( ((* (( (ptr) (* (( (ptr) data←v5312)+1) ))+10) ) == 1) ? (0 != realRaster←v7456) : 0 )  << 27));
   }

static void SetColorData←P540(device←v5372, deviceColorData←v5400)
   word device←v5372;
   word deviceColorData←v5400;
   {
   register ptr gf←c32284 =  (ptr) &globalframe;
   word data←v7500;
   /* SetColorData: */ 
SOURCE(4510, 204)
SOURCE(4608, 32)
   data←v7500 = XR←Narrow((* (( (ptr) device←v5372)+7) ), (* (( (ptr) gf←c32284)+22) ));
SOURCE(4642, 43)
   (* (( (ptr) data←v7500)+1) ) = (* (( (ptr) data←v7500)+1) );
SOURCE(4687, 27)
   (void) ValidateAllow←P480(device←v5372, data←v7500);
   }

static void SetBitmap←P600(context←v5460, bitmap←v5488)
   word context←v5460;
   word bitmap←v5488;
   {
   register ptr gf←c32316 =  (ptr) &globalframe;
   word device←v7544;
   word data←v7572;
   /* SetBitmap: */ 
SOURCE(4720, 316)
SOURCE(4805, 48)
   {
      word pd40;
      pd40 = (* (( (ptr) (* (( (ptr) gf←c32316)+76)/* var←c30812 */  ))+6) );
      device←v7544 = (word) ( *( (fPt) ((*  (ptr) pd40 ))))(context←v5460, pd40);
      };
SOURCE(4855, 32)
   data←v7572 = XR←Narrow((* (( (ptr) device←v7544)+7) ), (* (( (ptr) gf←c32316)+22) ));
SOURCE(4889, 20)
   (*  (ptr) data←v7572 ) = bitmap←v5488;
SOURCE(4911, 96)
   {
      word pd41;
      word tcp42;
      pd41 = (* (( (ptr) (* (( (ptr) gf←c32316)+76)/* var←c30812 */  ))+11) );
      if ((bitmap←v5488 == 0)) {
         tcp42 = (word) (( (ptr) gf←c32316)+71);
         /* var←c30684 */ }
      else {
         tcp42 = (word) bitmap←v5488;
         };
      (void) ( *( (fPt) ((*  (ptr) pd41 ))))(context←v5460, (*  (W4Pt) tcp42 ), pd41);
      };
SOURCE(5009, 27)
   (void) ValidateAllow←P480(device←v7544, data←v7572);
   }

static void SetSeparation←P660(context←v5548, toner←v5576)
   word context←v5548;
   word toner←v5576;
   {
   register ptr gf←c32348 =  (ptr) &globalframe;
   word data←v7616;
   /* SetSeparation: */ 
SOURCE(5042, 200)
SOURCE(5124, 57)
   {
      word pd43;
      pd43 = (* (( (ptr) (* (( (ptr) gf←c32348)+76)/* var←c30812 */  ))+6) );
      data←v7616 = XR←Narrow((* (( (ptr) ( *( (fPt) ((*  (ptr) pd43 ))))(context←v5548, pd43))+7) ), (* (( (ptr) gf←c32348)+22)
          ));
      };
SOURCE(5183, 59)
   {
      word pd44;
      pd44 = (* (( (ptr) (* (( (ptr) gf←c32348)+78)/* var←c30972 */  ))+5) );
      (void) ( *( (fPt) ((*  (ptr) pd44 ))))((* (( (ptr) data←v7616)+1) ), toner←v5576, pd44);
      };
   }

static void MySetColor←P720(device←v5636, color←v5664, viewToDevice←v5692)
   word device←v5636;
   word color←v5664;
   word viewToDevice←v5692;
   {
   register ptr gf←c32380 =  (ptr) &globalframe;
   word data←v7660;
   /* MySetColor: */ 
SOURCE(5248, 256)
SOURCE(5363, 32)
   data←v7660 = XR←Narrow((* (( (ptr) device←v5636)+7) ), (* (( (ptr) gf←c32380)+22) ));
SOURCE(5397, 78)
   {
      word pd45;
      pd45 = (* (( (ptr) (* (( (ptr) gf←c32380)+78)/* var←c30972 */  ))+6) );
      (void) ( *( (fPt) ((*  (ptr) pd45 ))))((* (( (ptr) data←v7660)+1) ), color←v5664, viewToDevice←v5692, pd45);
      };
SOURCE(5477, 27)
   (void) ValidateAllow←P480(device←v5636, data←v7660);
   }

static word TranslateHalftoneProperties←P780(h←v5752)
   word h←v5752;
   {
   register ptr gf←c32412 =  (ptr) &globalframe;
   word var←c5796;
   /* TranslateHalftoneProperties: */ 
SOURCE(5510, 267)
SOURCE(5624, 153)
   if ((h←v5752 == 0)) {
      return(0);
      }
   else {
      {
         word var←c31292;
         word var←c31324;
         var←c31292 = (word) TranslateHalftoneProperties←P780((* ((( (ptr) h←v5752)+6)) ));
         var←c31324 = XR←NewObject(24, (* (( (ptr) gf←c32412)+19) ));
         (*  (ptr) var←c31324 ) = (*  (ptr) h←v5752 );
         (* (( (ptr) var←c31324)+1) ) = (* (( (ptr) h←v5752)+1) );
         (*  (W3Pt) (( (ptr) var←c31324)+2) ) = (*  (W3Pt) (( (ptr) h←v5752)+2) );
         (* (( (ptr) var←c31324)+5) ) = var←c31292;
         return(var←c31324);
         };
      };
   }

static void MySetHalftoneProperties←P840(device←v5856, halftoneProperties←v5884)
   word device←v5856;
   word halftoneProperties←v5884;
   {
   register ptr gf←c32444 =  (ptr) &globalframe;
   word data←v7704;
   /* MySetHalftoneProperties: */ 
SOURCE(5781, 308)
SOURCE(5884, 32)
   data←v7704 = XR←Narrow((* (( (ptr) device←v5856)+7) ), (* (( (ptr) gf←c32444)+22) ));
SOURCE(5918, 89)
   (* (( (ptr) (* (( (ptr) data←v7704)+1) ))+1) ) = (word) TranslateHalftoneProperties←P780(halftoneProperties←v5884);
SOURCE(6009, 80)
   {
      word pd46;
      pd46 = (* (( (ptr) (* (( (ptr) gf←c32444)+78)/* var←c30972 */  ))+5) );
      (void) ( *( (fPt) ((*  (ptr) pd46 ))))((* (( (ptr) data←v7704)+1) ), (* (( (ptr) (* (( (ptr) data←v7704)+1) ))+5) ), pd46)
      ;
      };
   }

static void MyMaskBoxes←P900(device←v5944, bounds←v5972, boxes←v6000)
   word device←v5944;
   W4 bounds←v5972;
   word boxes←v6000;
   {
   register ptr gf←c32476 =  (ptr) &globalframe;
   word data←v7748;
   /* MyMaskBoxes: */ 
SOURCE(6129, 189)
SOURCE(6208, 32)
   data←v7748 = XR←Narrow((* (( (ptr) device←v5944)+7) ), (* (( (ptr) gf←c32476)+22) ));
SOURCE(6242, 76)
   {
      word pd47;
      pd47 = (* (( (ptr) (* (( (ptr) gf←c32476)+78)/* var←c30972 */  ))+7) );
      (void) ( *( (fPt) ((*  (ptr) pd47 ))))((*  (ptr) data←v7748 ), (* (( (ptr) data←v7748)+1) ), bounds←v5972, boxes←v6000, pd47)
      ;
      };
   }

static void MyMaskBitmap←P960(device←v6060, bitmap←v6088, delta←v6116, bounds←v6144, boxes←v6172)
   word device←v6060;
   word bitmap←v6088;
   W2 delta←v6116;
   W4 bounds←v6144;
   word boxes←v6172;
   {
   register ptr gf←c32508 =  (ptr) &globalframe;
   word data←v7792;
   word function←v7820 = 0;
   /* MyMaskBitmap: */ 
SOURCE(6324, 506)
SOURCE(6451, 32)
   data←v7792 = XR←Narrow((* (( (ptr) device←v6060)+7) ), (* (( (ptr) gf←c32508)+22) ));
SOURCE(6533, 45)
   if (((* (( (ptr) (* (( (ptr) data←v7792)+1) ))+10) ) != 1)) {
SOURCE(6578, 5)
      (void) XR←RaiseUnnamedError();
      };
SOURCE(6585, 120)
   {
      word var←c31356;
      var←c31356 = (* (( (ptr) (* (( (ptr) data←v7792)+1) ))+11) );
      switch (var←c31356) {
         case 0: 
SOURCE(6629, 6)
            return;
         case 2: 
SOURCE(6644, 21)
            function←v7820 = 4;
            break;
         case 1: 
SOURCE(6677, 28)
            function←v7820 = 3;
            break;
         default: 
SOURCE(6718, 5)
            (void) XR←RaiseUnnamedError();
            break;
         };
      };
SOURCE(6725, 105)
   {
      word pd48;
      pd48 = (* (( (ptr) (* (( (ptr) gf←c32508)+81)/* var←c31388 */  ))+57) );
      (void) ( *( (fPt) ((*  (ptr) pd48 ))))((*  (ptr) data←v7792 ), bitmap←v6088, delta←v6116, boxes←v6172, function←v7820, pd48)
      ;
      };
   }

static void MyMaskRegion←P1020(device←v6232, bounds←v6260, edgeGenerator←v6288)
   word device←v6232;
   W4 bounds←v6260;
   word edgeGenerator←v6288;
   {
   register ptr gf←c32540 =  (ptr) &globalframe;
   word data←v7864;
   word value←v7892 = 1;
   /* MyMaskRegion: */ 
SOURCE(6836, 436)
SOURCE(6939, 32)
   data←v7864 = XR←Narrow((* (( (ptr) device←v6232)+7) ), (* (( (ptr) gf←c32540)+22) ));
SOURCE(6994, 45)
   if (((* (( (ptr) (* (( (ptr) data←v7864)+1) ))+10) ) != 1)) {
SOURCE(7039, 5)
      (void) XR←RaiseUnnamedError();
      };
SOURCE(7046, 89)
   {
      word var←c31420;
      var←c31420 = (* (( (ptr) (* (( (ptr) data←v7864)+1) ))+11) );
      switch (var←c31420) {
         case 0: 
SOURCE(7090, 6)
            return;
         case 2: 
SOURCE(7105, 9)
            value←v7892 = 1;
            break;
         case 1: 
SOURCE(7126, 9)
            value←v7892 = 0;
            break;
         default: 
SOURCE(7148, 5)
            (void) XR←RaiseUnnamedError();
            break;
         };
      };
SOURCE(7155, 117)
   {
      word var←c31452;
      {
         word var←c31484;
         var←c31484 = (*  (ptr) data←v7864 );
         if ((var←c31484 == 0)) {
            goto lab←L100006;
            };
         if (((* (( (ptr) var←c31484)+6) ) == 0)) {
            goto lab←L100006;
            };
         (void) XR←RaiseError(XR←NarrowFault, 0);
         lab←L100006: ;
         var←c31452 = var←c31484;
         };
      {
         word pd49;
         pd49 = (* (( (ptr) (* (( (ptr) gf←c32540)+81)/* var←c31388 */  ))+59) );
         (void) ( *( (fPt) ((*  (ptr) pd49 ))))(var←c31452, edgeGenerator←v6288, value←v7892, 0, pd49);
         };
      };
   }

static void MyMaskRawBitmaps←P1080(device←v6408, list←v6436)
   word device←v6408;
   word list←v6436;
   {
   register ptr gf←c32572 =  (ptr) &globalframe;
   word data←v7936;
   word function←v7964 = 0;
   /* MyMaskRawBitmaps: */ 
SOURCE(7278, 445)
SOURCE(7364, 32)
   data←v7936 = XR←Narrow((* (( (ptr) device←v6408)+7) ), (* (( (ptr) gf←c32572)+22) ));
SOURCE(7446, 45)
   if (((* (( (ptr) (* (( (ptr) data←v7936)+1) ))+10) ) != 1)) {
SOURCE(7491, 5)
      (void) XR←RaiseUnnamedError();
      };
SOURCE(7498, 120)
   {
      word var←c31516;
      var←c31516 = (* (( (ptr) (* (( (ptr) data←v7936)+1) ))+11) );
      switch (var←c31516) {
         case 0: 
SOURCE(7542, 6)
            return;
         case 2: 
SOURCE(7557, 21)
            function←v7964 = 4;
            break;
         case 1: 
SOURCE(7590, 28)
            function←v7964 = 3;
            break;
         default: 
SOURCE(7631, 5)
            (void) XR←RaiseUnnamedError();
            break;
         };
      };
SOURCE(7638, 85)
   {
      word var←c31548;
      {
         word var←c31580;
         var←c31580 = (*  (ptr) data←v7936 );
         if ((var←c31580 == 0)) {
            goto lab←L100007;
            };
         if (((* (( (ptr) var←c31580)+6) ) == 0)) {
            goto lab←L100007;
            };
         (void) XR←RaiseError(XR←NarrowFault, 0);
         lab←L100007: ;
         var←c31548 = var←c31580;
         };
      {
         word pd50;
         pd50 = (* (( (ptr) (* (( (ptr) gf←c32572)+81)/* var←c31388 */  ))+53) );
         (void) ( *( (fPt) ((*  (ptr) pd50 ))))(var←c31548, list←v6436, function←v7964, pd50);
         };
      };
   }

static void WMaskPixelArray←P1200(device←v6768, bitmap←v6796, clientToDevice←v6824)
   word device←v6768;
   word bitmap←v6796;
   word clientToDevice←v6824;
   {
   register ptr gf←c32604 =  (ptr) &globalframe;
   word clip←v8120;
   word maskToDevice←v8148;
   word form←v8176;
   word integerTrans←v8204;
   word s0←v8232;
   word f0←v8260;
   /* WMaskPixelArray: */ 
SOURCE(7923, 1245)
SOURCE(8018, 6)
   {
      word b←v8008;
      b←v8008 = (* (( (ptr) (* (( (ptr) device←v6768)+1) ))+4) );
SOURCE(7858, 59)
      if ((b←v8008 == 0) || ((* (( (ptr) b←v8008)+4) ) == 0)) {
SOURCE(7890, 15)
         clip←v8120 = b←v8008;
         }
      else {
SOURCE(7905, 12)
         clip←v8120 = 0;
         };
      };
SOURCE(8064, 84)
   {
      word pd51;
      pd51 = (* (( (ptr) (* (( (ptr) gf←c32604)+82)/* var←c31644 */  ))+13) );
      maskToDevice←v8148 = (word) ( *( (fPt) ((*  (ptr) pd51 ))))((* (( (ptr) bitmap←v6796)+4) ), clientToDevice←v6824, pd51);
      };
SOURCE(8150, 29)
   form←v8176 = (* (( (ptr) maskToDevice←v8148)+9) );
SOURCE(8181, 46)
   integerTrans←v8204 = (* (( (ptr) maskToDevice←v8148)+8) );
SOURCE(8229, 25)
   s0←v8232 = (* (( (ptr) maskToDevice←v8148)+6) );
SOURCE(8256, 25)
   f0←v8260 = (* (( (ptr) maskToDevice←v8148)+7) );
SOURCE(8283, 42)
   {
      word pd52;
      pd52 = (* (( (ptr) (* (( (ptr) gf←c32604)+82)/* var←c31644 */  ))+5) );
      (void) ( *( (fPt) ((*  (ptr) pd52 ))))(maskToDevice←v8148, pd52);
      };
SOURCE(8327, 18)
   maskToDevice←v8148 = 0;
SOURCE(8347, 738)
   if ( (  ( ( (int)form←v8176 ==  (int)3) ? (0 != integerTrans←v8204) : 0 )  ? (clip←v8120 != 0) : 0 ) ) {
SOURCE(8396, 697)
      {
         word data←v8388;
SOURCE(8398, 32)
         data←v8388 = XR←Narrow((* (( (ptr) device←v6768)+7) ), (* (( (ptr) gf←c32604)+22) ));
SOURCE(8432, 653)
         if (((* (( (ptr) (* (( (ptr) data←v8388)+1) ))+10) ) == 1)) {
SOURCE(8477, 613)
            {
               word function←v8432 = 0;
SOURCE(8527, 120)
               {
                  word var←c31676;
                  var←c31676 = (* (( (ptr) (* (( (ptr) data←v8388)+1) ))+11) );
                  switch (var←c31676) {
                     case 0: 
SOURCE(8571, 6)
                        return;
                     case 2: 
SOURCE(8586, 21)
                        function←v8432 = 4;
                        break;
                     case 1: 
SOURCE(8619, 28)
                        function←v8432 = 3;
                        break;
                     };
                  };
SOURCE(8658, 427)
               if ((function←v8432 != 0)) {
SOURCE(8690, 397)
                  {
                     word sMin←v8476;
                     word fMin←v8504;
                     word sMax←v8532;
                     word fMax←v8560;
SOURCE(8692, 37)
                     {
                        word x53;
                        sMin←v8476 = (x53 = (*  (ptr) clip←v8120 ),
                           MAX((int)(word), x53, s0←v8232));
                        };
SOURCE(8731, 37)
                     {
                        word x54;
                        fMin←v8504 = (x54 = (* (( (ptr) clip←v8120)+1) ),
                           MAX((int)(word), x54, f0←v8260));
                        };
SOURCE(8770, 52)
                     {
                        word x55;
                        word x56;
                        sMax←v8532 = (x55 = (* (( (ptr) clip←v8120)+2) ),
                           x56 = (s0←v8232 + (* (( (ptr) bitmap←v6796)+2) )),
                           MIN((int)(word), x55, x56));
                        };
SOURCE(8824, 52)
                     {
                        word x57;
                        word x58;
                        fMax←v8560 = (x57 = (* (( (ptr) clip←v8120)+3) ),
                           x58 = (f0←v8260 + (* (( (ptr) bitmap←v6796)+3) )),
                           MIN((int)(word), x57, x58));
                        };
SOURCE(8878, 196)
                     if ( ( ( (int)sMin←v8476 <  (int)sMax←v8532) ? ( (int)fMin←v8504 <  (int)fMax←v8560) : 0 ) ) {
SOURCE(8916, 158)
                        {
                           W2 var←c31708;
                           W2 var←c31740;
                           var←c31708.f0 = sMin←v8476;
                           var←c31708.f1 = fMin←v8504;
                           var←c31740.f0 = (sMax←v8532 - sMin←v8476);
                           var←c31740.f1 = (fMax←v8560 - fMin←v8504);
                           {
/*1*/   word pd59;
/*1*/   pd59 = (* (( (ptr) (* (( (ptr) gf←c32604)+83)/* var←c31772 */  ))+11) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd59 ))))(bitmap←v6796, 0, (sMin←v8476 - s0←v8232), (fMin←v8504 - f0←v8260), (*  (ptr) data←v8388 ), var←c31708
/*1*/      , var←c31740, function←v8432, pd59);
/*1*/   };
                           };
                        };
SOURCE(9079, 6)
                     return;
                     };
                  };
               };
            };
         };
      };
SOURCE(9096, 72)
   {
      word pd60;
      pd60 = (* (( (ptr) (* (( (ptr) gf←c32604)+75)/* var←c30780 */  ))+23) );
      (void) ( *( (fPt) ((*  (ptr) pd60 ))))(device←v6768, bitmap←v6796, clientToDevice←v6824, pd60);
      };
   }

static void SetMaskCacheTradeoffs←P1260(fontCacheName←v6884)
   word fontCacheName←v6884;
   {
   W7 var←c32636;
   register ptr gf←c32668 =  (ptr) &globalframe;
   /* declaration of var←c31804 skipped */ 
   word x←v8604;
   /* declaration of changed←v8632 skipped */ 
   /* SetMaskCacheTradeoffs: */ 
SOURCE(10113, 598)
   {
      word tmpAddr61;
      tmpAddr61 = (word) (( (ptr) &var←c32636)+4)/* var←c31804 */ ;
      (*  (ptr) tmpAddr61 ) = ( ((word)  (fPt) Action←P1668) );
      (* (( (ptr) tmpAddr61) + 1) ) = 1;
      };
SOURCE(10174, 75)
   {
      word pd62;
      pd62 = (* (( (ptr) (* (( (ptr) gf←c32668)+79)/* var←c31068 */  ))+20) );
      x←v8604 = (word) ( *( (fPt) ((*  (ptr) pd62 ))))(fontCacheName←v6884, pd62);
      };
SOURCE(10251, 21)
   var←c32636.f6/* changed←v8632 */  = 0;
SOURCE(10626, 43)
   {
      word pd63;
      pd63 = (* (( (ptr) (* (( (ptr) gf←c32668)+79)/* var←c31068 */  ))+15) );
      (void) ( *( (fPt) ((*  (ptr) pd63 ))))(x←v8604, (word) (( (bPt) &var←c32636)+16)/* var←c31804 */ , pd63);
      };
SOURCE(10671, 40)
   if ((0 != var←c32636.f6/* changed←v8632 */ )) {
SOURCE(10687, 24)
      {
         word pd64;
         pd64 = (* (( (ptr) (* (( (ptr) gf←c32668)+79)/* var←c31068 */  ))+17) );
         (void) ( *( (fPt) ((*  (ptr) pd64 ))))(x←v8604, pd64);
         };
      };
   }

static void Action←P1668(p←v8896, formal←c32700)
   word p←v8896;
   word formal←c32700;
   {
   formal←c32700 = (formal←c32700 - 16);
   /* Action: */ 
SOURCE(10382, 239)
SOURCE(10431, 47)
   {
      word var←c31836;
      word from←v29792;
      from←v29792 = (* (( (ptr) p←v8896)+2) );
SOURCE(10333, 32)
      {
         word x65;
         word x67;
         if (((
            x65 = from←v29792,  *(float*)&x65
            ) != (
            x67 = (*  (ptr) &fc66 ),  *(float*)&x67
            ))) {
SOURCE(10351, 14)
            (* (( (ptr) formal←c32700)+6) ) = 1;
            };
         };
SOURCE(10367, 12)
      var←c31836 = (*  (ptr) &fc66 );
      (* (( (ptr) p←v8896)+2) ) = var←c31836;
      };
SOURCE(10480, 49)
   {
      word var←c31868;
      word from←v29716;
      from←v29716 = (* (( (ptr) p←v8896)+3) );
SOURCE(10333, 32)
      {
         word x68;
         word x70;
         if (((
            x68 = from←v29716,  *(float*)&x68
            ) != (
            x70 = (*  (ptr) &fc69 ),  *(float*)&x70
            ))) {
SOURCE(10351, 14)
            (* (( (ptr) formal←c32700)+6) ) = 1;
            };
         };
SOURCE(10367, 12)
      var←c31868 = (*  (ptr) &fc69 );
      (* (( (ptr) p←v8896)+3) ) = var←c31868;
      };
SOURCE(10531, 43)
   {
      word var←c31900;
      word from←v29640;
      from←v29640 = (* (( (ptr) p←v8896)+4) );
SOURCE(10333, 32)
      {
         word x71;
         word x73;
         if (((
            x71 = from←v29640,  *(float*)&x71
            ) != (
            x73 = (*  (ptr) &fc72 ),  *(float*)&x73
            ))) {
SOURCE(10351, 14)
            (* (( (ptr) formal←c32700)+6) ) = 1;
            };
         };
SOURCE(10367, 12)
      var←c31900 = (*  (ptr) &fc72 );
      (* (( (ptr) p←v8896)+4) ) = var←c31900;
      };
SOURCE(10576, 45)
   {
      word var←c31932;
      word from←v29564;
      from←v29564 = (* (( (ptr) p←v8896)+5) );
SOURCE(10333, 32)
      {
         word x74;
         word x76;
         if (((
            x74 = from←v29564,  *(float*)&x74
            ) != (
            x76 = (*  (ptr) &fc75 ),  *(float*)&x76
            ))) {
SOURCE(10351, 14)
            (* (( (ptr) formal←c32700)+6) ) = 1;
            };
         };
SOURCE(10367, 12)
      var←c31932 = (*  (ptr) &fc75 );
      (* (( (ptr) p←v8896)+5) ) = var←c31932;
      };
   }

/* file: ImagerPrintContextImpl, module: ImagerPrintContextImpl, compiled at: June 3, 1992 10:21:53 am PDT */ 
extern void XR←install←ImagerPrintContextImpl() {
   NoName←Q2076();
   }
extern void XR←run←ImagerPrintContextImpl() { XR←Start(&globalframe); }