/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation.  All rights reserved. */
/* time: July 11, 1993 8:14:25 pm PDT */
/* C2C version: April 20, 1993 (sun4) */
/* ref-counting: off */
/* file: GGFromImagerImpl, module: GGFromImagerImpl */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [4111073674,3373160752] GGFromImagerImpl";
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;} W6;
typedef struct {word f0, f1, f2;} W3;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
typedef struct {word f0, f1;} W2;
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {word f0, f1, f2, f3, f4;} W5;
typedef struct {W8 f; W5 r;} W13;
typedef W2 *W2Pt;
typedef struct {W8 f; W8 r;} W16;
typedef struct {W16 f; W13 r;} W29;
typedef struct {word f0, f1, f2, f3;} W4;
typedef struct {W8 f; W2 r;} W10;
typedef W4 *W4Pt;
typedef struct {W8 f; W4 r;} W12;
typedef W3 *W3Pt;
#define SOURCE(p, l) /* source p, l */
static float fc97 = 1.0;
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
static float fc131 = 0.0;
static float fc187 = 2000.0;
static float fc240 = 2834.646;
static void NoName←Q3792();
static void GGFromImagerImpl←P0();
static word Create←P60();
static word Capture←P120();
static word NoName←Q3852();
static void ProcessStateChanges←P180();
static word RopeFromXStringProc←P240();
static void p←P2376();
static void action←P2436();
static void UnpackComplexFontName←P300();
static word NoName←Q3912();
static word DigitProc←P2496();
static word AlphaProc←P2556();
static void SetSegProperties←P360();
static word OutlineFromPath←P420();
static void Finish←P2664();
static void AppendChild←P2724();
static void Move←P2784();
static void Line←P2844();
static void Curve←P2904();
static void Conic←P2964();
static void Arc←P3024();
static void MyShow←P480();
static void MyShowText←P540();
static void MyShowAux←P600();
static word NoName←Q3972();
static void MySetSampledColor←P660();
static void MySetSampledBlack←P720();
static void MyShowBackward←P780();
static void MyMaskFill←P840();
static void ReplaceChild←P900();
static void MyMaskStroke←P960();
static void MyMaskDashedStroke←P1020();
static void MyShowAndFixedXRel←P1080();
static void MyMaskRectangle←P1140();
static void path←P3372();
static void MyMaskRectangleI←P1200();
static void MyMaskVector←P1260();
static void path←P3432();
static void MyMaskPixel←P1320();
static void DoMyMaskPixel←P3492();
static void MyMaskBitmap←P1380();
static void DoMyMaskBits←P3552();
static void MyDrawBitmap←P1440();
static void DoMyDrawBits←P3612();
static void MyDrawPixels←P1500();
static void MyDoIfVisible←P1560();
static void MyDoWithBuffer←P1620();
static void MyDrawObject←P1680();
static void MyGetBounds←P1740();
static void MyViewReset←P1800();
static void MyViewTranslateI←P1860();
static void MyViewClip←P1920();
static void MyViewClipRectangleI←P1980();
static word MyGetTransformation←P2040();
static void MyTransform←P2100();
static void MyMoveViewRectangle←P2160();
static word MyTestViewRectangle←P2220();
static void NoName←Q4032();
static void NoName←Q4092();
static void NoName←Q4152();
static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\205\026\031\133\300\153\303\216\034\100\164\000\000"};
static struct {unsigned f; char r[8];} string2 = {458759, "\006\002\000\001A\024\001"};
static struct {unsigned f; char r[4];} string3 = {131076, "\216\251\000"};
static struct {unsigned f; char r[4];} string4 = {65537, "\001\000\000"};
static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\371\314\343\307\300\031\056\017\130\100\310\000\000"};
static struct {unsigned f; char r[16];} string6 = {851984, "\257\300\365\012\001\212\300\311\016\131\060\100\200\000\000"};
static struct {unsigned f; char r[4];} string7 = {131074, "\004\007\000"};
static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\164\000\000"};
static struct {unsigned f; char r[4];} string9 = {131074, "\004\017\000"};
static struct {unsigned f; char r[16];} string10 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[48];} string11 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\247\365\203\234\300\047\265\225\046\100\324\005\004\162\145\163\164\214\216\257\300\247\365\203\234\300\047\265\225\046\100\324\261\000\000\000"};
static struct {unsigned f; char r[4];} string12 = {131074, "\004\003\000"};
static struct {unsigned f; char r[16];} string13 = {851984, "\257\300\311\023\117\300\300\337\236\305\170\100\164\000\000"};
static struct {unsigned f; char r[4];} string14 = {196611, "\004A6"};
static struct {unsigned f; char r[12];} string15 = {524300, "Clipping\000\000\000"};
static struct {unsigned f; char r[28];} string16 = {1572892, "NotImplemented: Clipping\000\000\000"};
static struct {unsigned f; char r[4];} string17 = {4, "\000\000\000"};
static struct {unsigned f; char r[4];} string18 = {65540, "-\000\000"};
static struct {unsigned f; char r[4];} string19 = {196612, "MRR"};
static struct {unsigned f; char r[4];} string20 = {196612, "BRR"};
static struct {unsigned f; char r[4];} string21 = {131076, "-B\000"};
static struct {unsigned f; char r[8];} string22 = {262152, "Bold\000\000\000"};
static struct {unsigned f; char r[4];} string23 = {196612, "MIR"};
static struct {unsigned f; char r[4];} string24 = {131076, "-I\000"};
static struct {unsigned f; char r[8];} string25 = {393224, "Italic\000"};
static struct {unsigned f; char r[4];} string26 = {196612, "BIR"};
static struct {unsigned f; char r[4];} string27 = {196612, "-BI"};
static struct {unsigned f; char r[8];} string28 = {458760, "Capture"};
static struct {unsigned f; char r[24];} string29 = {1376280, "code: %g, message: %g\000\000"};
static struct {unsigned f; char r[16];} string30 = {917520, "MyShowBackward\000"};
static struct {unsigned f; char r[32];} string31 = {1835040, "NotImplemented: ShowBackward\000\000\000"};
static struct {unsigned f; char r[4];} string32 = {196612, "Set"};
static struct {unsigned f; char r[12];} string33 = {524300, "Gargoyle\000\000\000"};
static struct {unsigned f; char r[20];} string34 = {1048596, "ShowAndFixedXRel\000\000\000"};
static struct {unsigned f; char r[36];} string35 = {2162724, "Not implemented: ShowAndFixedXRel\000\000"};
static struct {unsigned f; char r[24];} string36 = {1376280, "Interpress/Xerox/3.0 \000\000"};
static struct {unsigned f; char r[16];} string37 = {786448, "MyDrawPixels\000\000\000"};
static struct {unsigned f; char r[28];} string38 = {1703964, "NotImplemented: DrawPixels\000"};
static struct {unsigned f; char r[16];} string39 = {851984, "MyDoIfVisible\000\000"};
static struct {unsigned f; char r[28];} string40 = {1769500, "NotImplemented: DoIfVisible"};
static struct {unsigned f; char r[16];} string41 = {917520, "MyDoWithBuffer\000"};
static struct {unsigned f; char r[32];} string42 = {1835040, "NotImplemented: DoWithBuffer\000\000\000"};
static struct {unsigned f; char r[16];} string43 = {786448, "MyDrawObject\000\000\000"};
static struct {unsigned f; char r[28];} string44 = {1769500, "NotImplemented: DrawObject:"};
static struct {unsigned f; char r[28];} string45 = {1638428, "NotImplemented: GetBounds\000\000"};
static struct {unsigned f; char r[12];} string46 = {720908, "MyViewReset"};
static struct {unsigned f; char r[28];} string47 = {1638428, "NotImplemented: ViewReset\000\000"};
static struct {unsigned f; char r[20];} string48 = {1048596, "MyViewTranslateI\000\000\000"};
static struct {unsigned f; char r[32];} string49 = {1966112, "NotImplemented: ViewTranslateI\000"};
static struct {unsigned f; char r[12];} string50 = {655372, "MyViewClip\000"};
static struct {unsigned f; char r[28];} string51 = {1572892, "NotImplemented: ViewClip\000\000\000"};
static struct {unsigned f; char r[24];} string52 = {1310744, "MyViewClipRectangleI\000\000\000"};
static struct {unsigned f; char r[36];} string53 = {2228260, "NotImplemented: ViewClipRectangleI\000"};
static struct {unsigned f; char r[12];} string54 = {720908, "MyTransform"};
static struct {unsigned f; char r[28];} string55 = {1638428, "NotImplemented: Transform\000\000"};
static struct {unsigned f; char r[20];} string56 = {1245204, "MyMoveViewRectangle"};
static struct {unsigned f; char r[36];} string57 = {2162724, "NotImplemented: MoveViewRectangle\000\000"};
static struct {unsigned f; char r[20];} string58 = {1245204, "MyTestViewRectangle"};
static struct {unsigned f; char r[36];} string59 = {2162724, "NotImplemented: TestViewRectangle\000\000"};
static struct {unsigned f; char r[16];} string60 = {851984, "\257\300\365\012\001\212\300\311\016\131\060\100\164\000\000"};
static struct {unsigned f; char r[16];} string61 = {851981, "\006\003\020\001\024\001\100\120\010\000\004\055\001\000\000"};
static struct {unsigned f; char r[16];} string62 = {851984, "\257\300\255\053\300\023\300\142\135\315\105\100\150\000\000"};
static struct {unsigned f; char r[16];} string63 = {851984, "\257\300\103\154\257\030\300\165\276\076\350\100\150\000\000"};
static struct {unsigned f; char r[16];} string64 = {851984, "\257\300\231\005\151\136\300\275\231\323\274\100\150\000\000"};
static struct {unsigned f; char r[16];} string65 = {851984, "\257\300\374\260\327\235\300\333\341\342\010\100\150\000\000"};
static struct {unsigned f; char r[16];} string66 = {851984, "\257\300\311\023\117\300\300\337\236\305\170\100\150\000\000"};
static struct {unsigned f; char r[16];} string67 = {851984, "\257\300\236\155\220\261\300\040\017\026\014\100\150\000\000"};
static struct {unsigned f; char r[16];} string68 = {851984, "\257\300\347\101\365\007\300\150\102\366\020\100\150\000\000"};
static struct {unsigned f; char r[16];} string69 = {851984, "\257\300\043\211\212\366\300\343\003\307\242\100\150\000\000"};
static struct {unsigned f; char r[16];} string70 = {851984, "\257\300U$)\337\300Xo9\243@t\000\000"};
static struct {unsigned f; char r[16];} string71 = {851984, "\257\300\336\025\013\356\300\216\115\352\271\100\150\000\000"};
static struct {unsigned f; char r[16];} string72 = {851984, "\257\300\050\310\006\072\300\004\273\314\121\100\150\000\000"};
static struct {unsigned f; char r[16];} string73 = {851984, "\257\300\370\132\042\205\300\045\133\011\125\100\150\000\000"};
static struct {unsigned f; char r[4];} string74 = {1231905127, "er"};
static struct {unsigned f; char r[16];} string75 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\150\000\000"};
static struct {unsigned f; char r[16];} string76 = {851984, "\257\300\170\064\225\306\300\207\372\245\271\100\150\000\000"};
static struct {unsigned f; char r[16];} string77 = {851984, "\257\300\045\370\116\014\300\270\323\074\131\100\150\000\000"};
static struct {unsigned f; char r[8];} string78 = {1231905127, "erFont"};
static struct {unsigned f; char r[16];} string79 = {851984, "\257\300\046\300\267\143\300\022\215\240\122\100\150\000\000"};
static struct {unsigned f; char r[16];} string80 = {851984, "\257\300\124\360\214\337\300\200\347\202\313\100\150\000\000"};
static struct {unsigned f; char r[16];} string81 = {851984, "\257\300\354\147\236\353\300\316\347\225\106\100\150\000\000"};
static struct {unsigned f; char r[16];} string82 = {851984, "\257\300\231\275\333\246\300\032\361\021\012\100\164\000\000"};
static struct {unsigned f; char r[16];} string83 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"};
static struct {unsigned f; char r[16];} string84 = {851984, "\257\300\146\072\276\323\300\221\127\350\046\100\150\000\000"};
static struct {unsigned f; char r[16];} string85 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"};
static struct {unsigned f; char r[16];} string86 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {unsigned f; char r[16];} string87 = {851984, "\257\300\004\142\347\110\300\363\053\254\345\100\150\000\000"};
static struct {unsigned f; char r[16];} string88 = {851984, "\257\300\354\026\341\177\300\147\046\234\221\100\150\000\000"};
static struct {unsigned f; char r[24];} string89 = {1376280, "\211\011\010\103\154\141\163\163\122\145\160\300\074\177\166\242\300\203\113\217\044\000\000"};
static struct {unsigned f; char r[24];} string90 = {1376280, "\211\011\010\123\164\141\164\145\122\145\160\300\074\177\166\242\300\203\113\217\044\000\000"};
static struct {unsigned f; char r[16];} string91 = {851984, "\257\300\231\275\333\246\300\032\361\021\012\100\324\000\000"};
static struct {unsigned f; char r[32];} string92 = {1900573, "\006\011\100\200\001\100\204\001\100\210\001\100\214\001\100\220\001\100\224\001\100\230\001\100\234\001\100\240\001\000\000"};
static struct {unsigned f; char r[28];} string93 = {1572892, "\211\014\013\124\171\160\145\146\141\143\145\122\145\160\300\046\300\267\143\300\022\215\240\122\000\000\000"};
static struct {unsigned f; char r[16];} string94 = {851984, "\257\300\301\227\276\106\300\342\254\204\020\100\164\000\000"};
static struct {unsigned f; char r[4];} string95 = {196611, "\004@\357"};
static struct {
   word f0[66]; word f66; word f67; word f68; 
   word f69; word f70; word f71; word f72; 
   word f73; word f74; word f75; word f76; 
   word f77; word f78; word f79; word f80; 
   word f81; word f82; word f83; word f84; 
   word f85; word f86; word f87; word f88; 
   word f89; word f90; word f91; word f92; 
   word f93; word f94; word f95; word f96; 
   word f97; word f98; word f99; word f100; 
   word f101; word f102; word f103; word f104; 
   word f105; word f106; word f107; word f108; 
   word f109; word f110; word f111; word f112; 
   word f113; word f114; word f115; word f116; 
   word f117; word f118; word f119; word f120; 
   word f121; word f122; word f123; word f124; 
   word f125; word f126; word f127; word f128; 
   word f129; word f130; word f131; word f132; 
   word f133; word f134; word f135; word f136; 
   word f137; word f138; word f139; word f140; 
   word f141[27]; 
   } globalframe = {
   {0}, (word) MyTestViewRectangle←P2220, 0, (word) MyMoveViewRectangle←P2160, 
   0, (word) MyTransform←P2100, 0, (word) MyGetTransformation←P2040, 
   0, (word) MyViewClipRectangleI←P1980, 0, (word) MyViewClip←P1920, 
   0, (word) MyViewTranslateI←P1860, 0, (word) MyViewReset←P1800, 
   0, (word) MyGetBounds←P1740, 0, (word) MyDrawObject←P1680, 
   0, (word) MyDoWithBuffer←P1620, 0, (word) MyDoIfVisible←P1560, 
   0, (word) MyDrawPixels←P1500, 0, (word) MyDrawBitmap←P1440, 
   0, (word) MyMaskBitmap←P1380, 0, (word) MyMaskPixel←P1320, 
   0, (word) MyMaskVector←P1260, 0, (word) MyMaskRectangleI←P1200, 
   0, (word) MyMaskRectangle←P1140, 0, (word) MyShowAndFixedXRel←P1080, 
   0, (word) MyMaskDashedStroke←P1020, 0, (word) MyMaskStroke←P960, 
   0, (word) ReplaceChild←P900, 0, (word) MyMaskFill←P840, 
   0, (word) MyShowBackward←P780, 0, (word) MySetSampledBlack←P720, 
   0, (word) MySetSampledColor←P660, 0, (word) MyShowAux←P600, 
   0, (word) MyShowText←P540, 0, (word) MyShow←P480, 
   0, (word) OutlineFromPath←P420, 0, (word) SetSegProperties←P360, 
   0, (word) UnpackComplexFontName←P300, 0, (word) RopeFromXStringProc←P240, 
   0, (word) ProcessStateChanges←P180, 0, (word) Capture←P120, 
   0, (word) Create←P60, 0, (word) GGFromImagerImpl←P0, 
   {0}
   };

static void NoName←Q3792()
   {
   register ptr gf←c0454 =  (ptr) &globalframe;
   word var←c68580;
   (* (( (ptr) gf←c0454)+6) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
   (* (( (ptr) gf←c0454)+9) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4);
   (* (( (ptr) gf←c0454)+10) ) = (word) XR←GetTypeIndexS((word) (&string5));
   (* (( (ptr) gf←c0454)+13) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7);
   (* (( (ptr) gf←c0454)+14) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string9);
   (* (( (ptr) gf←c0454)+17) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string4);
   (* (( (ptr) gf←c0454)+18) ) = (word) XR←GetTypeIndex((word) &string11, 0, (word) &string12);
   (* (( (ptr) gf←c0454)+19) ) = (word) XR←GetTypeIndex((word) &string13, 0, (word) &string14);
   (*  (ptr) (( (bPt) gf←c0454)+80) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string15);
   (*  (ptr) (( (bPt) gf←c0454)+84) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string16);
   (*  (ptr) (( (bPt) gf←c0454)+88) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string17);
   (*  (ptr) (( (bPt) gf←c0454)+92) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string18);
   (*  (ptr) (( (bPt) gf←c0454)+96) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string19);
   (*  (ptr) (( (bPt) gf←c0454)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string20);
   (*  (ptr) (( (bPt) gf←c0454)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string21);
   (*  (ptr) (( (bPt) gf←c0454)+108) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string22);
   (*  (ptr) (( (bPt) gf←c0454)+112) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string23);
   (*  (ptr) (( (bPt) gf←c0454)+116) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string24);
   (*  (ptr) (( (bPt) gf←c0454)+120) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string25);
   (*  (ptr) (( (bPt) gf←c0454)+124) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string26);
   (*  (ptr) (( (bPt) gf←c0454)+128) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string27);
   (*  (ptr) (( (bPt) gf←c0454)+132) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string28);
   (*  (ptr) (( (bPt) gf←c0454)+136) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string29);
   (*  (ptr) (( (bPt) gf←c0454)+140) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string30);
   (*  (ptr) (( (bPt) gf←c0454)+144) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string31);
   (*  (ptr) (( (bPt) gf←c0454)+148) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string32);
   (*  (ptr) (( (bPt) gf←c0454)+152) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string33);
   (*  (ptr) (( (bPt) gf←c0454)+156) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string34);
   (*  (ptr) (( (bPt) gf←c0454)+160) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string35);
   (*  (ptr) (( (bPt) gf←c0454)+164) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string36);
   (*  (ptr) (( (bPt) gf←c0454)+168) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string37);
   (*  (ptr) (( (bPt) gf←c0454)+172) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string38);
   (*  (ptr) (( (bPt) gf←c0454)+176) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string39);
   (*  (ptr) (( (bPt) gf←c0454)+180) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string40);
   (*  (ptr) (( (bPt) gf←c0454)+184) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string41);
   (*  (ptr) (( (bPt) gf←c0454)+188) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string42);
   (*  (ptr) (( (bPt) gf←c0454)+192) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string43);
   (*  (ptr) (( (bPt) gf←c0454)+196) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string44);
   (*  (ptr) (( (bPt) gf←c0454)+200) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string45);
   (*  (ptr) (( (bPt) gf←c0454)+204) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string46);
   (*  (ptr) (( (bPt) gf←c0454)+208) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string47);
   (*  (ptr) (( (bPt) gf←c0454)+212) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string48);
   (*  (ptr) (( (bPt) gf←c0454)+216) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string49);
   (*  (ptr) (( (bPt) gf←c0454)+220) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string50);
   (*  (ptr) (( (bPt) gf←c0454)+224) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string51);
   (*  (ptr) (( (bPt) gf←c0454)+228) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string52);
   (*  (ptr) (( (bPt) gf←c0454)+232) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string53);
   (*  (ptr) (( (bPt) gf←c0454)+236) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string54);
   (*  (ptr) (( (bPt) gf←c0454)+240) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string55);
   (*  (ptr) (( (bPt) gf←c0454)+244) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string56);
   (*  (ptr) (( (bPt) gf←c0454)+248) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string57);
   (*  (ptr) (( (bPt) gf←c0454)+252) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+9) ), (word) &string58);
   (*  (ptr) (( (bPt) gf←c0454)+256) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0454)+17) ), (word) &string59);
   (void) XR←DeclareGlobalFrame((word) "GGFromImagerImpl", &globalframe, (word) XR←GetTypeIndex((word) &string60, 0, (word) &string61)
      , (word) (( (bPt) gf←c0454)+560)/* var←c64868 */ );
   var←c68580 = (word) XR←ImportInterface((word) "Convert", (word) XR←GetTypeIndexS((word) (&string62)), 73);
   (* (( (ptr) gf←c0454)+150)/* var←c65636 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67373057);
   var←c68580 = (word) XR←ImportInterface((word) "FileNames", (word) XR←GetTypeIndexS((word) (&string63)), 17);
   (* (( (ptr) gf←c0454)+149)/* var←c65604 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67635202);
   (void) XR←ImportProcS(var←c68580, 67634946);
   (void) XR←ImportProcS(var←c68580, 67374593);
   var←c68580 = (word) XR←ImportInterface((word) "GGCoreOps", (word) XR←GetTypeIndexS((word) (&string64)), 37);
   (* (( (ptr) gf←c0454)+162)/* var←c67652 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67379713);
   var←c68580 = (word) XR←ImportInterface((word) "GGFont", (word) XR←GetTypeIndexS((word) (&string65)), 16);
   (* (( (ptr) gf←c0454)+161)/* var←c67428 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67372545);
   (void) XR←ImportProcS(var←c68580, 69731594);
   (void) XR←ImportProcS(var←c68580, 67109376);
   var←c68580 = (word) XR←ImportInterface((word) "GGOutline", (word) XR←GetTypeIndexS((word) (&string66)), 19);
   (* (( (ptr) gf←c0454)+157)/* var←c66596 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67636738);
   (void) XR←ImportProcS(var←c68580, 67375105);
   (void) XR←ImportProcS(var←c68580, 525826);
   (void) XR←ImportProcS(var←c68580, 67633410);
   var←c68580 = (word) XR←ImportInterface((word) "GGParseIn", (word) XR←GetTypeIndexS((word) (&string67)), 26);
   (* (( (ptr) gf←c0454)+151)/* var←c65700 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67372033);
   var←c68580 = (word) XR←ImportInterface((word) "GGScene", (word) XR←GetTypeIndexS((word) (&string68)), 50);
   (* (( (ptr) gf←c0454)+144)/* var←c65028 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 787715);
   (void) XR←ImportProcS(var←c68580, 67371009);
   var←c68580 = (word) XR←ImportInterface((word) "GGSegment", (word) XR←GetTypeIndexS((word) (&string69)), 47);
   (* (( (ptr) gf←c0454)+156)/* var←c66404 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 68944900);
   (void) XR←ImportProcS(var←c68580, 69206789);
   (void) XR←ImportProcS(var←c68580, 69468677);
   (void) XR←ImportProcS(var←c68580, 68419843);
   var←c68580 = (word) XR←ImportInterface((word) "GGSlice", (word) XR←GetTypeIndexS((word) (&string70)), 128);
   (* (( (ptr) gf←c0454)+154)/* var←c66276 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 69219080);
   (void) XR←ImportProcS(var←c68580, 68167684);
   (void) XR←ImportProcS(var←c68580, 68162052);
   (void) XR←ImportProcS(var←c68580, 69210119);
   (void) XR←ImportProcS(var←c68580, 278529);
   var←c68580 = (word) XR←ImportInterface((word) "GGSliceOps", (word) XR←GetTypeIndexS((word) (&string71)), 73);
   (* (( (ptr) gf←c0454)+163)/* var←c67684 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 1850631);
   (void) XR←ImportProcS(var←c68580, 67901699);
   (void) XR←ImportProcS(var←c68580, 1062148);
   (void) XR←ImportProcS(var←c68580, 1325317);
   var←c68580 = (word) XR←ImportInterface((word) "GGTraj", (word) XR←GetTypeIndexS((word) (&string72)), 55);
   (* (( (ptr) gf←c0454)+155)/* var←c66308 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67374081);
   (void) XR←ImportProcS(var←c68580, 67633153);
   (void) XR←ImportProcS(var←c68580, 527106);
   (void) XR←ImportProcS(var←c68580, 787203);
   (void) XR←ImportProcS(var←c68580, 525314);
   (void) XR←ImportProcS(var←c68580, 68157956);
   var←c68580 = (word) XR←ImportInterface((word) "GGUtility", (word) XR←GetTypeIndexS((word) (&string73)), 42);
   (* (( (ptr) gf←c0454)+158)/* var←c66724 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 268964866);
   (void) XR←ImportProcS(var←c68580, 67637762);
   var←c68580 = (word) XR←ImportInterface((word) &string74, (word) XR←GetTypeIndexS((word) (&string75)), 84);
   (* (( (ptr) gf←c0454)+145)/* var←c65092 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 1853957);
   (void) XR←ImportProcS(var←c68580, 542978);
   var←c68580 = (word) XR←ImportInterface((word) "ImagerBackdoor", (word) XR←GetTypeIndexS((word) (&string76)), 42);
   (* (( (ptr) gf←c0454)+160)/* var←c67396 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67634434);
   var←c68580 = (word) XR←ImportInterface((word) "ImagerError", (word) XR←GetTypeIndexS((word) (&string77)), 3);
   (* (( (ptr) gf←c0454)+146)/* var←c65188 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67371521);
   var←c68580 = (word) XR←ImportInterface((word) &string78, (word) XR←GetTypeIndexS((word) (&string79)), 26);
   (* (( (ptr) gf←c0454)+159)/* var←c67364 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67374849);
   (void) XR←ImportProcS(var←c68580, 135533829);
   var←c68580 = (word) XR←ImportInterface((word) "ImagerInterpress", (word) XR←GetTypeIndexS((word) (&string80)), 10);
   (* (( (ptr) gf←c0454)+164)/* var←c68356 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 264449);
   (void) XR←ImportProcS(var←c68580, 788227);
   (void) XR←ImportProcS(var←c68580, 67633666);
   var←c68580 = (word) XR←ImportInterface((word) "ImagerPath", (word) XR←GetTypeIndexS((word) (&string81)), 18);
   (* (( (ptr) gf←c0454)+153)/* var←c66244 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 2097672);
   var←c68580 = (word) XR←ImportInterface((word) "ImagerState", (word) XR←GetTypeIndexS((word) (&string82)), 41);
   (* (( (ptr) gf←c0454)+143)/* var←c64964 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67109632);
   (void) XR←ImportProcS(var←c68580, 1583110);
   (void) XR←ImportProcS(var←c68580, 1582851);
   (void) XR←ImportProcS(var←c68580, 1058308);
   (void) XR←ImportProcS(var←c68580, 1058052);
   (void) XR←ImportProcS(var←c68580, 1057796);
   (void) XR←ImportProcS(var←c68580, 533250);
   (void) XR←ImportProcS(var←c68580, 795139);
   (void) XR←ImportProcS(var←c68580, 532738);
   (void) XR←ImportProcS(var←c68580, 794626);
   (void) XR←ImportProcS(var←c68580, 794370);
   (void) XR←ImportProcS(var←c68580, 531970);
   (void) XR←ImportProcS(var←c68580, 793858);
   (void) XR←ImportProcS(var←c68580, 269313);
   (void) XR←ImportProcS(var←c68580, 793347);
   (void) XR←ImportProcS(var←c68580, 268801);
   (void) XR←ImportProcS(var←c68580, 134748418);
   (void) XR←ImportProcS(var←c68580, 792578);
   (void) XR←ImportProcS(var←c68580, 792322);
   (void) XR←ImportProcS(var←c68580, 529922);
   (void) XR←ImportProcS(var←c68580, 791810);
   (void) XR←ImportProcS(var←c68580, 529410);
   (void) XR←ImportProcS(var←c68580, 791298);
   (void) XR←ImportProcS(var←c68580, 528898);
   (void) XR←ImportProcS(var←c68580, 67375361);
   (void) XR←ImportProcS(var←c68580, 67375105);
   (void) XR←ImportProcS(var←c68580, 67374849);
   (void) XR←ImportProcS(var←c68580, 67374593);
   (void) XR←ImportProcS(var←c68580, 67636482);
   (void) XR←ImportProcS(var←c68580, 67636226);
   (void) XR←ImportProcS(var←c68580, 527106);
   (void) XR←ImportProcS(var←c68580, 526850);
   (void) XR←ImportProcS(var←c68580, 526594);
   (void) XR←ImportProcS(var←c68580, 526338);
   (void) XR←ImportProcS(var←c68580, 788227);
   (void) XR←ImportProcS(var←c68580, 787971);
   (void) XR←ImportProcS(var←c68580, 525570);
   (void) XR←ImportProcS(var←c68580, 67634178);
   var←c68580 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string83)), 55);
   (* (( (ptr) gf←c0454)+142)/* var←c64900 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 529410);
   (void) XR←ImportProcS(var←c68580, 270849);
   (void) XR←ImportProcS(var←c68580, 67371521);
   (void) XR←ImportProcS(var←c68580, 67908099);
   (void) XR←ImportProcS(var←c68580, 67634689);
   (void) XR←ImportProcS(var←c68580, 68160004);
   (void) XR←ImportProcS(var←c68580, 135013378);
   (void) XR←ImportProcS(var←c68580, 67371777);
   var←c68580 = (word) XR←ImportInterface((word) "InterpressInterpreter", (word) XR←GetTypeIndexS((word) (&string84)), 8);
   (* (( (ptr) gf←c0454)+165)/* var←c68388 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 68420101);
   var←c68580 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string85)), 103);
   (* (( (ptr) gf←c0454)+147)/* var←c65348 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67641090);
   (void) XR←ImportProcS(var←c68580, 67378689);
   (void) XR←ImportProcS(var←c68580, 67392257);
   (void) XR←ImportProcS(var←c68580, 134763778);
   (void) XR←ImportProcS(var←c68580, 67640578);
   (void) XR←ImportProcS(var←c68580, 68958724);
   var←c68580 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string86)), 43);
   (* (( (ptr) gf←c0454)+148)/* var←c65476 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67903235);
   (void) XR←ImportProcS(var←c68580, 67900419);
   (void) XR←ImportProcS(var←c68580, 67898627);
   (void) XR←ImportProcS(var←c68580, 67633666);
   (void) XR←ImportProcS(var←c68580, 67896323);
   (void) XR←ImportProcS(var←c68580, 67378177);
   var←c68580 = (word) XR←ImportInterface((word) "Vectors2d", (word) XR←GetTypeIndexS((word) (&string87)), 21);
   (* (( (ptr) gf←c0454)+152)/* var←c65892 */  ) = var←c68580;
   (void) XR←ImportProcS(var←c68580, 67636737);
   var←c68580 = (word) XR←ExportInterface((word) "GGFromImager", (word) XR←GetTypeIndexS((word) (&string88)), 2);
   (* (( (ptr) gf←c0454)+166)/* var←c68612 */  ) = var←c68580;
   (void) XR←ExportVar(var←c68580, 0, (word) (( (bPt) gf←c0454)+260)/* var←c63652 */ );
   (void) XR←ExportProcS(var←c68580, (word) (( (bPt) gf←c0454)+544)/* var←c64804 */ , 67633410, (word) "Capture");
   var←c68580 = (word) XR←ExportInterface((word) &string74, (word) XR←GetTypeIndexS((word) (&string75)), 84);
   (* (( (ptr) gf←c0454)+167)/* var←c68644 */  ) = var←c68580;
   (void) XR←ExportType((word) "ClassRep", (word) XR←GetTypeIndexS((word) (&string89)), (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2)
      );
   (void) XR←ExportType((word) "StateRep", (word) XR←GetTypeIndexS((word) (&string90)), (word) XR←GetTypeIndex((word) &string91, 0, (word) &string92)
      );
   var←c68580 = (word) XR←ExportInterface((word) &string78, (word) XR←GetTypeIndexS((word) (&string79)), 26);
   (* (( (ptr) gf←c0454)+167)/* var←c68644 */  ) = var←c68580;
   (void) XR←ExportType((word) "TypefaceRep", (word) XR←GetTypeIndexS((word) (&string93)), (word) XR←GetTypeIndex((word) &string94, 0, (word) &string95)
      );
   }

static void GGFromImagerImpl←P0(formal←c079, formal←c077)
   word formal←c079;
   word formal←c077;
   {
   register ptr gf←c68676 =  (ptr) &globalframe;
   /* GGFromImagerImpl: */ 
SOURCE(436, 19580)
SOURCE(11981, 79)
   {
      word pd96;
      pd96 = (* (( (ptr) (* (( (ptr) gf←c68676)+142)/* var←c64900 */  ))+7) );
      (* (( (ptr) gf←c68676)+4)/* identity←v5520 */  ) = (word) ( *( (fPt) ((*  (ptr) pd96 ))))((*  (ptr) (&fc97) ), pd96);
      };
SOURCE(20020, 2258)
   {
      word var←c64932;
      var←c64932 = XR←NewObject(280, (* (( (ptr) gf←c68676)+6) ));
      (*  (ptr) var←c64932 ) = (* (( (ptr) gf←c68676)+38) );
      (* (( (ptr) var←c64932)+1) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+8) );
      (* (( (ptr) var←c64932)+2) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+9) );
      (* (( (ptr) var←c64932)+3) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+10) );
      (* (( (ptr) var←c64932)+4) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+11) );
      (* (( (ptr) var←c64932)+5) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+12) );
      (* (( (ptr) var←c64932)+6) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+13) );
      (* (( (ptr) var←c64932)+7) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+14) );
      (* (( (ptr) var←c64932)+8) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+15) );
      (* (( (ptr) var←c64932)+9) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+16) );
      (* (( (ptr) var←c64932)+10) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+17) );
      (* (( (ptr) var←c64932)+11) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+18) );
      (* (( (ptr) var←c64932)+12) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+19) );
      (* (( (ptr) var←c64932)+13) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+20) );
      (* (( (ptr) var←c64932)+14) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+21) );
      (* (( (ptr) var←c64932)+15) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+22) );
      (* (( (ptr) var←c64932)+16) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+23) );
      (* (( (ptr) var←c64932)+17) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+24) );
      (* (( (ptr) var←c64932)+18) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+25) );
      (* (( (ptr) var←c64932)+19) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+26) );
      (* (( (ptr) var←c64932)+20) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+27) );
      (* (( (ptr) var←c64932)+21) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+28) );
      (* (( (ptr) var←c64932)+22) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+29) );
      (* (( (ptr) var←c64932)+23) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+30) );
      (* (( (ptr) var←c64932)+24) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+31) );
      (* (( (ptr) var←c64932)+25) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+32) );
      (* (( (ptr) var←c64932)+26) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+33) );
      (* (( (ptr) var←c64932)+27) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+34) );
      (* (( (ptr) var←c64932)+28) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+35) );
      (* (( (ptr) var←c64932)+29) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+36) );
      (* (( (ptr) var←c64932)+30) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+37) );
      (* (( (ptr) var←c64932)+31) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+38) );
      (* (( (ptr) var←c64932)+32) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+39) );
      (* (( (ptr) var←c64932)+33) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+40) );
      (* (( (ptr) var←c64932)+34) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+41) );
      (* (( (ptr) var←c64932)+35) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+42) );
      (* (( (ptr) var←c64932)+36) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+43) );
      (* (( (ptr) var←c64932)+37) ) = (* (( (ptr) (* (( (ptr) gf←c68676)+143)/* var←c64964 */  ))+44) );
      (* (( (ptr) var←c64932)+38) ) = (word) (( (bPt) gf←c68676)+496)/* var←c64612 */ ;
      (* (( (ptr) var←c64932)+39) ) = (word) (( (bPt) gf←c68676)+456)/* var←c64452 */ ;
      (* (( (ptr) var←c64932)+40) ) = (word) (( (bPt) gf←c68676)+448)/* var←c64420 */ ;
      (* (( (ptr) var←c64932)+41) ) = (word) (( (bPt) gf←c68676)+408)/* var←c64260 */ ;
      (* (( (ptr) var←c64932)+42) ) = (word) (( (bPt) gf←c68676)+432)/* var←c64356 */ ;
      (* (( (ptr) var←c64932)+43) ) = (word) (( (bPt) gf←c68676)+384)/* var←c64164 */ ;
      (* (( (ptr) var←c64932)+44) ) = (word) (( (bPt) gf←c68676)+416)/* var←c64292 */ ;
      (* (( (ptr) var←c64932)+45) ) = (word) (( (bPt) gf←c68676)+488)/* var←c64580 */ ;
      (* (( (ptr) var←c64932)+46) ) = (word) (( (bPt) gf←c68676)+400)/* var←c64228 */ ;
      (* (( (ptr) var←c64932)+47) ) = (word) (( (bPt) gf←c68676)+392)/* var←c64196 */ ;
      (* (( (ptr) var←c64932)+48) ) = (word) (( (bPt) gf←c68676)+424)/* var←c64324 */ ;
      (* (( (ptr) var←c64932)+49) ) = (word) (( (bPt) gf←c68676)+376)/* var←c64132 */ ;
      (* (( (ptr) var←c64932)+50) ) = (word) (( (bPt) gf←c68676)+368)/* var←c64100 */ ;
      (* (( (ptr) var←c64932)+51) ) = (word) (( (bPt) gf←c68676)+360)/* var←c64068 */ ;
      (* (( (ptr) var←c64932)+52) ) = (word) (( (bPt) gf←c68676)+352)/* var←c64036 */ ;
      (* (( (ptr) var←c64932)+53) ) = (word) (( (bPt) gf←c68676)+344)/* var←c64004 */ ;
      (* (( (ptr) var←c64932)+54) ) = (word) (( (bPt) gf←c68676)+336)/* var←c63972 */ ;
      (* (( (ptr) var←c64932)+55) ) = (word) (( (bPt) gf←c68676)+328)/* var←c63940 */ ;
      (* (( (ptr) var←c64932)+56) ) = (word) (( (bPt) gf←c68676)+320)/* var←c63908 */ ;
      (* (( (ptr) var←c64932)+57) ) = (word) (( (bPt) gf←c68676)+312)/* var←c63876 */ ;
      (* (( (ptr) var←c64932)+58) ) = (word) (( (bPt) gf←c68676)+304)/* var←c63844 */ ;
      (* (( (ptr) var←c64932)+59) ) = (word) (( (bPt) gf←c68676)+296)/* var←c63812 */ ;
      (* (( (ptr) var←c64932)+60) ) = (word) (( (bPt) gf←c68676)+288)/* var←c63780 */ ;
      (* (( (ptr) var←c64932)+61) ) = (word) (( (bPt) gf←c68676)+280)/* var←c63748 */ ;
      (* (( (ptr) var←c64932)+62) ) = (word) (( (bPt) gf←c68676)+272)/* var←c63716 */ ;
      (* (( (ptr) var←c64932)+63) ) = (word) (( (bPt) gf←c68676)+264)/* var←c63684 */ ;
      (* (( (ptr) gf←c68676)+5)/* gargoyleClass←v6164 */  ) = var←c64932;
      };
   }

static word Create←P60(camera←v6520)
   word camera←v6520;
   {
   register ptr gf←c68708 =  (ptr) &globalframe;
   word var←c6564;
   word data←v12028;
   word state←v12056;
   /* Create: */ 
SOURCE(2359, 279)
SOURCE(2411, 74)
   {
      word var←c64996;
      word var←c65060;
      {
         word pd98;
         pd98 = (* (( (ptr) (* (( (ptr) gf←c68708)+144)/* var←c65028 */  ))+4) );
         var←c64996 = (word) ( *( (fPt) ((*  (ptr) pd98 ))))(0, pd98);
         };
      var←c65060 = XR←NewObject(12, (* (( (ptr) gf←c68708)+13) ));
      (*  (ptr) var←c65060 ) = var←c64996;
      (* (( (ptr) var←c65060)+1) ) = camera←v6520;
      data←v12028 = var←c65060;
      };
SOURCE(2487, 40)
   {
      word pd99;
      pd99 = (* (( (ptr) (* (( (ptr) gf←c68708)+143)/* var←c64964 */  ))+7) );
      state←v12056 = (word) ( *( (fPt) ((*  (ptr) pd99 ))))(pd99);
      };
SOURCE(2529, 26)
   (* (( (ptr) state←v12056)+36) ) = (*  (ptr) (* (( (ptr) (* (( (ptr) gf←c68708)+145)/* var←c65092 */  ))+54) ) );
SOURCE(2557, 81)
   {
      word var←c65156;
      var←c65156 = XR←NewObject(16, (* (( (ptr) gf←c68708)+14) ));
      (*  (ptr) var←c65156 ) = (* (( (ptr) gf←c68708)+5)/* gargoyleClass←v6164 */  );
      (* (( (ptr) var←c65156)+1) ) = state←v12056;
      (* (( (ptr) var←c65156)+2) ) = data←v12028;
      return(var←c65156);
      };
   }

static word Capture←P120(formal←c0547, camera←v6652)
   word formal←c0547;
   word camera←v6652;
   {
   W6 var←c68740;
   /* declaration of action←v6624 skipped */ 
   register ptr gf←c68772 =  (ptr) &globalframe;
   word var←c6756;
   /* declaration of context←v12100 skipped */ 
   var←c68740.f4/* action←v6624 */  = formal←c0547;
   /* Capture: */ 
SOURCE(2644, 405)
SOURCE(2726, 33)
   var←c68740.f5/* context←v12100 */  = (word) Create←P60(camera←v6652);
SOURCE(2761, 217)
   {
      word var←c0521;
      var←c0521 = (word) &var←c68740;
       (void) (word) XR←Enable(( ((word)  (fPt) NoName←Q3852) ), ( ((word)  (fPt) NoName←Q4152) ), var←c0521);
      };
SOURCE(2986, 63)
   {
      word var←c65380;
      var←c65380 = (* (( (ptr) var←c68740.f5/* context←v12100 */ )+2) );
      if ((var←c65380 == 0)) {
         goto lab←L100002;
         };
      if (((* (( (ptr) gf←c68772)+13) ) == XR←GetReferentType(var←c65380))) {
         {
            word data←v12188;
            data←v12188 = var←c65380;
SOURCE(3030, 19)
            return((*  (ptr) data←v12188 ));
            };
         }
      else {
         lab←L100002: ;
SOURCE(3062, 5)
         (void) XR←RaiseUnnamedError();
         };
      };
   }

static word NoName←Q3852(formal←c0458)
   word formal←c0458;
   {
SOURCE(2761, 217)
   {
      word pd100;
      pd100 = (* (( (ptr) formal←c0458)+4) );
      (void) ( *( (fPt) ((*  (ptr) pd100 ))))((* ((( (ptr) formal←c0458)+5)) ), pd100);
      };
   return(0);
   }

static void ProcessStateChanges←P180(context←v6816)
   word context←v6816;
   {
   register ptr gf←c68804 =  (ptr) &globalframe;
   word state←v12232;
   word changed←v12260;
   /* ProcessStateChanges: */ 
SOURCE(3073, 293)
SOURCE(3129, 28)
   state←v12232 = (* (( (ptr) context←v6816)+1) );
SOURCE(3159, 48)
   changed←v12260 = (* (( (ptr) state←v12232)+1) );
SOURCE(3209, 38)
   (* (( (ptr) state←v12232)+1) ) = 0;
SOURCE(3249, 117)
   if ( ( (((unsigned)changed←v12260 << 1) >> 31) ? ((* (( (ptr) state←v12232)+37) ) != 0) : 0 ) ) {
SOURCE(3297, 69)
      {
         W3 var←c096;
         (*  (ptr) (word) &var←c096 ) = context←v6816;
         (* (( (ptr) (word) &var←c096) + 1) ) = (* (( (ptr) gf←c68804)+20) );
         (* (( (ptr) (word) &var←c096) + 2) ) = (* (( (ptr) gf←c68804)+21) );
         (void) (XR←RaiseSignal((word) (( (bPt) gf←c68804)+260)/* var←c63652 */ , 0, (word) &var←c096));
         };
      };
   }

static word RopeFromXStringProc←P240(formal←c0548)
   word formal←c0548;
   {
   W7 var←c68836;
   /* declaration of string←v6876 skipped */ 
   register ptr gf←c68868 =  (ptr) &globalframe;
   word rope←v6920;
   /* declaration of var←c65412 skipped */ 
   var←c68836.f4/* string←v6876 */  = formal←c0548;
   /* RopeFromXStringProc: */ 
SOURCE(3372, 327)
   {
      word tmpAddr101;
      tmpAddr101 = (word) (( (ptr) &var←c68836)+5)/* var←c65412 */ ;
      (*  (ptr) tmpAddr101 ) = ( ((word)  (fPt) p←P2376) );
      (* (( (ptr) tmpAddr101) + 1) ) = 1;
      };
SOURCE(3372, 327)
   rope←v6920 = 0;
SOURCE(3674, 25)
   {
      word pd102;
      pd102 = (* (( (ptr) (* (( (ptr) gf←c68868)+148)/* var←c65476 */  ))+32) );
      return((word) ( *( (fPt) ((*  (ptr) pd102 ))))((word) ((( (bPt) &var←c68836)+20)/* var←c65412 */ ), pd102));
      };
   }

static void p←P2376(formal←c0549, formal←c68932)
   word formal←c0549;
   word formal←c68932;
   {
   W8 var←c68900;
   /* declaration of q←v12380 skipped */ 
   /* declaration of var←c65508 skipped */ 
   /* declaration of currentSet←v12468 skipped */ 
   formal←c68932 = (formal←c68932 - 20);
   var←c68900.f4/* q←v12380 */  = formal←c0549;
   var←c68900.f0 = formal←c68932;
   /* p: */ 
SOURCE(3451, 218)
   {
      word tmpAddr103;
      tmpAddr103 = (word) (( (ptr) &var←c68900)+5)/* var←c65508 */ ;
      (*  (ptr) tmpAddr103 ) = ( ((word)  (fPt) action←P2436) );
      (* (( (ptr) tmpAddr103) + 1) ) = 1;
      };
SOURCE(3480, 20)
   var←c68900.f7/* currentSet←v12468 */  = 0;
SOURCE(3655, 14)
   {
      word pd104;
      pd104 = (* (( (ptr) formal←c68932)+4) );
      (void) ( *( (fPt) ((*  (ptr) pd104 ))))((word) ((( (bPt) &var←c68900)+20)/* var←c65508 */ ), pd104);
      };
   }

static void action←P2436(char←v12572, formal←c68964)
   word char←v12572;
   word formal←c68964;
   {
   word set←v12600;
   formal←c68964 = (formal←c68964 - 20);
   /* action: */ 
SOURCE(3502, 148)
SOURCE(3533, 26)
   {
      word idx105;
      set←v12600 = (
         idx105 = (word) ((word) char←v12572 >> 8),
         BCK(idx105, 256)
         );
      };
SOURCE(3561, 63)
   if ((set←v12600 != (* (( (ptr) formal←c68964)+7) ))) {
SOURCE(3586, 11)
      {
         word pd106;
         pd106 = (* (( (ptr) formal←c68964)+4) );
         (void) ( *( (fPt) ((*  (ptr) pd106 ))))(255, pd106);
         };
SOURCE(3599, 25)
      (* (( (ptr) formal←c68964)+7) ) = set←v12600;
      {
         word pd107;
         pd107 = (* (( (ptr) formal←c68964)+4) );
         (void) ( *( (fPt) ((*  (ptr) pd107 ))))(set←v12600, pd107);
         };
      };
SOURCE(3627, 23)
   {
      word pd108;
      pd108 = (* (( (ptr) formal←c68964)+4) );
      (void) ( *( (fPt) ((*  (ptr) pd108 ))))((char←v12572 & 0377), pd108);
      };
   }

static void UnpackComplexFontName←P300(formal←c0119, fontName←v6980)
   word formal←c0119;
   word fontName←v6980;
   {
   W13 var←c68996;
   register ptr gf←c69028 =  (ptr) &globalframe;
   word prefix←v7024;
   word family←v7052;
   word face←v7080;
   word fontSize←v7108;
   /* declaration of var←c65540 skipped */ 
   /* declaration of var←c65572 skipped */ 
   word new←v12700 = 0;
   word sizeRope←v12728 = 0;
   /* UnpackComplexFontName: */ 
SOURCE(3705, 1659)
   {
      word tmpAddr109;
      tmpAddr109 = (word) (( (ptr) &var←c68996)+4)/* var←c65540 */ ;
      (*  (ptr) tmpAddr109 ) = ( ((word)  (fPt) AlphaProc←P2556) );
      (* (( (ptr) tmpAddr109) + 1) ) = 1;
      };
   {
      word tmpAddr110;
      tmpAddr110 = (word) (( (ptr) &var←c68996)+6)/* var←c65572 */ ;
      (*  (ptr) tmpAddr110 ) = ( ((word)  (fPt) DigitProc←P2496) );
      (* (( (ptr) tmpAddr110) + 1) ) = 1;
      };
SOURCE(3705, 1659)
   prefix←v7024 = 0;
SOURCE(3705, 1659)
   family←v7052 = 0;
SOURCE(3705, 1659)
   face←v7080 = 0;
SOURCE(4193, 44)
   {
      word pd111;
      pd111 = (* (( (ptr) (* (( (ptr) gf←c69028)+149)/* var←c65604 */  ))+18) );
      prefix←v7024 = (word) ( *( (fPt) ((*  (ptr) pd111 ))))(fontName←v6980, pd111);
      };
SOURCE(4258, 38)
   {
      word pd112;
      pd112 = (* (( (ptr) (* (( (ptr) gf←c69028)+149)/* var←c65604 */  ))+11) );
      new←v12700 = (word) ( *( (fPt) ((*  (ptr) pd112 ))))(fontName←v6980, 1, pd112);
      };
SOURCE(4319, 30)
   {
      word pd113;
      pd113 = (* (( (ptr) (* (( (ptr) gf←c69028)+149)/* var←c65604 */  ))+12) );
      face←v7080 = (word) ( *( (fPt) ((*  (ptr) pd113 ))))(new←v12700, 45, pd113);
      };
SOURCE(4389, 975)
   {
      word pd114;
      pd114 = (* (( (ptr) (* (( (ptr) gf←c69028)+148)/* var←c65476 */  ))+8) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd114 ))))(face←v7080, new←v12700, 1, pd114))) {
SOURCE(4419, 494)
         {
            /* declaration of endOfName←v12772 skipped */ 
            /* declaration of nameStream←v12800 skipped */ 
            W2 var←c0116;
SOURCE(4483, 35)
            {
               word pd115;
               pd115 = (* (( (ptr) (* (( (ptr) gf←c69028)+147)/* var←c65348 */  ))+33) );
               (* (( (ptr) &var←c68996)+9)/* nameStream←v12800 */  ) = (word) ( *( (fPt) ((*  (ptr) pd115 ))))(new←v12700, 0, pd115);
               };
SOURCE(4520, 53)
            {
               word pd116;
               pd116 = (* (( (ptr) (* (( (ptr) gf←c69028)+147)/* var←c65348 */  ))+89) );
               (void) ( *( (fPt) ((*  (ptr) pd116 ))))((word) &var←c0116, (* (( (ptr) &var←c68996)+9)/* nameStream←v12800 */  ), (word) (
                     ( (bPt) &var←c68996)+24)/* var←c65572 */ , pd116);
               };
            family←v7052 = var←c0116.f0;
SOURCE(4611, 96)
            {
               /* declaration of var←c01 skipped */ 
               /* declaration of var←c02 skipped */ 
SOURCE(4611, 96)
               (* (( (ptr) &var←c68996)+10)/* var←c01 */  ) = (* (( (ptr) (* (( (ptr) gf←c69028)+147)/* var←c65348 */  ))+89) );
               {
                  word var←c03;
                  {
                     word var←c0522;
                     var←c0522 = (word) &var←c68996;
                     var←c03 = (word) XR←Enable(( ((word)  (fPt) NoName←Q3912) ), ( ((word)  (fPt) NoName←Q4092) ), var←c0522);
                     };
                  if ((var←c03 == 2)) {
                     goto lab←L100005;
                     };
                  };
               sizeRope←v12728 = (*  (W2Pt) (( (ptr) &var←c68996)+11)/* var←c02 */  ).f0;
               lab←L100005: ;
               };
SOURCE(4757, 41)
            {
               word pd117;
               pd117 = (* (( (ptr) (* (( (ptr) gf←c69028)+150)/* var←c65636 */  ))+12) );
               fontSize←v7108 = (word) ( *( (fPt) ((*  (ptr) pd117 ))))(sizeRope←v12728, pd117);
               };
SOURCE(4800, 111)
            if ((0 != (* (( (ptr) &var←c68996)+8)/* endOfName←v12772 */  ))) {
SOURCE(4818, 38)
               face←v7080 = (* (( (ptr) gf←c69028)+22) );
               }
            else {
SOURCE(4856, 55)
               {
                  word var←c65668;
                  {
                     word pd118;
                     pd118 = (* (( (ptr) (* (( (ptr) gf←c69028)+151)/* var←c65700 */  ))+8) );
                     var←c65668 = (word) ( *( (fPt) ((*  (ptr) pd118 ))))((* ((( (ptr) &var←c68996)+9)/* nameStream←v12800 */ ) ), pd118);
                     };
                  {
                     word pd119;
                     pd119 = (* (( (ptr) (* (( (ptr) gf←c69028)+148)/* var←c65476 */  ))+6) );
                     face←v7080 = (word) ( *( (fPt) ((*  (ptr) pd119 ))))((* (( (ptr) gf←c69028)+23) ), var←c65668, pd119);
                     };
                  };
               };
            };
         }
      else {
SOURCE(4956, 86)
         {
            word var←c65732;
            {
               word pd120;
               pd120 = (* (( (ptr) (* (( (ptr) gf←c69028)+148)/* var←c65476 */  ))+24) );
               var←c65732 = (word) ( *( (fPt) ((*  (ptr) pd120 ))))(new←v12700, 0, (* (( (ptr) gf←c69028)+23) ), pd120);
               };
            {
               word pd121;
               pd121 = (* (( (ptr) (* (( (ptr) gf←c69028)+148)/* var←c65476 */  ))+17) );
               family←v7052 = (word) ( *( (fPt) ((*  (ptr) pd121 ))))(new←v12700, 0, var←c65732, pd121);
               };
            };
SOURCE(5065, 283)
         {
            word pd123;
            word pd124;
            word pd125;
            word pd126;
            word pd127;
            word pd128;
            pd123 = (* (( (ptr) (* (( (ptr) gf←c69028)+148)/* var←c65476 */  ))+8) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd123 ))))(face←v7080, (* (( (ptr) gf←c69028)+24) ), 0, pd123))) {
               face←v7080 = (* (( (ptr) gf←c69028)+22) );
               goto endif0122;
               };
            pd124 = (* (( (ptr) (* (( (ptr) gf←c69028)+148)/* var←c65476 */  ))+8) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd124 ))))(face←v7080, (* (( (ptr) gf←c69028)+25) ), 0, pd124))) {
               face←v7080 = (* (( (ptr) gf←c69028)+26) );
               goto endif0122;
               };
            pd125 = (* (( (ptr) (* (( (ptr) gf←c69028)+148)/* var←c65476 */  ))+8) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd125 ))))(face←v7080, (* (( (ptr) gf←c69028)+27) ), 0, pd125))) {
               face←v7080 = (* (( (ptr) gf←c69028)+26) );
               goto endif0122;
               };
            pd126 = (* (( (ptr) (* (( (ptr) gf←c69028)+148)/* var←c65476 */  ))+8) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd126 ))))(face←v7080, (* (( (ptr) gf←c69028)+28) ), 0, pd126))) {
               face←v7080 = (* (( (ptr) gf←c69028)+29) );
               goto endif0122;
               };
            pd127 = (* (( (ptr) (* (( (ptr) gf←c69028)+148)/* var←c65476 */  ))+8) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd127 ))))(face←v7080, (* (( (ptr) gf←c69028)+30) ), 0, pd127))) {
               face←v7080 = (* (( (ptr) gf←c69028)+29) );
               goto endif0122;
               };
            pd128 = (* (( (ptr) (* (( (ptr) gf←c69028)+148)/* var←c65476 */  ))+8) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd128 ))))(face←v7080, (* (( (ptr) gf←c69028)+31) ), 0, pd128))) {
               face←v7080 = (* (( (ptr) gf←c69028)+32) );
               goto endif0122;
               };
            face←v7080 = (
               XR←RaiseUnnamedError(), 0
               );
            goto endif0122;
            endif0122: ;
            };
SOURCE(5350, 14)
         fontSize←v7108 = (*  (ptr) &fc97 );
         };
      };
   /* removed tail goto */ 
   (*  (ptr) formal←c0119 ) = prefix←v7024;
   (* (( (ptr) formal←c0119)+1) ) = family←v7052;
   (* (( (ptr) formal←c0119)+2) ) = face←v7080;
   (* (( (ptr) formal←c0119)+3) ) = fontSize←v7108;
   return;
   }

static word NoName←Q3912(formal←c0464)
   word formal←c0464;
   {
SOURCE(4611, 96)
   {
      word pd129;
      pd129 = (* (( (ptr) formal←c0464)+10) );
      (void) ( *( (fPt) ((*  (ptr) pd129 ))))((word) (( (bPt) formal←c0464)+44), (* (( (ptr) formal←c0464)+9) ), (word) (( (bPt) formal←c0464)+16)
         , pd129);
      };
   return(0);
   }

static word DigitProc←P2496(char←v45004, formal←c69060)
   word char←v45004;
   word formal←c69060;
   {
   word var←c45048;
   formal←c69060 = (formal←c69060 - 24);
   /* DigitProc: */ 
SOURCE(3817, 175)
SOURCE(3845, 147)
   {
      word var←c65764;
      var←c65764 = char←v45004;
      switch (var←c65764) {
         case 10: case 13: case 9: case 32: 
SOURCE(3893, 14)
            return(0);
         case 48: case 49: case 50: case 51: case 52: case 53: case 54: case 55: case 56: case 57: 
SOURCE(3951, 14)
            return(0);
         default: 
SOURCE(3978, 14)
            return(2);
         };
      };
   }

static word AlphaProc←P2556(char←v45108, formal←c69092)
   word char←v45108;
   word formal←c69092;
   {
   word var←c45152;
   formal←c69092 = (formal←c69092 - 16);
   /* AlphaProc: */ 
SOURCE(3997, 165)
SOURCE(4025, 137)
   {
      word var←c65796;
      var←c65796 = char←v45108;
      if ((((var←c65796 == 10) || (var←c65796 == 13)) || (var←c65796 == 9)) || (var←c65796 == 32)) {
SOURCE(4073, 14)
         return(0);
         }
      else {
         if (((var←c65796 - 97) <= 25) || ((var←c65796 - 65) <= 25)) {
SOURCE(4121, 14)
            return(0);
            }
         else {
SOURCE(4148, 14)
            return(2);
            };
         };
      };
   }

static void SetSegProperties←P360(context←v7168, m←v7196, outlined←v7224, seg←v7252)
   word context←v7168;
   word m←v7196;
   word outlined←v7224;
   word seg←v7252;
   {
   register ptr gf←c69124 =  (ptr) &globalframe;
   word strokeEnd←v12844;
   /* SetSegProperties: */ 
SOURCE(5373, 528)
SOURCE(5505, 48)
   {
      word idx130;
      strokeEnd←v12844 = (
         idx130 = (* (( (ptr) (* (( (ptr) context←v7168)+1) ))+21) ),
         BCK(idx130, 16)
         );
      };
SOURCE(5555, 346)
   if ((0 != outlined←v7224)) {
      {
         word var←c65924;
SOURCE(5574, 114)
         {
            W2 var←c65828;
            {
               W2 var←c0134;
               {
                  W2 var←c65860;
                  var←c65860.f0 = (* (( (ptr) (* (( (ptr) context←v7168)+1) ))+20) );
                  var←c65860.f1 = (*  (ptr) &fc131 );
                  {
                     word pd132;
                     pd132 = (* (( (ptr) (* (( (ptr) gf←c69124)+142)/* var←c64900 */  ))+40) );
                     (void) ( *( (fPt) ((*  (ptr) pd132 ))))((word) &var←c0134, m←v7196, var←c65860, pd132);
                     };
                  };
               var←c65828 = var←c0134;
               };
            {
               word pd133;
               pd133 = (* (( (ptr) (* (( (ptr) gf←c69124)+152)/* var←c65892 */  ))+18) );
               (* (( (ptr) seg←v7252)+2) ) = (word) ( *( (fPt) ((*  (ptr) pd133 ))))(var←c65828, pd133);
               };
            };
SOURCE(5690, 112)
         var←c65924 = (* (( (ptr) (* (( (ptr) context←v7168)+1) ))+36) );
         if ( ( (var←c65924 == 0) ? 1 : ((*  (ptr) var←c65924 ) == 0) ) ) {
            (* (( (ptr) seg←v7252)+8) ) = (* (( (ptr) (* (( (ptr) context←v7168)+1) ))+36) );
            }
         else {
            (* (( (ptr) seg←v7252)+8) ) = (*  (ptr) (* (( (ptr) (* (( (ptr) gf←c69124)+145)/* var←c65092 */  ))+54) ) );
            };
SOURCE(5804, 25)
         (* (( (ptr) seg←v7252)+3) ) = strokeEnd←v12844;
         };
      }
   else {
SOURCE(5840, 21)
      (* (( (ptr) seg←v7252)+2) ) = (*  (ptr) &fc131 );
SOURCE(5863, 15)
      (* (( (ptr) seg←v7252)+8) ) = 0;
SOURCE(5880, 21)
      (* (( (ptr) seg←v7252)+3) ) = 2;
      };
   }

static word OutlineFromPath←P420(formal←c0550, path←v7340, formal←c0551, formal←c0552, formal←c0553)
   word formal←c0550;
   word path←v7340;
   word formal←c0551;
   word formal←c0552;
   word formal←c0553;
   {
   W29 var←c69156;
   /* declaration of context←v7312 skipped */ 
   /* declaration of m←v7368 skipped */ 
   /* declaration of closed←v7396 skipped */ 
   /* declaration of outlined←v7424 skipped */ 
   register ptr gf←c69188 =  (ptr) &globalframe;
   word var←c7468;
   /* declaration of var←c65956 skipped */ 
   /* declaration of var←c65988 skipped */ 
   /* declaration of var←c66020 skipped */ 
   /* declaration of var←c66052 skipped */ 
   /* declaration of var←c66084 skipped */ 
   /* declaration of var←c66116 skipped */ 
   /* declaration of var←c66148 skipped */ 
   /* declaration of curOutline←v12888 skipped */ 
   /* declaration of curTraj←v12916 skipped */ 
   /* declaration of curSeg←v12944 skipped */ 
   /* declaration of lp←v12972 skipped */ 
   /* declaration of firstPoint←v13000 skipped */ 
   (* (( (ptr) &var←c69156)+4)/* context←v7312 */  ) = formal←c0550;
   (* (( (ptr) &var←c69156)+5)/* m←v7368 */  ) = formal←c0551;
   (* (( (ptr) &var←c69156)+6)/* closed←v7396 */  ) = formal←c0552;
   (* (( (ptr) &var←c69156)+7)/* outlined←v7424 */  ) = formal←c0553;
   /* OutlineFromPath: */ 
SOURCE(5910, 2497)
   {
      word tmpAddr134;
      tmpAddr134 = (word) (( (ptr) &var←c69156)+8)/* var←c65956 */ ;
      (*  (ptr) tmpAddr134 ) = ( ((word)  (fPt) Arc←P3024) );
      (* (( (ptr) tmpAddr134) + 1) ) = 1;
      };
   {
      word tmpAddr135;
      tmpAddr135 = (word) (( (ptr) &var←c69156)+10)/* var←c65988 */ ;
      (*  (ptr) tmpAddr135 ) = ( ((word)  (fPt) Conic←P2964) );
      (* (( (ptr) tmpAddr135) + 1) ) = 1;
      };
   {
      word tmpAddr136;
      tmpAddr136 = (word) (( (ptr) &var←c69156)+12)/* var←c66020 */ ;
      (*  (ptr) tmpAddr136 ) = ( ((word)  (fPt) Curve←P2904) );
      (* (( (ptr) tmpAddr136) + 1) ) = 1;
      };
   {
      word tmpAddr137;
      tmpAddr137 = (word) (( (ptr) &var←c69156)+14)/* var←c66052 */ ;
      (*  (ptr) tmpAddr137 ) = ( ((word)  (fPt) Line←P2844) );
      (* (( (ptr) tmpAddr137) + 1) ) = 1;
      };
   {
      word tmpAddr138;
      tmpAddr138 = (word) (( (ptr) &var←c69156)+16)/* var←c66084 */ ;
      (*  (ptr) tmpAddr138 ) = ( ((word)  (fPt) Move←P2784) );
      (* (( (ptr) tmpAddr138) + 1) ) = 1;
      };
   {
      word tmpAddr139;
      tmpAddr139 = (word) (( (ptr) &var←c69156)+18)/* var←c66116 */ ;
      (*  (ptr) tmpAddr139 ) = ( ((word)  (fPt) AppendChild←P2724) );
      (* (( (ptr) tmpAddr139) + 1) ) = 1;
      };
   {
      word tmpAddr140;
      tmpAddr140 = (word) (( (ptr) &var←c69156)+20)/* var←c66148 */ ;
      (*  (ptr) tmpAddr140 ) = ( ((word)  (fPt) Finish←P2664) );
      (* (( (ptr) tmpAddr140) + 1) ) = 1;
      };
SOURCE(6055, 30)
   (* (( (ptr) &var←c69156)+22)/* curOutline←v12888 */  ) = 0;
SOURCE(6087, 26)
   (* (( (ptr) &var←c69156)+23)/* curTraj←v12916 */  ) = 0;
SOURCE(6115, 30)
   (* (( (ptr) &var←c69156)+24)/* curSeg←v12944 */  ) = 0;
SOURCE(6147, 15)
   (* (( (ptr) &var←c69156)+25) ) = (*  (ptr) &fc131 );
   (* (( (ptr) &var←c69156)+26) ) = (*  (ptr) &fc131 );
SOURCE(6164, 23)
   (* (( (ptr) &var←c69156)+27) ) = (*  (ptr) &fc131 );
   (* (( (ptr) &var←c69156)+28) ) = (*  (ptr) &fc131 );
SOURCE(8282, 60)
   {
      word pd141;
      pd141 = (* (( (ptr) (* (( (ptr) gf←c69188)+153)/* var←c66244 */  ))+6) );
      (void) ( *( (fPt) ((*  (ptr) pd141 ))))(path←v7340, (* (( (ptr) &var←c69156)+5)/* m←v7368 */  ), (word) (( (bPt) &var←c69156)+64)
         /* var←c66084 */ , (word) (( (bPt) &var←c69156)+56)/* var←c66052 */ , (word) (( (bPt) &var←c69156)+48)/* var←c66020 */ , (word) (
            ( (bPt) &var←c69156)+40)/* var←c65988 */ 
         , (word) (( (bPt) &var←c69156)+32)/* var←c65956 */ , 0, pd141);
      };
SOURCE(8344, 8)
   (void) Finish←P2664((word) ((( (bPt) &var←c69156)+80)/* var←c66148 */ ));
SOURCE(8354, 32)
   {
      word pd142;
      pd142 = (* (( (ptr) (* (( (ptr) gf←c69188)+154)/* var←c66276 */  ))+68) );
      (void) ( *( (fPt) ((*  (ptr) pd142 ))))((* ((( (ptr) &var←c69156)+22)/* curOutline←v12888 */ ) ), pd142);
      };
SOURCE(8388, 19)
   return((* (( (ptr) &var←c69156)+22)/* curOutline←v12888 */  ));
   }

static void Finish←P2664(formal←c69252)
   word formal←c69252;
   {
   register ptr gf←c69220 =  (ptr) &globalframe;
   formal←c69252 = (formal←c69252 - 80);
   /* Finish: */ 
SOURCE(6189, 783)
SOURCE(6206, 766)
   if (((* (( (ptr) formal←c69252)+23) ) != 0)) {
SOURCE(6230, 595)
      if (((* (( (ptr) formal←c69252)+24) ) != 0)) {
SOURCE(6253, 404)
         if ((0 != (* (( (ptr) formal←c69252)+6) ))) {
SOURCE(6270, 328)
            if (XR←EqualWords((( (ptr) (* (( (ptr) formal←c69252)+24) ))+11), (( (ptr) formal←c69252)+27), 2)) {
SOURCE(6303, 47)
               {
                  word var←c66340;
                  word pd143;
                  pd143 = (* (( (ptr) (* (( (ptr) gf←c69220)+155)/* var←c66308 */  ))+6) );
                  var←c66340 = (word) ( *( (fPt) ((*  (ptr) pd143 ))))((* (( (ptr) formal←c69252)+23) ), 1, (* (( (ptr) formal←c69252)+24) ), 0, pd143)
                  ;
                  };
SOURCE(6352, 37)
               {
                  word pd144;
                  pd144 = (* (( (ptr) (* (( (ptr) gf←c69220)+155)/* var←c66308 */  ))+8) );
                  (void) ( *( (fPt) ((*  (ptr) pd144 ))))((* (( (ptr) formal←c69252)+23) ), 1, pd144);
                  };
               }
            else {
SOURCE(6400, 47)
               {
                  word var←c66372;
                  word pd145;
                  pd145 = (* (( (ptr) (* (( (ptr) gf←c69220)+155)/* var←c66308 */  ))+6) );
                  var←c66372 = (word) ( *( (fPt) ((*  (ptr) pd145 ))))((* (( (ptr) formal←c69252)+23) ), 1, (* (( (ptr) formal←c69252)+24) ), 0, pd145)
                  ;
                  };
SOURCE(6449, 55)
               {
                  word pd146;
                  pd146 = (* (( (ptr) (* (( (ptr) gf←c69220)+156)/* var←c66404 */  ))+5) );
                  (* (( (ptr) formal←c69252)+24) ) = (word) ( *( (fPt) ((*  (ptr) pd146 ))))((*  (W2Pt) (( (ptr) (* (( (ptr) formal←c69252)+24)
                         ))+11) ), (*  (W2Pt) (( (ptr) formal←c69252)+27) ), 0, pd146);
                  };
SOURCE(6506, 46)
               (void) SetSegProperties←P360((* (( (ptr) formal←c69252)+4) ), (* (( (ptr) formal←c69252)+5) ), (* (( (ptr) formal←c69252)+7)
                   ), (* (( (ptr) formal←c69252)+24) ));
SOURCE(6554, 44)
               {
                  word pd147;
                  pd147 = (* (( (ptr) (* (( (ptr) gf←c69220)+155)/* var←c66308 */  ))+7) );
                  (void) ( *( (fPt) ((*  (ptr) pd147 ))))((* (( (ptr) formal←c69252)+23) ), (* (( (ptr) formal←c69252)+24) ), 0, pd147);
                  };
               };
            }
         else {
SOURCE(6610, 47)
            {
               word var←c66436;
               word pd148;
               pd148 = (* (( (ptr) (* (( (ptr) gf←c69220)+155)/* var←c66308 */  ))+6) );
               var←c66436 = (word) ( *( (fPt) ((*  (ptr) pd148 ))))((* (( (ptr) formal←c69252)+23) ), 1, (* (( (ptr) formal←c69252)+24) ), 0, pd148)
               ;
               };
            };
         }
      else {
SOURCE(6733, 92)
         {
            word var←c66564;
            {
               word var←c66468;
               {
                  W2 var←c66500;
                  W2 var←c66532;
                  var←c66500.f0 = (* (( (ptr) formal←c69252)+25) );
                  var←c66500.f1 = (* (( (ptr) formal←c69252)+26) );
                  var←c66532.f0 = (* (( (ptr) formal←c69252)+25) );
                  var←c66532.f1 = (* (( (ptr) formal←c69252)+26) );
                  {
                     word pd149;
                     pd149 = (* (( (ptr) (* (( (ptr) gf←c69220)+156)/* var←c66404 */  ))+5) );
                     var←c66468 = (word) ( *( (fPt) ((*  (ptr) pd149 ))))(var←c66500, var←c66532, 0, pd149);
                     };
                  };
               {
                  word pd150;
                  pd150 = (* (( (ptr) (* (( (ptr) gf←c69220)+155)/* var←c66308 */  ))+6) );
                  var←c66564 = (word) ( *( (fPt) ((*  (ptr) pd150 ))))((* (( (ptr) formal←c69252)+23) ), 0, var←c66468, 0, pd150);
                  };
               };
            };
         };
SOURCE(6830, 12)
      (* (( (ptr) formal←c69252)+24) ) = 0;
SOURCE(6844, 113)
      if (((* (( (ptr) formal←c69252)+22) ) == 0)) {
SOURCE(6869, 56)
         {
            word pd151;
            pd151 = (* (( (ptr) (* (( (ptr) gf←c69220)+157)/* var←c66596 */  ))+5) );
            (* (( (ptr) formal←c69252)+22) ) = (word) ( *( (fPt) ((*  (ptr) pd151 ))))((* (( (ptr) formal←c69252)+23) ), 0, pd151);
            };
         }
      else {
SOURCE(6925, 32)
         (void) AppendChild←P2724((* (( (ptr) formal←c69252)+22) ), (* (( (ptr) formal←c69252)+23) ), (word) (( (bPt) formal←c69252)+72)
            );
         };
SOURCE(6959, 13)
      (* (( (ptr) formal←c69252)+23) ) = 0;
      };
   }

static void AppendChild←P2724(outline←v13288, child←v13316, formal←c69316)
   word outline←v13288;
   word child←v13316;
   word formal←c69316;
   {
   register ptr gf←c69284 =  (ptr) &globalframe;
   word holyData←v13784;
   formal←c69316 = (formal←c69316 - 72);
   /* AppendChild: */ 
SOURCE(6980, 243)
SOURCE(7033, 54)
   holyData←v13784 = XR←Narrow((* (( (ptr) outline←v13288)+1) ), (* (( (ptr) gf←c69284)+19) ));
SOURCE(7089, 77)
   {
      word var←c66628;
      {
         word var←c66660;
         word var←c66692;
         var←c66660 = XR←NewObject(8, (* (( (ptr) gf←c69284)+18) ));
         var←c66692 = var←c66660;
         (*  (ptr) var←c66692 ) = child←v13316;
         var←c66628 = var←c66660;
         };
      {
         word pd152;
         pd152 = (* (( (ptr) (* (( (ptr) gf←c69284)+158)/* var←c66724 */  ))+22) );
         (* (( (ptr) holyData←v13784)+4) ) = (word) ( *( (fPt) ((*  (ptr) pd152 ))))((* (( (ptr) holyData←v13784)+4) ), var←c66628, pd152)
         ;
         };
      };
SOURCE(7168, 22)
   (* (( (ptr) child←v13316)+2) ) = outline←v13288;
SOURCE(7192, 31)
   {
      word pd153;
      pd153 = (* (( (ptr) (* (( (ptr) gf←c69284)+155)/* var←c66308 */  ))+15) );
      (void) ( *( (fPt) ((*  (ptr) pd153 ))))(child←v13316, 1, pd153);
      };
   }

static void Move←P2784(p←v13376, formal←c69380)
   W2 p←v13376;
   word formal←c69380;
   {
   register ptr gf←c69348 =  (ptr) &globalframe;
   formal←c69380 = (formal←c69380 - 64);
   /* Move: */ 
SOURCE(7228, 94)
SOURCE(7252, 8)
   (void) Finish←P2664((word) ((( (bPt) formal←c69380)+80)));
SOURCE(7262, 39)
   {
      W2 var←c66756;
      var←c66756.f0 = p←v13376.f0;
      var←c66756.f1 = p←v13376.f1;
      {
         word pd154;
         pd154 = (* (( (ptr) (* (( (ptr) gf←c69348)+155)/* var←c66308 */  ))+4) );
         (* (( (ptr) formal←c69380)+23) ) = (word) ( *( (fPt) ((*  (ptr) pd154 ))))(var←c66756, pd154);
         };
      };
SOURCE(7303, 19)
   (*  (W2Pt) (( (ptr) formal←c69380)+27) ) = p←v13376;
   (*  (W2Pt) (( (ptr) formal←c69380)+25) ) = p←v13376;
   }

static void Line←P2844(p1←v13436, formal←c69444)
   W2 p1←v13436;
   word formal←c69444;
   {
   register ptr gf←c69412 =  (ptr) &globalframe;
   formal←c69444 = (formal←c69444 - 56);
   /* Line: */ 
SOURCE(7327, 212)
SOURCE(7352, 68)
   if (((* (( (ptr) formal←c69444)+24) ) != 0)) {
SOURCE(7373, 47)
      {
         word var←c66820;
         word pd155;
         pd155 = (* (( (ptr) (* (( (ptr) gf←c69412)+155)/* var←c66308 */  ))+6) );
         var←c66820 = (word) ( *( (fPt) ((*  (ptr) pd155 ))))((* (( (ptr) formal←c69444)+23) ), 1, (* (( (ptr) formal←c69444)+24) ), 0, pd155)
         ;
         };
      };
SOURCE(7422, 60)
   {
      W2 var←c66852;
      W2 var←c66884;
      var←c66852.f0 = (* (( (ptr) formal←c69444)+25) );
      var←c66852.f1 = (* (( (ptr) formal←c69444)+26) );
      var←c66884.f0 = p1←v13436.f0;
      var←c66884.f1 = p1←v13436.f1;
      {
         word pd156;
         pd156 = (* (( (ptr) (* (( (ptr) gf←c69412)+156)/* var←c66404 */  ))+5) );
         (* (( (ptr) formal←c69444)+24) ) = (word) ( *( (fPt) ((*  (ptr) pd156 ))))(var←c66852, var←c66884, 0, pd156);
         };
      };
SOURCE(7484, 46)
   (void) SetSegProperties←P360((* (( (ptr) formal←c69444)+4) ), (* (( (ptr) formal←c69444)+5) ), (* (( (ptr) formal←c69444)+7)
       ), (* (( (ptr) formal←c69444)+24) ));
SOURCE(7532, 7)
   (*  (W2Pt) (( (ptr) formal←c69444)+25) ) = p1←v13436;
   }

static void Curve←P2904(p1←v13496, p2←v13524, p3←v13552, formal←c69508)
   W2 p1←v13496;
   W2 p2←v13524;
   W2 p3←v13552;
   word formal←c69508;
   {
   register ptr gf←c69476 =  (ptr) &globalframe;
   formal←c69508 = (formal←c69508 - 48);
   /* Curve: */ 
SOURCE(7544, 251)
SOURCE(7578, 68)
   if (((* (( (ptr) formal←c69508)+24) ) != 0)) {
SOURCE(7599, 47)
      {
         word var←c66916;
         word pd157;
         pd157 = (* (( (ptr) (* (( (ptr) gf←c69476)+155)/* var←c66308 */  ))+6) );
         var←c66916 = (word) ( *( (fPt) ((*  (ptr) pd157 ))))((* (( (ptr) formal←c69508)+23) ), 1, (* (( (ptr) formal←c69508)+24) ), 0, pd157)
         ;
         };
      };
SOURCE(7648, 90)
   {
      W2 var←c66948;
      W2 var←c66980;
      W2 var←c67012;
      W2 var←c67044;
      var←c66948.f0 = (* (( (ptr) formal←c69508)+25) );
      var←c66948.f1 = (* (( (ptr) formal←c69508)+26) );
      var←c66980.f0 = p1←v13496.f0;
      var←c66980.f1 = p1←v13496.f1;
      var←c67012.f0 = p2←v13524.f0;
      var←c67012.f1 = p2←v13524.f1;
      var←c67044.f0 = p3←v13552.f0;
      var←c67044.f1 = p3←v13552.f1;
      {
         word pd158;
         pd158 = (* (( (ptr) (* (( (ptr) gf←c69476)+156)/* var←c66404 */  ))+6) );
         (* (( (ptr) formal←c69508)+24) ) = (word) ( *( (fPt) ((*  (ptr) pd158 ))))(var←c66948, var←c66980, var←c67012, var←c67044, 0, pd158)
         ;
         };
      };
SOURCE(7740, 46)
   (void) SetSegProperties←P360((* (( (ptr) formal←c69508)+4) ), (* (( (ptr) formal←c69508)+5) ), (* (( (ptr) formal←c69508)+7)
       ), (* (( (ptr) formal←c69508)+24) ));
SOURCE(7788, 7)
   (*  (W2Pt) (( (ptr) formal←c69508)+25) ) = p3←v13552;
   }

static void Conic←P2964(p1←v13612, p2←v13640, r←v13668, formal←c69572)
   W2 p1←v13612;
   W2 p2←v13640;
   word r←v13668;
   word formal←c69572;
   {
   register ptr gf←c69540 =  (ptr) &globalframe;
   formal←c69572 = (formal←c69572 - 40);
   /* Conic: */ 
SOURCE(7800, 244)
SOURCE(7839, 68)
   if (((* (( (ptr) formal←c69572)+24) ) != 0)) {
SOURCE(7860, 47)
      {
         word var←c67076;
         word pd159;
         pd159 = (* (( (ptr) (* (( (ptr) gf←c69540)+155)/* var←c66308 */  ))+6) );
         var←c67076 = (word) ( *( (fPt) ((*  (ptr) pd159 ))))((* (( (ptr) formal←c69572)+23) ), 1, (* (( (ptr) formal←c69572)+24) ), 0, pd159)
         ;
         };
      };
SOURCE(7909, 78)
   {
      W2 var←c67108;
      W2 var←c67140;
      W2 var←c67172;
      var←c67108.f0 = (* (( (ptr) formal←c69572)+25) );
      var←c67108.f1 = (* (( (ptr) formal←c69572)+26) );
      var←c67140.f0 = p1←v13612.f0;
      var←c67140.f1 = p1←v13612.f1;
      var←c67172.f0 = p2←v13640.f0;
      var←c67172.f1 = p2←v13640.f1;
      {
         word pd160;
         pd160 = (* (( (ptr) (* (( (ptr) gf←c69540)+156)/* var←c66404 */  ))+7) );
         (* (( (ptr) formal←c69572)+24) ) = (word) ( *( (fPt) ((*  (ptr) pd160 ))))(var←c67108, var←c67140, var←c67172, r←v13668, 0, pd160)
         ;
         };
      };
SOURCE(7989, 46)
   (void) SetSegProperties←P360((* (( (ptr) formal←c69572)+4) ), (* (( (ptr) formal←c69572)+5) ), (* (( (ptr) formal←c69572)+7)
       ), (* (( (ptr) formal←c69572)+24) ));
SOURCE(8037, 7)
   (*  (W2Pt) (( (ptr) formal←c69572)+25) ) = p2←v13640;
   }

static void Arc←P3024(p1←v13728, p2←v13756, formal←c69636)
   W2 p1←v13728;
   W2 p2←v13756;
   word formal←c69636;
   {
   register ptr gf←c69604 =  (ptr) &globalframe;
   formal←c69636 = (formal←c69636 - 32);
   /* Arc: */ 
SOURCE(8049, 228)
SOURCE(8077, 68)
   if (((* (( (ptr) formal←c69636)+24) ) != 0)) {
SOURCE(8098, 47)
      {
         word var←c67204;
         word pd161;
         pd161 = (* (( (ptr) (* (( (ptr) gf←c69604)+155)/* var←c66308 */  ))+6) );
         var←c67204 = (word) ( *( (fPt) ((*  (ptr) pd161 ))))((* (( (ptr) formal←c69636)+23) ), 1, (* (( (ptr) formal←c69636)+24) ), 0, pd161)
         ;
         };
      };
SOURCE(8147, 73)
   {
      W2 var←c67236;
      W2 var←c67268;
      W2 var←c67300;
      var←c67236.f0 = (* (( (ptr) formal←c69636)+25) );
      var←c67236.f1 = (* (( (ptr) formal←c69636)+26) );
      var←c67268.f0 = p1←v13728.f0;
      var←c67268.f1 = p1←v13728.f1;
      var←c67300.f0 = p2←v13756.f0;
      var←c67300.f1 = p2←v13756.f1;
      {
         word pd162;
         pd162 = (* (( (ptr) (* (( (ptr) gf←c69604)+156)/* var←c66404 */  ))+8) );
         (* (( (ptr) formal←c69636)+24) ) = (word) ( *( (fPt) ((*  (ptr) pd162 ))))(var←c67236, var←c67268, var←c67300, 0, pd162);
         };
      };
SOURCE(8222, 46)
   (void) SetSegProperties←P360((* (( (ptr) formal←c69636)+4) ), (* (( (ptr) formal←c69636)+5) ), (* (( (ptr) formal←c69636)+7)
       ), (* (( (ptr) formal←c69636)+24) ));
SOURCE(8270, 7)
   (*  (W2Pt) (( (ptr) formal←c69636)+25) ) = p2←v13756;
   }

static void MyShow←P480(context←v7528, string←v7556, xrel←v7584)
   word context←v7528;
   word string←v7556;
   word xrel←v7584;
   {
   /* MyShow: */ 
SOURCE(8413, 121)
SOURCE(8481, 53)
   {
      word var←c67332;
      var←c67332 = (word) RopeFromXStringProc←P240(string←v7556);
      (void) MyShowAux←P600(context←v7528, var←c67332, xrel←v7584);
      };
   }

static void MyShowText←P540(context←v7644, text←v7672, start←v7700, len←v7728, xrel←v7756)
   word context←v7644;
   word text←v7672;
   word start←v7700;
   word len←v7728;
   word xrel←v7756;
   {
   register ptr gf←c69668 =  (ptr) &globalframe;
   word rope←v13828;
   /* MyShowText: */ 
SOURCE(8540, 273)
SOURCE(8634, 147)
   {
      word tc163;
      word pd164;
      word pd165;
      if ((len←v7728 == 2147483647)) {
         pd164 = (* (( (ptr) (* (( (ptr) gf←c69668)+148)/* var←c65476 */  ))+35) );
         tc163 =  (word) ( *( (fPt) ((*  (ptr) pd164 ))))(text←v7672, BCK(start←v7700, 32768), 32767, pd164);
         }
      else {
         pd165 = (* (( (ptr) (* (( (ptr) gf←c69668)+148)/* var←c65476 */  ))+35) );
         tc163 =  (word) ( *( (fPt) ((*  (ptr) pd165 ))))(text←v7672, BCK(start←v7700, 32768), BCK(len←v7728, 32768), pd165);
         };
      rope←v13828 = tc163;
      };
SOURCE(8783, 30)
   (void) MyShowAux←P600(context←v7644, rope←v13828, xrel←v7756);
   }

static void MyShowAux←P600(context←v7828, rope←v7856, xrel←v7884)
   word context←v7828;
   word rope←v7856;
   word xrel←v7884;
   {
   W8 var←c69700;
   register ptr gf←c69732 =  (ptr) &globalframe;
   word font←v13872;
   W2 escapement←v13900;
   word camera←v13928;
   /* MyShowAux: */ 
SOURCE(8819, 1343)
SOURCE(8913, 54)
   {
      word pd166;
      pd166 = (* (( (ptr) (*  (ptr) context←v7828 ))+12) );
      font←v13872 = (word) ( *( (fPt) ((*  (ptr) pd166 ))))(context←v7828, pd166);
      };
SOURCE(8969, 55)
   {
      word pd167;
      pd167 = (* (( (ptr) (* (( (ptr) gf←c69732)+159)/* var←c67364 */  ))+25) );
      (void) ( *( (fPt) ((*  (ptr) pd167 ))))((word) &escapement←v13900, font←v13872, rope←v7856, 0, 2147483647, (*  (ptr) &fc97 ), pd167)
      ;
      };
SOURCE(9026, 50)
   camera←v13928 = (* (( (ptr) XR←Narrow((* (( (ptr) context←v7828)+2) ), (* (( (ptr) gf←c69732)+13) )))+1) );
SOURCE(9078, 1033)
   if (( (int)(* (( (ptr) (* (( (ptr) context←v7828)+1) ))+19) ) ==  (int)0)) {
SOURCE(9113, 1000)
      {
         word textSlice←v13972 = 0;
         word data←v14000;
         word amplifySpace←v14028;
         word color←v14056;
         word currentT←v14084;
         W2 currentPoint←v14112;
         word fontName←v14140;
         /* declaration of fontData←v14168 skipped */ 
SOURCE(9146, 33)
         data←v14000 = XR←Narrow((* (( (ptr) context←v7828)+2) ), (* (( (ptr) gf←c69732)+13) ));
SOURCE(9181, 67)
         {
            word pd168;
            pd168 = (* (( (ptr) (* (( (ptr) gf←c69732)+160)/* var←c67396 */  ))+9) );
            amplifySpace←v14028 = (word) ( *( (fPt) ((*  (ptr) pd168 ))))(context←v7828, 10, pd168);
            };
SOURCE(9250, 53)
         {
            word pd169;
            pd169 = (* (( (ptr) (*  (ptr) context←v7828 ))+13) );
            color←v14056 = (word) ( *( (fPt) ((*  (ptr) pd169 ))))(context←v7828, pd169);
            };
SOURCE(9305, 54)
         {
            word pd170;
            pd170 = (* (( (ptr) (*  (ptr) context←v7828 ))+11) );
            currentT←v14084 = (word) ( *( (fPt) ((*  (ptr) pd170 ))))(context←v7828, pd170);
            };
SOURCE(9361, 57)
         {
            word pd171;
            pd171 = (* (( (ptr) (*  (ptr) context←v7828 ))+22) );
            (void) ( *( (fPt) ((*  (ptr) pd171 ))))((word) &currentPoint←v14112, context←v7828, 0, pd171);
            };
SOURCE(9420, 43)
         {
            word pd172;
            pd172 = (* (( (ptr) (* (( (ptr) gf←c69732)+159)/* var←c67364 */  ))+19) );
            fontName←v14140 = (word) ( *( (fPt) ((*  (ptr) pd172 ))))(font←v13872, pd172);
            };
SOURCE(9465, 51)
         {
            word pd173;
            pd173 = (* (( (ptr) (* (( (ptr) gf←c69732)+161)/* var←c67428 */  ))+6) );
            var←c69700.f4/* fontData←v14168 */  = (word) ( *( (fPt) ((*  (ptr) pd173 ))))(pd173);
            };
SOURCE(9545, 137)
SOURCE(9545, 137)
         {
            word pd175;
            if ((fontName←v14140 != 0)) {
               {
                  /* declaration of var←c67460 skipped */ 
                  {
                     word pd174;
                     pd174 = (* (( (ptr) (* (( (ptr) gf←c69732)+147)/* var←c65348 */  ))+33) );
                     var←c69700.f5/* var←c67460 */  = (word) ( *( (fPt) ((*  (ptr) pd174 ))))(fontName←v14140, 0, pd174);
                     };
                  {
                     /* declaration of var←c04 skipped */ 
                     var←c69700.f6/* var←c04 */  = (* (( (ptr) (* (( (ptr) gf←c69732)+161)/* var←c67428 */  ))+9) );
                     {
                        /* declaration of var←c05 skipped */ 
                        {
                           word var←c06;
                           {
/*1*/   word var←c0523;
/*1*/   var←c0523 = (word) &var←c69700;
/*1*/   var←c06 = (word) XR←Enable(( ((word)  (fPt) NoName←Q3972) ), ( ((word)  (fPt) NoName←Q4032) ), var←c0523);
/*1*/   };
                           if ((var←c06 == 3)) {
/*1*/   goto lab←L100009;
/*1*/   };
                           };
                        var←c69700.f4/* fontData←v14168 */  = var←c69700.f7/* var←c05 */ ;
                        };
                     };
                  };
               }
            else {
               pd175 = (* (( (ptr) (* (( (ptr) gf←c69732)+161)/* var←c67428 */  ))+10) );
               var←c69700.f4/* fontData←v14168 */  = (word) ( *( (fPt) ((*  (ptr) pd175 ))))(font←v13872, pd175);
               };
            };
         lab←L100009: ;
SOURCE(9737, 106)
         {
            word var←c67492;
            word var←c67524;
            {
               word pd176;
               pd176 = (* (( (ptr) (* (( (ptr) gf←c69732)+142)/* var←c64900 */  ))+7) );
               var←c67492 = (word) ( *( (fPt) ((*  (ptr) pd176 ))))((* ((( (ptr) var←c69700.f4/* fontData←v14168 */ )+7)) ), pd176);
               };
            {
               word pd177;
               pd177 = (* (( (ptr) (* (( (ptr) gf←c69732)+142)/* var←c64900 */  ))+10) );
               var←c67524 = (word) ( *( (fPt) ((*  (ptr) pd177 ))))(currentPoint←v14112, pd177);
               };
            {
               word pd178;
               pd178 = (* (( (ptr) (* (( (ptr) gf←c69732)+142)/* var←c64900 */  ))+14) );
               (* (( (ptr) var←c69700.f4/* fontData←v14168 */ )+5) ) = (word) ( *( (fPt) ((*  (ptr) pd178 ))))(var←c67492, (*  (ptr) font←v13872 ), var←c67524, currentT←v14084, pd178)
               ;
               };
            };
SOURCE(9845, 28)
         (* (( (ptr) var←c69700.f4/* fontData←v14168 */ )+13) ) = 1;
SOURCE(9916, 81)
         {
            W2 var←c67556;
            var←c67556.f0 = (*  (ptr) &fc131 );
            var←c67556.f1 = (*  (ptr) &fc131 );
            {
               word pd179;
               pd179 = (* (( (ptr) (* (( (ptr) gf←c69732)+154)/* var←c66276 */  ))+20) );
               textSlice←v13972 = (word) ( *( (fPt) ((*  (ptr) pd179 ))))(rope←v7856, color←v14056, (* (( (ptr) camera←v13928)+1) ), amplifySpace←v14028, 0, var←c67556
                  , (*  (ptr) (* (( (ptr) (* (( (ptr) gf←c69732)+145)/* var←c65092 */  ))+54) ) ), pd179);
               };
            };
SOURCE(9999, 67)
         {
            word var←c67588;
            word pd180;
            pd180 = (* (( (ptr) (* (( (ptr) gf←c69732)+154)/* var←c66276 */  ))+22) );
            var←c67588 = (word) ( *( (fPt) ((*  (ptr) pd180 ))))(textSlice←v13972, var←c69700.f4/* fontData←v14168 */ , 0, 0, pd180);
            };
SOURCE(10068, 43)
         {
            word pd181;
            pd181 = (* (( (ptr) (* (( (ptr) gf←c69732)+144)/* var←c65028 */  ))+9) );
            (void) ( *( (fPt) ((*  (ptr) pd181 ))))((*  (ptr) data←v14000 ), textSlice←v13972,  (word) -1, pd181);
            };
         };
      };
SOURCE(10116, 46)
   {
      word pd182;
      pd182 = (* (( (ptr) (* (( (ptr) gf←c69732)+143)/* var←c64964 */  ))+28) );
      (void) ( *( (fPt) ((*  (ptr) pd182 ))))(context←v7828, escapement←v13900, pd182);
      };
   }

static word NoName←Q3972(formal←c0485)
   word formal←c0485;
   {
SOURCE(9545, 137)
   {
      word pd183;
      pd183 = (* (( (ptr) formal←c0485)+6) );
      (* (( (ptr) formal←c0485)+7) ) = (word) ( *( (fPt) ((*  (ptr) pd183 ))))((* (( (ptr) formal←c0485)+4) ), (* (( (ptr) formal←c0485)+5)
          ), 1, 0, 0, 0
         , 0, 0, 0, 0, pd183);
      };
   return(0);
   }

static void MySetSampledColor←P660(context←v7944, pa←v7972, m←v8000, colorOperator←v8028)
   word context←v7944;
   word pa←v7972;
   word m←v8000;
   word colorOperator←v8028;
   {
   register ptr gf←c69764 =  (ptr) &globalframe;
   /* MySetSampledColor: */ 
SOURCE(10168, 182)
SOURCE(10287, 63)
   {
      word pd184;
      pd184 = (* (( (ptr) (* (( (ptr) gf←c69764)+143)/* var←c64964 */  ))+40) );
      (void) ( *( (fPt) ((*  (ptr) pd184 ))))(context←v7944, pa←v7972, m←v8000, colorOperator←v8028, pd184);
      };
   }

static void MySetSampledBlack←P720(context←v8088, pa←v8116, m←v8144, clear←v8172)
   word context←v8088;
   word pa←v8116;
   word m←v8144;
   word clear←v8172;
   {
   register ptr gf←c69796 =  (ptr) &globalframe;
   /* MySetSampledBlack: */ 
SOURCE(10356, 157)
SOURCE(10458, 55)
   {
      word pd185;
      pd185 = (* (( (ptr) (* (( (ptr) gf←c69796)+143)/* var←c64964 */  ))+41) );
      (void) ( *( (fPt) ((*  (ptr) pd185 ))))(context←v8088, pa←v8116, m←v8144, clear←v8172, pd185);
      };
   }

static void MyShowBackward←P780(context←v8232, string←v8260)
   word context←v8232;
   word string←v8260;
   {
   register ptr gf←c69828 =  (ptr) &globalframe;
   /* MyShowBackward: */ 
SOURCE(10519, 143)
SOURCE(10583, 79)
   {
      W3 var←c0236;
      (*  (ptr) (word) &var←c0236 ) = context←v8232;
      (* (( (ptr) (word) &var←c0236) + 1) ) = (* (( (ptr) gf←c69828)+35) );
      (* (( (ptr) (word) &var←c0236) + 2) ) = (* (( (ptr) gf←c69828)+36) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c69828)+260)/* var←c63652 */ , 0, (word) &var←c0236));
      };
   }

static void MyMaskFill←P840(context←v8320, path←v8348, oddWrap←v8376)
   word context←v8320;
   word path←v8348;
   word oddWrap←v8376;
   {
   register ptr gf←c69860 =  (ptr) &globalframe;
   word data←v14212;
   word state←v14240;
   /* MyMaskFill: */ 
SOURCE(10668, 769)
SOURCE(10738, 33)
   data←v14212 = XR←Narrow((* (( (ptr) context←v8320)+2) ), (* (( (ptr) gf←c69860)+13) ));
SOURCE(10773, 28)
   state←v14240 = (* (( (ptr) context←v8320)+1) );
SOURCE(10803, 73)
   if (((* (( (ptr) state←v14240)+1) ) != 0)) {
SOURCE(10848, 28)
      (void) ProcessStateChanges←P180(context←v8320);
      };
SOURCE(10878, 559)
   if (( (int)(* (( (ptr) (* (( (ptr) context←v8320)+1) ))+19) ) ==  (int)0)) {
SOURCE(10913, 526)
      {
         word outline←v14284 = 0;
SOURCE(10944, 212)
         {
            word pd186;
            pd186 = (* (( (ptr) (* (( (ptr) gf←c69860)+142)/* var←c64900 */  ))+54) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd186 ))))((* (( (ptr) state←v14240)+33) ), (* (( (ptr) gf←c69860)+4)/* identity←v5520 */  ), (*  (ptr) &fc187 ), pd186)
            )) {
SOURCE(11017, 64)
               outline←v14284 = (word) OutlineFromPath←P420(context←v8320, path←v8348, 0, 1, 0);
               }
            else {
SOURCE(11081, 75)
               outline←v14284 = (word) OutlineFromPath←P420(context←v8320, path←v8348, (* (( (ptr) state←v14240)+33) ), 1, 0);
               };
            };
SOURCE(11158, 28)
         if ((outline←v14284 == 0)) {
SOURCE(11180, 6)
            return;
            };
SOURCE(11244, 39)
         {
            word pd188;
            pd188 = (* (( (ptr) (* (( (ptr) gf←c69860)+157)/* var←c66596 */  ))+10) );
            (void) ( *( (fPt) ((*  (ptr) pd188 ))))(outline←v14284, oddWrap←v8376, pd188);
            };
SOURCE(11285, 82)
         {
            word var←c67620;
            {
               word pd189;
               pd189 = (* (( (ptr) (* (( (ptr) gf←c69860)+162)/* var←c67652 */  ))+38) );
               var←c67620 = (word) ( *( (fPt) ((*  (ptr) pd189 ))))((* ((( (ptr) state←v14240)+36)) ), pd189);
               };
            {
               word pd190;
               pd190 = (* (( (ptr) (* (( (ptr) gf←c69860)+163)/* var←c67684 */  ))+61) );
               (void) ( *( (fPt) ((*  (ptr) pd190 ))))(outline←v14284, 0, var←c67620, (* (( (ptr) gf←c69860)+37) ), 0, pd190);
               };
            };
SOURCE(11369, 41)
         {
            word pd191;
            pd191 = (* (( (ptr) (* (( (ptr) gf←c69860)+144)/* var←c65028 */  ))+9) );
            (void) ( *( (fPt) ((*  (ptr) pd191 ))))((*  (ptr) data←v14212 ), outline←v14284,  (word) -1, pd191);
            };
SOURCE(11412, 25)
         (* (( (ptr) data←v14212)+2) ) = outline←v14284;
         };
      };
   }

static void ReplaceChild←P900(outline←v8436, oldChild←v8464, newChild←v8492)
   word outline←v8436;
   word oldChild←v8464;
   word newChild←v8492;
   {
   register ptr gf←c69892 =  (ptr) &globalframe;
   word outlineData←v14328;
   word beforeEnt←v14356 = 0;
   word ent←v14384 = 0;
   word afterEnt←v14412 = 0;
   word found←v14440 = 0;
   /* ReplaceChild: */ 
SOURCE(11446, 529)
SOURCE(11513, 57)
   outlineData←v14328 = XR←Narrow((* (( (ptr) outline←v8436)+1) ), (* (( (ptr) gf←c69892)+19) ));
SOURCE(11634, 99)
   {
      W4 var←c67716;
      {
         word pd192;
         pd192 = (* (( (ptr) (* (( (ptr) gf←c69892)+158)/* var←c66724 */  ))+24) );
         (void) ( *( (fPt) ((*  (ptr) pd192 ))))((word) &var←c67716, oldChild←v8464, (* (( (ptr) outlineData←v14328)+4) ), pd192);
         };
      found←v14440 = var←c67716.f3;
      afterEnt←v14412 = var←c67716.f2;
      ent←v14384 = var←c67716.f1;
      beforeEnt←v14356 = var←c67716.f0;
      };
SOURCE(11735, 18)
   if ((0 == found←v14440)) {
SOURCE(11753, 5)
      (void) XR←RaiseUnnamedError();
      };
SOURCE(11760, 125)
   if ((beforeEnt←v14356 == 0)) {
SOURCE(11786, 47)
      {
         word var←c67748;
         var←c67748 = XR←NewObject(8, (* (( (ptr) gf←c69892)+18) ));
         (*  (ptr) var←c67748 ) = newChild←v8492;
         (* (( (ptr) var←c67748)+1) ) = afterEnt←v14412;
         (* (( (ptr) outlineData←v14328)+4) ) = var←c67748;
         };
      }
   else {
SOURCE(11844, 41)
      {
         word var←c67780;
         var←c67780 = XR←NewObject(8, (* (( (ptr) gf←c69892)+18) ));
         (*  (ptr) var←c67780 ) = newChild←v8492;
         (* (( (ptr) var←c67780)+1) ) = afterEnt←v14412;
         (* (( (ptr) beforeEnt←v14356)+1) ) = var←c67780;
         };
      };
SOURCE(11890, 25)
   (* (( (ptr) newChild←v8492)+2) ) = outline←v8436;
SOURCE(11917, 58)
   {
      word var←c67812;
      {
         word pd193;
         pd193 = (* (( (ptr) (* (( (ptr) gf←c69892)+155)/* var←c66308 */  ))+16) );
         var←c67812 = (word) ( *( (fPt) ((*  (ptr) pd193 ))))(oldChild←v8464, pd193);
         };
      {
         word pd194;
         pd194 = (* (( (ptr) (* (( (ptr) gf←c69892)+155)/* var←c66308 */  ))+15) );
         (void) ( *( (fPt) ((*  (ptr) pd194 ))))(newChild←v8492, var←c67812, pd194);
         };
      };
   }

static void MyMaskStroke←P960(context←v8552, path←v8580, closed←v8608)
   word context←v8552;
   word path←v8580;
   word closed←v8608;
   {
   register ptr gf←c69924 =  (ptr) &globalframe;
   word outline←v14568 = 0;
   word strokeJoint←v14596;
   word data←v14624;
   word state←v14652;
   /* MyMaskStroke: */ 
SOURCE(12062, 1264)
SOURCE(12188, 33)
   data←v14624 = XR←Narrow((* (( (ptr) context←v8552)+2) ), (* (( (ptr) gf←c69924)+13) ));
SOURCE(12223, 28)
   state←v14652 = (* (( (ptr) context←v8552)+1) );
SOURCE(12253, 73)
   if (((* (( (ptr) state←v14652)+1) ) != 0)) {
SOURCE(12298, 28)
      (void) ProcessStateChanges←P180(context←v8552);
      };
SOURCE(12328, 998)
   if (( (int)(* (( (ptr) (* (( (ptr) context←v8552)+1) ))+19) ) ==  (int)0)) {
SOURCE(12363, 968)
      {
         word trajs←v14696 = 0;
         word oldTraj←v14724 = 0;
SOURCE(12403, 202)
         {
            word pd195;
            pd195 = (* (( (ptr) (* (( (ptr) gf←c69924)+142)/* var←c64900 */  ))+54) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd195 ))))((* (( (ptr) state←v14652)+33) ), (* (( (ptr) gf←c69924)+4)/* identity←v5520 */  ), (*  (ptr) &fc187 ), pd195)
            )) {
SOURCE(12476, 59)
               outline←v14568 = (word) OutlineFromPath←P420(context←v8552, path←v8580, 0, closed←v8608, 1);
               }
            else {
SOURCE(12535, 70)
               outline←v14568 = (word) OutlineFromPath←P420(context←v8552, path←v8580, (* (( (ptr) state←v14652)+33) ), closed←v8608, 1)
               ;
               };
            };
SOURCE(12607, 48)
         {
            word pd196;
            pd196 = (* (( (ptr) (* (( (ptr) gf←c69924)+157)/* var←c66596 */  ))+20) );
            trajs←v14696 = (word) ( *( (fPt) ((*  (ptr) pd196 ))))(outline←v14568, pd196);
            };
SOURCE(12657, 199)
         if ( ( ((* (( (ptr) trajs←v14696)+1) ) == 0) ? ((* (( (ptr) data←v14624)+2) ) != 0) : 0 ) ) {
SOURCE(12708, 150)
            {
               word oldTrajs←v14852;
SOURCE(12710, 10)
               {
                  word pd197;
                  pd197 = (* (( (ptr) (* (( (ptr) gf←c69924)+157)/* var←c66596 */  ))+18) );
                  oldTrajs←v14852 = (word) ( *( (fPt) ((*  (ptr) pd197 ))))((*  (ptr) trajs←v14696 ), (* (( (ptr) data←v14624)+2) ), pd197)
                  ;
                  };
SOURCE(12800, 56)
               if ((oldTrajs←v14852 == 0)) {
                  oldTraj←v14724 = 0;
                  }
               else {
                  oldTraj←v14724 = (*  (ptr) oldTrajs←v14852 );
                  };
               };
            };
SOURCE(12861, 52)
         {
            word idx198;
            strokeJoint←v14596 = (
               idx198 = (* (( (ptr) (* (( (ptr) context←v8552)+1) ))+22) ),
               BCK(idx198, 16)
               );
            };
SOURCE(12915, 411)
         if ((oldTraj←v14724 == 0)) {
SOURCE(12939, 53)
            {
               word pd199;
               pd199 = (* (( (ptr) (* (( (ptr) gf←c69924)+163)/* var←c67684 */  ))+61) );
               (void) ( *( (fPt) ((*  (ptr) pd199 ))))(outline←v14568, 0, 0, (* (( (ptr) gf←c69924)+37) ), 0, pd199);
               };
SOURCE(13011, 100)
            {
               word var←c67844;
               {
                  word pd200;
                  pd200 = (* (( (ptr) (* (( (ptr) gf←c69924)+163)/* var←c67684 */  ))+29) );
                  var←c67844 = (* (( (ptr) ( *( (fPt) ((*  (ptr) pd200 ))))(outline←v14568, 0, 6, pd200))+1) );
                  };
               {
                  word pd201;
                  pd201 = (* (( (ptr) (* (( (ptr) gf←c69924)+163)/* var←c67684 */  ))+57) );
                  (void) ( *( (fPt) ((*  (ptr) pd201 ))))(outline←v14568, var←c67844, strokeJoint←v14596, 0, pd201);
                  };
               };
SOURCE(13113, 41)
            {
               word pd202;
               pd202 = (* (( (ptr) (* (( (ptr) gf←c69924)+144)/* var←c65028 */  ))+9) );
               (void) ( *( (fPt) ((*  (ptr) pd202 ))))((*  (ptr) data←v14624 ), outline←v14568,  (word) -1, pd202);
               };
            }
         else {
SOURCE(13165, 51)
            (void) ReplaceChild←P900((* (( (ptr) data←v14624)+2) ), oldTraj←v14724, (*  (ptr) trajs←v14696 ));
SOURCE(13218, 108)
            {
               word var←c67876;
               {
                  word pd203;
                  pd203 = (* (( (ptr) (* (( (ptr) gf←c69924)+163)/* var←c67684 */  ))+29) );
                  var←c67876 = (* (( (ptr) ( *( (fPt) ((*  (ptr) pd203 ))))((*  (ptr) trajs←v14696 ), 0, 6, pd203))+1) );
                  };
               {
                  word pd204;
                  pd204 = (* (( (ptr) (* (( (ptr) gf←c69924)+163)/* var←c67684 */  ))+57) );
                  (void) ( *( (fPt) ((*  (ptr) pd204 ))))((*  (ptr) trajs←v14696 ), var←c67876, strokeJoint←v14596, 0, pd204);
                  };
               };
            };
         };
      };
   }

static void MyMaskDashedStroke←P1020(context←v8668, path←v8696, patternLen←v8724, pattern←v8752, offset←v8780, length←v8808)
   word context←v8668;
   word path←v8696;
   word patternLen←v8724;
   word pattern←v8752;
   word offset←v8780;
   word length←v8808;
   {
   register ptr gf←c69956 =  (ptr) &globalframe;
   word outline←v14980 = 0;
   word strokeJoint←v15008;
   word data←v15036;
   word state←v15064;
   word patternSeq←v15092;
   /* MyMaskDashedStroke: */ 
SOURCE(13338, 1139)
SOURCE(13531, 33)
   data←v15036 = XR←Narrow((* (( (ptr) context←v8668)+2) ), (* (( (ptr) gf←c69956)+13) ));
SOURCE(13566, 28)
   state←v15064 = (* (( (ptr) context←v8668)+1) );
SOURCE(13596, 63)
   {
      word var←c67908;
      word var←c67940;
      word var←c67972;
      var←c67908 = BCK(patternLen←v8724, 67108863);
      var←c67940 = ((word) var←c67908 << 2);
      var←c67972 = XR←NewObject((4 + var←c67940), (* (( (ptr) gf←c69956)+10) ));
      (*  (ptr) var←c67972 ) = var←c67908;
      patternSeq←v15092 = var←c67972;
      };
SOURCE(13661, 73)
   if (((* (( (ptr) state←v15064)+1) ) != 0)) {
SOURCE(13706, 28)
      (void) ProcessStateChanges←P180(context←v8668);
      };
SOURCE(13736, 741)
   if (( (int)(* (( (ptr) (* (( (ptr) context←v8668)+1) ))+19) ) ==  (int)0)) {
SOURCE(13771, 708)
      {
         word completeParts←v15136 = 0;
SOURCE(13800, 220)
         {
            word pd205;
            pd205 = (* (( (ptr) (* (( (ptr) gf←c69956)+142)/* var←c64900 */  ))+54) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd205 ))))((* (( (ptr) state←v15064)+33) ), (* (( (ptr) gf←c69956)+4)/* identity←v5520 */  ), (*  (ptr) &fc187 ), pd205)
            )) {
SOURCE(13873, 78)
               outline←v14980 = (word) OutlineFromPath←P420(context←v8668, path←v8696, 0, 0, 1);
               }
            else {
SOURCE(13951, 69)
               outline←v14980 = (word) OutlineFromPath←P420(context←v8668, path←v8696, (* (( (ptr) state←v15064)+33) ), 0, 1);
               };
            };
SOURCE(14022, 62)
         {
            word pd206;
            pd206 = (* (( (ptr) (* (( (ptr) gf←c69956)+163)/* var←c67684 */  ))+29) );
            completeParts←v15136 = (* (( (ptr) ( *( (fPt) ((*  (ptr) pd206 ))))(outline←v14980, 0, 6, pd206))+1) );
            };
SOURCE(14086, 53)
         {
            word pd207;
            pd207 = (* (( (ptr) (* (( (ptr) gf←c69956)+163)/* var←c67684 */  ))+61) );
            (void) ( *( (fPt) ((*  (ptr) pd207 ))))(outline←v14980, 0, 0, (* (( (ptr) gf←c69956)+37) ), 0, pd207);
            };
SOURCE(14158, 52)
         {
            word idx208;
            strokeJoint←v15008 = (
               idx208 = (* (( (ptr) (* (( (ptr) context←v8668)+1) ))+22) ),
               BCK(idx208, 16)
               );
            };
SOURCE(14212, 67)
         {
            word pd209;
            pd209 = (* (( (ptr) (* (( (ptr) gf←c69956)+163)/* var←c67684 */  ))+57) );
            (void) ( *( (fPt) ((*  (ptr) pd209 ))))(outline←v14980, completeParts←v15136, strokeJoint←v15008, 0, pd209);
            };
SOURCE(14281, 59)
         {
            register word i←v15180 = 0;
            register word noName←c68004;
            noName←c68004 = patternLen←v8724;
            if ((i←v15180 >= noName←c68004)) {
               goto lab←L100012;
               };
            lab←L100015: ;
SOURCE(14314, 26)
            {
               word var←c68036;
               var←c68036 = (word) ( *( (fPt) ((*  (ptr) pattern←v8752 ))))(i←v15180, pattern←v8752);
               {
                  word limit210;
                  (* ((( (ptr) patternSeq←v15092)+1)+(
                        limit210 = (*  (ptr) patternSeq←v15092 ),
                        BCK(i←v15180, limit210)
                        )) ) = var←c68036;
                  };
               };
            i←v15180 = (i←v15180 + 1);
            if ((i←v15180 < noName←c68004)) {
               goto lab←L100015;
               };
            lab←L100012: ;
            };
SOURCE(14351, 83)
         {
            word pd211;
            pd211 = (* (( (ptr) (* (( (ptr) gf←c69956)+163)/* var←c67684 */  ))+65) );
            (void) ( *( (fPt) ((*  (ptr) pd211 ))))(outline←v14980, completeParts←v15136, 1, patternSeq←v15092, offset←v8780, length←v8808
               , 0, pd211);
            };
SOURCE(14436, 41)
         {
            word pd212;
            pd212 = (* (( (ptr) (* (( (ptr) gf←c69956)+144)/* var←c65028 */  ))+9) );
            (void) ( *( (fPt) ((*  (ptr) pd212 ))))((*  (ptr) data←v15036 ), outline←v14980,  (word) -1, pd212);
            };
         };
      };
   }

static void MyShowAndFixedXRel←P1080(context←v8972, string←v9000, x←v9028)
   word context←v8972;
   word string←v9000;
   word x←v9028;
   {
   register ptr gf←c69988 =  (ptr) &globalframe;
   /* MyShowAndFixedXRel: */ 
SOURCE(14486, 164)
SOURCE(14564, 86)
   {
      W3 var←c0290;
      (*  (ptr) (word) &var←c0290 ) = context←v8972;
      (* (( (ptr) (word) &var←c0290) + 1) ) = (* (( (ptr) gf←c69988)+39) );
      (* (( (ptr) (word) &var←c0290) + 2) ) = (* (( (ptr) gf←c69988)+40) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c69988)+260)/* var←c63652 */ , 0, (word) &var←c0290));
      };
   }

static void MyMaskRectangle←P1140(context←v9088, formal←c0554)
   word context←v9088;
   W4 formal←c0554;
   {
   W10 var←c70020;
   /* declaration of r←v9116 skipped */ 
   /* declaration of var←c68068 skipped */ 
   (*  (W4Pt) (( (ptr) &var←c70020)+4)/* r←v9116 */  ) = formal←c0554;
   /* MyMaskRectangle: */ 
SOURCE(14656, 208)
   {
      word tmpAddr213;
      tmpAddr213 = (word) (( (ptr) &var←c70020)+8)/* var←c68068 */ ;
      (*  (ptr) tmpAddr213 ) = ( ((word)  (fPt) path←P3372) );
      (* (( (ptr) tmpAddr213) + 1) ) = 1;
      };
SOURCE(14832, 32)
   (void) MyMaskFill←P840(context←v9088, (word) (( (bPt) &var←c70020)+32)/* var←c68068 */ , 0);
   }

static void path←P3372(moveTo←v59560, lineTo←v59588, curveTo←v59616, conicTo←v59644, arcTo←v59672, formal←c70052)
   word moveTo←v59560;
   word lineTo←v59588;
   word curveTo←v59616;
   word conicTo←v59644;
   word arcTo←v59672;
   word formal←c70052;
   {
   formal←c70052 = (formal←c70052 - 32);
   /* path: */ 
SOURCE(14714, 114)
SOURCE(14733, 18)
   {
      W2 var←c68100;
      var←c68100.f0 = (* (( (ptr) formal←c70052)+4) );
      var←c68100.f1 = (* (( (ptr) formal←c70052)+5) );
      (void) ( *( (fPt) ((*  (ptr) moveTo←v59560 ))))(var←c68100, moveTo←v59560);
      };
SOURCE(14753, 22)
   {
      W2 var←c68132;
      {
         word x214;
         word x215;
         *(float*)&var←c68132.f0 = (
            x214 = (* (( (ptr) formal←c70052)+4) ),  *(float*)&x214
            ) + (
            x215 = (* (( (ptr) formal←c70052)+6) ),  *(float*)&x215
            );
         };
      var←c68132.f1 = (* (( (ptr) formal←c70052)+5) );
      (void) ( *( (fPt) ((*  (ptr) lineTo←v59588 ))))(var←c68132, lineTo←v59588);
      };
SOURCE(14777, 26)
   {
      W2 var←c68164;
      {
         word x216;
         word x217;
         *(float*)&var←c68164.f0 = (
            x216 = (* (( (ptr) formal←c70052)+4) ),  *(float*)&x216
            ) + (
            x217 = (* (( (ptr) formal←c70052)+6) ),  *(float*)&x217
            );
         };
      {
         word x218;
         word x219;
         *(float*)&var←c68164.f1 = (
            x218 = (* (( (ptr) formal←c70052)+5) ),  *(float*)&x218
            ) + (
            x219 = (* (( (ptr) formal←c70052)+7) ),  *(float*)&x219
            );
         };
      (void) ( *( (fPt) ((*  (ptr) lineTo←v59588 ))))(var←c68164, lineTo←v59588);
      };
SOURCE(14805, 23)
   {
      W2 var←c68196;
      var←c68196.f0 = (* (( (ptr) formal←c70052)+4) );
      {
         word x220;
         word x221;
         *(float*)&var←c68196.f1 = (
            x220 = (* (( (ptr) formal←c70052)+5) ),  *(float*)&x220
            ) + (
            x221 = (* (( (ptr) formal←c70052)+7) ),  *(float*)&x221
            );
         };
      (void) ( *( (fPt) ((*  (ptr) lineTo←v59588 ))))(var←c68196, lineTo←v59588);
      };
   }

static void MyMaskRectangleI←P1200(context←v9176, x←v9204, y←v9232, w←v9260, h←v9288)
   word context←v9176;
   word x←v9204;
   word y←v9232;
   word w←v9260;
   word h←v9288;
   {
   /* MyMaskRectangleI: */ 
SOURCE(14870, 104)
SOURCE(14936, 38)
   {
      W4 var←c68228;
      {
         float tf222;
         var←c68228.f0 = (
            tf222 = (float)(int)x←v9204,  *(word*)&tf222
            );
         };
      {
         float tf223;
         var←c68228.f1 = (
            tf223 = (float)(int)y←v9232,  *(word*)&tf223
            );
         };
      {
         float tf224;
         var←c68228.f2 = (
            tf224 = (float)(int)w←v9260,  *(word*)&tf224
            );
         };
      {
         float tf225;
         var←c68228.f3 = (
            tf225 = (float)(int)h←v9288,  *(word*)&tf225
            );
         };
      (void) MyMaskRectangle←P1140(context←v9176, var←c68228);
      };
   }

static void MyMaskVector←P1260(context←v9348, formal←c0555, formal←c0556)
   word context←v9348;
   W2 formal←c0555;
   W2 formal←c0556;
   {
   W10 var←c70084;
   /* declaration of p1←v9376 skipped */ 
   /* declaration of p2←v9404 skipped */ 
   /* declaration of var←c68260 skipped */ 
   (*  (W2Pt) (( (ptr) &var←c70084)+4)/* p1←v9376 */  ) = formal←c0555;
   (*  (W2Pt) (( (ptr) &var←c70084)+6)/* p2←v9404 */  ) = formal←c0556;
   /* MyMaskVector: */ 
SOURCE(14980, 131)
   {
      word tmpAddr226;
      tmpAddr226 = (word) (( (ptr) &var←c70084)+8)/* var←c68260 */ ;
      (*  (ptr) tmpAddr226 ) = ( ((word)  (fPt) path←P3432) );
      (* (( (ptr) tmpAddr226) + 1) ) = 1;
      };
SOURCE(15077, 34)
   (void) MyMaskStroke←P960(context←v9348, (word) (( (bPt) &var←c70084)+32)/* var←c68260 */ , 0);
   }

static void path←P3432(moveTo←v59860, lineTo←v59888, curveTo←v59916, conicTo←v59944, arcTo←v59972, formal←c70116)
   word moveTo←v59860;
   word lineTo←v59888;
   word curveTo←v59916;
   word conicTo←v59944;
   word arcTo←v59972;
   word formal←c70116;
   {
   formal←c70116 = (formal←c70116 - 32);
   /* path: */ 
SOURCE(15034, 40)
SOURCE(15052, 10)
   (void) ( *( (fPt) ((*  (ptr) moveTo←v59860 ))))((*  (W2Pt) ((( (ptr) formal←c70116)+4)) ), moveTo←v59860);
SOURCE(15064, 10)
   (void) ( *( (fPt) ((*  (ptr) lineTo←v59888 ))))((*  (W2Pt) ((( (ptr) formal←c70116)+6)) ), lineTo←v59888);
   }

static void MyMaskPixel←P1320(context←v9464, formal←c0557)
   word context←v9464;
   word formal←c0557;
   {
   W5 var←c70148;
   /* declaration of pa←v9492 skipped */ 
   register ptr gf←c70180 =  (ptr) &globalframe;
   W2 var←c68292;
   word data←v15340;
   word boxSlice←v15368 = 0;
   word currentColor←v15396 = 0;
   word currentT←v15424 = 0;
   var←c70148.f4/* pa←v9492 */  = formal←c0557;
   /* MyMaskPixel: */ 
SOURCE(15117, 471)
   (*  (ptr) (word) &var←c68292 ) = ( ((word)  (fPt) DoMyMaskPixel←P3492) );
   (* (( (ptr) (word) &var←c68292) + 1) ) = 1;
SOURCE(15247, 33)
   data←v15340 = XR←Narrow((* (( (ptr) context←v9464)+2) ), (* (( (ptr) gf←c70180)+13) ));
SOURCE(15368, 34)
   currentColor←v15396 = (* (( (ptr) (* (( (ptr) context←v9464)+1) ))+36) );
SOURCE(15404, 66)
   {
      word pd227;
      pd227 = (* (( (ptr) (* (( (ptr) gf←c70180)+142)/* var←c64900 */  ))+6) );
      currentT←v15424 = (word) ( *( (fPt) ((*  (ptr) pd227 ))))((* ((( (ptr) (* (( (ptr) context←v9464)+1) ))+33)) ), pd227);
      };
SOURCE(15472, 72)
   {
      word pd228;
      pd228 = (* (( (ptr) (* (( (ptr) gf←c70180)+154)/* var←c66276 */  ))+44) );
      boxSlice←v15368 = (word) ( *( (fPt) ((*  (ptr) pd228 ))))(var←c70148.f4/* pa←v9492 */ , currentColor←v15396, 0, currentT←v15424, pd228)
      ;
      };
SOURCE(15546, 42)
   {
      word pd229;
      pd229 = (* (( (ptr) (* (( (ptr) gf←c70180)+144)/* var←c65028 */  ))+9) );
      (void) ( *( (fPt) ((*  (ptr) pd229 ))))((*  (ptr) data←v15340 ), boxSlice←v15368,  (word) -1, pd229);
      };
   }

static void DoMyMaskPixel←P3492(dc←v15500, formal←c70244)
   word dc←v15500;
   word formal←c70244;
   {
   register ptr gf←c70212 =  (ptr) &globalframe;
   /* DoMyMaskPixel: */ 
SOURCE(15173, 69)
SOURCE(15218, 24)
   {
      word pd230;
      pd230 = (* (( (ptr) (* (( (ptr) gf←c70212)+145)/* var←c65092 */  ))+77) );
      (void) ( *( (fPt) ((*  (ptr) pd230 ))))(dc←v15500, (* (( (ptr) formal←c70244)+4) ), pd230);
      };
   }

static void MyMaskBitmap←P1380(context←v9552, formal←c0558, formal←c0559, formal←c0560, formal←c0561)
   word context←v9552;
   word formal←c0558;
   W2 formal←c0559;
   word formal←c0560;
   W2 formal←c0561;
   {
   W12 var←c70276;
   /* declaration of bitmap←v9580 skipped */ 
   /* declaration of referencePoint←v9608 skipped */ 
   /* declaration of scanMode←v9636 skipped */ 
   /* declaration of position←v9664 skipped */ 
   register ptr gf←c70308 =  (ptr) &globalframe;
   /* declaration of var←c68324 skipped */ 
   word masterStream←v15556 = 0;
   word outStream←v15584 = 0;
   word masterRope←v15612 = 0;
   word data←v15640;
   word ipRef←v15668 = 0;
   word ipMaster←v15696 = 0;
   word ipSlice←v15724 = 0;
   (* (( (ptr) &var←c70276)+4)/* bitmap←v9580 */  ) = formal←c0558;
   (*  (W2Pt) (( (ptr) &var←c70276)+5)/* referencePoint←v9608 */  ) = formal←c0559;
   (* (( (ptr) &var←c70276)+7)/* scanMode←v9636 */  ) = formal←c0560;
   (*  (W2Pt) (( (ptr) &var←c70276)+8)/* position←v9664 */  ) = formal←c0561;
   /* MyMaskBitmap: */ 
SOURCE(15594, 875)
   {
      word tmpAddr231;
      tmpAddr231 = (word) (( (ptr) &var←c70276)+10)/* var←c68324 */ ;
      (*  (ptr) tmpAddr231 ) = ( ((word)  (fPt) DoMyMaskBits←P3552) );
      (* (( (ptr) tmpAddr231) + 1) ) = 1;
      };
SOURCE(15886, 33)
   data←v15640 = XR←Narrow((* (( (ptr) context←v9552)+2) ), (* (( (ptr) gf←c70308)+13) ));
SOURCE(16007, 20)
   {
      word pd232;
      pd232 = (* (( (ptr) (* (( (ptr) gf←c70308)+147)/* var←c65348 */  ))+34) );
      outStream←v15584 = (word) ( *( (fPt) ((*  (ptr) pd232 ))))(0, pd232);
      };
SOURCE(16029, 77)
   {
      word pd233;
      pd233 = (* (( (ptr) (* (( (ptr) gf←c70308)+164)/* var←c68356 */  ))+6) );
      ipRef←v15668 = (word) ( *( (fPt) ((*  (ptr) pd233 ))))(outStream←v15584, (* (( (ptr) gf←c70308)+41) ), pd233);
      };
SOURCE(16108, 44)
   {
      word pd234;
      pd234 = (* (( (ptr) (* (( (ptr) gf←c70308)+164)/* var←c68356 */  ))+11) );
      (void) ( *( (fPt) ((*  (ptr) pd234 ))))(ipRef←v15668, (word) (( (bPt) &var←c70276)+40)/* var←c68324 */ , (*  (ptr) &fc97 ), pd234)
      ;
      };
SOURCE(16154, 30)
   {
      word pd235;
      pd235 = (* (( (ptr) (* (( (ptr) gf←c70308)+164)/* var←c68356 */  ))+13) );
      (void) ( *( (fPt) ((*  (ptr) pd235 ))))(ipRef←v15668, pd235);
      };
SOURCE(16186, 38)
   {
      word pd236;
      pd236 = (* (( (ptr) (* (( (ptr) gf←c70308)+147)/* var←c65348 */  ))+35) );
      masterRope←v15612 = (word) ( *( (fPt) ((*  (ptr) pd236 ))))(outStream←v15584, 1, pd236);
      };
SOURCE(16226, 33)
   {
      word pd237;
      pd237 = (* (( (ptr) (* (( (ptr) gf←c70308)+147)/* var←c65348 */  ))+33) );
      masterStream←v15556 = (word) ( *( (fPt) ((*  (ptr) pd237 ))))(masterRope←v15612, 0, pd237);
      };
SOURCE(16261, 62)
   {
      word pd238;
      pd238 = (* (( (ptr) (* (( (ptr) gf←c70308)+165)/* var←c68388 */  ))+6) );
      ipMaster←v15696 = (word) ( *( (fPt) ((*  (ptr) pd238 ))))(masterStream←v15556, 0, 0, 0, 0, pd238);
      };
SOURCE(16325, 94)
   {
      word pd239;
      pd239 = (* (( (ptr) (* (( (ptr) gf←c70308)+154)/* var←c66276 */  ))+55) );
      ipSlice←v15724 = (word) ( *( (fPt) ((*  (ptr) pd239 ))))(ipMaster←v15696, (*  (ptr) &fc240 ), 0, 0, 0, 0
         , 0, 1, pd239);
      };
SOURCE(16428, 41)
   {
      word pd241;
      pd241 = (* (( (ptr) (* (( (ptr) gf←c70308)+144)/* var←c65028 */  ))+9) );
      (void) ( *( (fPt) ((*  (ptr) pd241 ))))((*  (ptr) data←v15640 ), ipSlice←v15724,  (word) -1, pd241);
      };
   }

static void DoMyMaskBits←P3552(dc←v15800, formal←c70372)
   word dc←v15800;
   word formal←c70372;
   {
   register ptr gf←c70340 =  (ptr) &globalframe;
   formal←c70372 = (formal←c70372 - 40);
   /* DoMyMaskBits: */ 
SOURCE(15713, 109)
SOURCE(15757, 65)
   {
      word pd242;
      pd242 = (* (( (ptr) (* (( (ptr) gf←c70340)+145)/* var←c65092 */  ))+78) );
      (void) ( *( (fPt) ((*  (ptr) pd242 ))))(dc←v15800, (* (( (ptr) formal←c70372)+4) ), (*  (W2Pt) (( (ptr) formal←c70372)+5)
          ), (* (( (ptr) formal←c70372)+7) ), (*  (W2Pt) (( (ptr) formal←c70372)+8) ), pd242);
      };
   }

static void MyDrawBitmap←P1440(context←v9724, formal←c0562, formal←c0563, formal←c0564, formal←c0565)
   word context←v9724;
   word formal←c0562;
   W2 formal←c0563;
   word formal←c0564;
   W2 formal←c0565;
   {
   W12 var←c70404;
   /* declaration of bitmap←v9752 skipped */ 
   /* declaration of referencePoint←v9780 skipped */ 
   /* declaration of scanMode←v9808 skipped */ 
   /* declaration of position←v9836 skipped */ 
   register ptr gf←c70436 =  (ptr) &globalframe;
   /* declaration of var←c68420 skipped */ 
   word masterStream←v15856 = 0;
   word outStream←v15884 = 0;
   word masterRope←v15912 = 0;
   word data←v15940;
   word ipRef←v15968 = 0;
   word ipMaster←v15996 = 0;
   word ipSlice←v16024 = 0;
   (* (( (ptr) &var←c70404)+4)/* bitmap←v9752 */  ) = formal←c0562;
   (*  (W2Pt) (( (ptr) &var←c70404)+5)/* referencePoint←v9780 */  ) = formal←c0563;
   (* (( (ptr) &var←c70404)+7)/* scanMode←v9808 */  ) = formal←c0564;
   (*  (W2Pt) (( (ptr) &var←c70404)+8)/* position←v9836 */  ) = formal←c0565;
   /* MyDrawBitmap: */ 
SOURCE(16475, 876)
   {
      word tmpAddr243;
      tmpAddr243 = (word) (( (ptr) &var←c70404)+10)/* var←c68420 */ ;
      (*  (ptr) tmpAddr243 ) = ( ((word)  (fPt) DoMyDrawBits←P3612) );
      (* (( (ptr) tmpAddr243) + 1) ) = 1;
      };
SOURCE(16768, 33)
   data←v15940 = XR←Narrow((* (( (ptr) context←v9724)+2) ), (* (( (ptr) gf←c70436)+13) ));
SOURCE(16889, 20)
   {
      word pd244;
      pd244 = (* (( (ptr) (* (( (ptr) gf←c70436)+147)/* var←c65348 */  ))+34) );
      outStream←v15884 = (word) ( *( (fPt) ((*  (ptr) pd244 ))))(0, pd244);
      };
SOURCE(16911, 77)
   {
      word pd245;
      pd245 = (* (( (ptr) (* (( (ptr) gf←c70436)+164)/* var←c68356 */  ))+6) );
      ipRef←v15968 = (word) ( *( (fPt) ((*  (ptr) pd245 ))))(outStream←v15884, (* (( (ptr) gf←c70436)+41) ), pd245);
      };
SOURCE(16990, 44)
   {
      word pd246;
      pd246 = (* (( (ptr) (* (( (ptr) gf←c70436)+164)/* var←c68356 */  ))+11) );
      (void) ( *( (fPt) ((*  (ptr) pd246 ))))(ipRef←v15968, (word) (( (bPt) &var←c70404)+40)/* var←c68420 */ , (*  (ptr) &fc97 ), pd246)
      ;
      };
SOURCE(17036, 30)
   {
      word pd247;
      pd247 = (* (( (ptr) (* (( (ptr) gf←c70436)+164)/* var←c68356 */  ))+13) );
      (void) ( *( (fPt) ((*  (ptr) pd247 ))))(ipRef←v15968, pd247);
      };
SOURCE(17068, 38)
   {
      word pd248;
      pd248 = (* (( (ptr) (* (( (ptr) gf←c70436)+147)/* var←c65348 */  ))+35) );
      masterRope←v15912 = (word) ( *( (fPt) ((*  (ptr) pd248 ))))(outStream←v15884, 1, pd248);
      };
SOURCE(17108, 33)
   {
      word pd249;
      pd249 = (* (( (ptr) (* (( (ptr) gf←c70436)+147)/* var←c65348 */  ))+33) );
      masterStream←v15856 = (word) ( *( (fPt) ((*  (ptr) pd249 ))))(masterRope←v15912, 0, pd249);
      };
SOURCE(17143, 62)
   {
      word pd250;
      pd250 = (* (( (ptr) (* (( (ptr) gf←c70436)+165)/* var←c68388 */  ))+6) );
      ipMaster←v15996 = (word) ( *( (fPt) ((*  (ptr) pd250 ))))(masterStream←v15856, 0, 0, 0, 0, pd250);
      };
SOURCE(17207, 94)
   {
      word pd251;
      pd251 = (* (( (ptr) (* (( (ptr) gf←c70436)+154)/* var←c66276 */  ))+55) );
      ipSlice←v16024 = (word) ( *( (fPt) ((*  (ptr) pd251 ))))(ipMaster←v15996, (*  (ptr) &fc240 ), 0, 0, 0, 0
         , 0, 1, pd251);
      };
SOURCE(17310, 41)
   {
      word pd252;
      pd252 = (* (( (ptr) (* (( (ptr) gf←c70436)+144)/* var←c65028 */  ))+9) );
      (void) ( *( (fPt) ((*  (ptr) pd252 ))))((*  (ptr) data←v15940 ), ipSlice←v16024,  (word) -1, pd252);
      };
   }

static void DoMyDrawBits←P3612(dc←v16100, formal←c70500)
   word dc←v16100;
   word formal←c70500;
   {
   register ptr gf←c70468 =  (ptr) &globalframe;
   formal←c70500 = (formal←c70500 - 40);
   /* DoMyDrawBits: */ 
SOURCE(16595, 109)
SOURCE(16639, 65)
   {
      word pd253;
      pd253 = (* (( (ptr) (* (( (ptr) gf←c70468)+145)/* var←c65092 */  ))+78) );
      (void) ( *( (fPt) ((*  (ptr) pd253 ))))(dc←v16100, (* (( (ptr) formal←c70500)+4) ), (*  (W2Pt) (( (ptr) formal←c70500)+5)
          ), (* (( (ptr) formal←c70500)+7) ), (*  (W2Pt) (( (ptr) formal←c70500)+8) ), pd253);
      };
   }

static void MyDrawPixels←P1500(context←v9896, pixelMap←v9924, colorOperator←v9952, referencePoint←v9980, scanMode←v10008, position←v10036)
   word context←v9896;
   word pixelMap←v9924;
   word colorOperator←v9952;
   W2 referencePoint←v9980;
   word scanMode←v10008;
   W2 position←v10036;
   {
   register ptr gf←c70532 =  (ptr) &globalframe;
   /* MyDrawPixels: */ 
SOURCE(17357, 225)
SOURCE(17507, 75)
   {
      W3 var←c0360;
      (*  (ptr) (word) &var←c0360 ) = context←v9896;
      (* (( (ptr) (word) &var←c0360) + 1) ) = (* (( (ptr) gf←c70532)+42) );
      (* (( (ptr) (word) &var←c0360) + 2) ) = (* (( (ptr) gf←c70532)+43) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c70532)+260)/* var←c63652 */ , 0, (word) &var←c0360));
      };
   }

static void MyDoIfVisible←P1560(context←v10096, r←v10124, action←v10152)
   word context←v10096;
   W4 r←v10124;
   word action←v10152;
   {
   register ptr gf←c70564 =  (ptr) &globalframe;
   /* MyDoIfVisible: */ 
SOURCE(17588, 147)
SOURCE(17658, 77)
   {
      W3 var←c0364;
      (*  (ptr) (word) &var←c0364 ) = context←v10096;
      (* (( (ptr) (word) &var←c0364) + 1) ) = (* (( (ptr) gf←c70564)+44) );
      (* (( (ptr) (word) &var←c0364) + 2) ) = (* (( (ptr) gf←c70564)+45) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c70564)+260)/* var←c63652 */ , 0, (word) &var←c0364));
      };
   }

static void MyDoWithBuffer←P1620(context←v10228, action←v10256, x←v10284, y←v10312, w←v10340, h←v10368, backgroundColor←v10396)
   word context←v10228;
   word action←v10256;
   word x←v10284;
   word y←v10312;
   word w←v10340;
   word h←v10368;
   word backgroundColor←v10396;
   {
   register ptr gf←c70596 =  (ptr) &globalframe;
   /* MyDoWithBuffer: */ 
SOURCE(17741, 181)
SOURCE(17843, 79)
   {
      W3 var←c0372;
      (*  (ptr) (word) &var←c0372 ) = context←v10228;
      (* (( (ptr) (word) &var←c0372) + 1) ) = (* (( (ptr) gf←c70596)+46) );
      (* (( (ptr) (word) &var←c0372) + 2) ) = (* (( (ptr) gf←c70596)+47) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c70596)+260)/* var←c63652 */ , 0, (word) &var←c0372));
      };
   }

static void MyDrawObject←P1680(context←v10472, object←v10500, position←v10528, interactive←v10556)
   word context←v10472;
   word object←v10500;
   W2 position←v10528;
   word interactive←v10556;
   {
   register ptr gf←c70628 =  (ptr) &globalframe;
   /* MyDrawObject: */ 
SOURCE(17928, 167)
SOURCE(18019, 76)
   {
      W3 var←c0377;
      (*  (ptr) (word) &var←c0377 ) = context←v10472;
      (* (( (ptr) (word) &var←c0377) + 1) ) = (* (( (ptr) gf←c70628)+48) );
      (* (( (ptr) (word) &var←c0377) + 2) ) = (* (( (ptr) gf←c70628)+49) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c70628)+260)/* var←c63652 */ , 0, (word) &var←c0377));
      };
   }

static void MyGetBounds←P1740(formal←c0382, context←v10616)
   word formal←c0382;
   word context←v10616;
   {
   register ptr gf←c70660 =  (ptr) &globalframe;
   W4 var←c10660;
   /* MyGetBounds: */ 
SOURCE(18101, 131)
SOURCE(18162, 70)
   {
      W3 var←c0381;
      var←c0381.f0 = 103;
      var←c0381.f1 = (* (( (ptr) gf←c70660)+50) );
      var←c0381.f2 = 0;
      (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c70660)+146)/* var←c65188 */  ))+4) ), (word) &var←c0381);
      };
   }

static void MyViewReset←P1800(context←v10720)
   word context←v10720;
   {
   register ptr gf←c70692 =  (ptr) &globalframe;
   /* MyViewReset: */ 
SOURCE(18236, 113)
SOURCE(18276, 73)
   {
      W3 var←c0384;
      (*  (ptr) (word) &var←c0384 ) = context←v10720;
      (* (( (ptr) (word) &var←c0384) + 1) ) = (* (( (ptr) gf←c70692)+51) );
      (* (( (ptr) (word) &var←c0384) + 2) ) = (* (( (ptr) gf←c70692)+52) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c70692)+260)/* var←c63652 */ , 0, (word) &var←c0384));
      };
   }

static void MyViewTranslateI←P1860(context←v10780, x←v10808, y←v10836)
   word context←v10780;
   word x←v10808;
   word y←v10836;
   {
   register ptr gf←c70724 =  (ptr) &globalframe;
   /* MyViewTranslateI: */ 
SOURCE(18355, 143)
SOURCE(18415, 83)
   {
      W3 var←c0388;
      (*  (ptr) (word) &var←c0388 ) = context←v10780;
      (* (( (ptr) (word) &var←c0388) + 1) ) = (* (( (ptr) gf←c70724)+53) );
      (* (( (ptr) (word) &var←c0388) + 2) ) = (* (( (ptr) gf←c70724)+54) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c70724)+260)/* var←c63652 */ , 0, (word) &var←c0388));
      };
   }

static void MyViewClip←P1920(context←v10896, path←v10924, oddWrap←v10952, exclude←v10980)
   word context←v10896;
   word path←v10924;
   word oddWrap←v10952;
   word exclude←v10980;
   {
   register ptr gf←c70756 =  (ptr) &globalframe;
   /* MyViewClip: */ 
SOURCE(18504, 156)
SOURCE(18589, 71)
   {
      W3 var←c0393;
      (*  (ptr) (word) &var←c0393 ) = context←v10896;
      (* (( (ptr) (word) &var←c0393) + 1) ) = (* (( (ptr) gf←c70756)+55) );
      (* (( (ptr) (word) &var←c0393) + 2) ) = (* (( (ptr) gf←c70756)+56) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c70756)+260)/* var←c63652 */ , 0, (word) &var←c0393));
      };
   }

static void MyViewClipRectangleI←P1980(context←v11040, x←v11068, y←v11096, w←v11124, h←v11152, exclude←v11180)
   word context←v11040;
   word x←v11068;
   word y←v11096;
   word w←v11124;
   word h←v11152;
   word exclude←v11180;
   {
   register ptr gf←c70788 =  (ptr) &globalframe;
   /* MyViewClipRectangleI: */ 
SOURCE(18666, 176)
SOURCE(18751, 91)
   {
      W3 var←c0400;
      (*  (ptr) (word) &var←c0400 ) = context←v11040;
      (* (( (ptr) (word) &var←c0400) + 1) ) = (* (( (ptr) gf←c70788)+57) );
      (* (( (ptr) (word) &var←c0400) + 2) ) = (* (( (ptr) gf←c70788)+58) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c70788)+260)/* var←c63652 */ , 0, (word) &var←c0400));
      };
   }

static word MyGetTransformation←P2040(context←v11240, from←v11268, to←v11296)
   word context←v11240;
   word from←v11268;
   word to←v11296;
   {
   register ptr gf←c70820 =  (ptr) &globalframe;
   word var←c11340;
   word state←v16128;
   word m←v16156 = 0;
   /* MyGetTransformation: */ 
SOURCE(18848, 592)
SOURCE(18941, 28)
   state←v16128 = (* (( (ptr) context←v11240)+1) );
SOURCE(18996, 216)
   {
      word var←c68484;
      var←c68484 = to←v11296;
      switch (var←c68484) {
         case 0: 
SOURCE(19021, 51)
            {
               word pd254;
               pd254 = (* (( (ptr) (* (( (ptr) gf←c70820)+142)/* var←c64900 */  ))+6) );
               m←v16156 = (word) ( *( (fPt) ((*  (ptr) pd254 ))))((* ((( (ptr) state←v16128)+33)) ), pd254);
               };
            break;
         case 1: 
SOURCE(19082, 35)
            {
               word pd255;
               pd255 = (* (( (ptr) (* (( (ptr) gf←c70820)+142)/* var←c64900 */  ))+7) );
               m←v16156 = (word) ( *( (fPt) ((*  (ptr) pd255 ))))((*  (ptr) (&fc97) ), pd255);
               };
            break;
         case 2: 
SOURCE(19130, 35)
            {
               word pd256;
               pd256 = (* (( (ptr) (* (( (ptr) gf←c70820)+142)/* var←c64900 */  ))+7) );
               m←v16156 = (word) ( *( (fPt) ((*  (ptr) pd256 ))))((*  (ptr) (&fc97) ), pd256);
               };
            break;
         case 3: 
SOURCE(19177, 35)
            {
               word pd257;
               pd257 = (* (( (ptr) (* (( (ptr) gf←c70820)+142)/* var←c64900 */  ))+7) );
               m←v16156 = (word) ( *( (fPt) ((*  (ptr) pd257 ))))((*  (ptr) (&fc97) ), pd257);
               };
            break;
         default: 
SOURCE(19225, 5)
            (void) XR←RaiseUnnamedError();
            break;
         };
      };
SOURCE(19232, 35)
   {
      word pd258;
      pd258 = (* (( (ptr) (* (( (ptr) gf←c70820)+142)/* var←c64900 */  ))+38) );
      (void) ( *( (fPt) ((*  (ptr) pd258 ))))(m←v16156, pd258);
      };
SOURCE(19269, 93)
   {
      word var←c68516;
      var←c68516 = from←v11268;
      switch (var←c68516) {
         case 0: 
SOURCE(19296, 66)
            {
               word pd259;
               pd259 = (* (( (ptr) (* (( (ptr) gf←c70820)+142)/* var←c64900 */  ))+24) );
               (void) ( *( (fPt) ((*  (ptr) pd259 ))))(m←v16156, (* (( (ptr) state←v16128)+33) ), pd259);
               };
            break;
         case 1: 
            break;
         case 2: 
            break;
         case 3: 
            break;
         default: 
SOURCE(19422, 5)
            (void) XR←RaiseUnnamedError();
            break;
         };
      };
SOURCE(19429, 11)
   return(m←v16156);
   }

static void MyTransform←P2100(formal←c0416, context←v11400, v←v11428, from←v11456, to←v11484, vec←v11512)
   word formal←c0416;
   word context←v11400;
   W2 v←v11428;
   word from←v11456;
   word to←v11484;
   word vec←v11512;
   {
   register ptr gf←c70852 =  (ptr) &globalframe;
   /* MyTransform: */ 
SOURCE(19444, 182)
   /* Return var split */ 
SOURCE(19538, 73)
   {
      W3 var←c0415;
      (*  (ptr) (word) &var←c0415 ) = context←v11400;
      (* (( (ptr) (word) &var←c0415) + 1) ) = (* (( (ptr) gf←c70852)+59) );
      (* (( (ptr) (word) &var←c0415) + 2) ) = (* (( (ptr) gf←c70852)+60) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c70852)+260)/* var←c63652 */ , 0, (word) &var←c0415));
      };
SOURCE(19613, 13)
   /* eliminated constant return field */ 
   /* eliminated constant return field */ 
   /* removed tail goto */ 
   (* (( (ptr) formal←c0416)+1) ) = (*  (ptr) &fc131 );
   (*  (ptr) formal←c0416 ) = (*  (ptr) &fc131 );
   return;
   }

static void MyMoveViewRectangle←P2160(context←v11616, width←v11644, height←v11672, fromX←v11700, fromY←v11728, toX←v11756, toY←v11784)
   word context←v11616;
   word width←v11644;
   word height←v11672;
   word fromX←v11700;
   word fromY←v11728;
   word toX←v11756;
   word toY←v11784;
   {
   register ptr gf←c70884 =  (ptr) &globalframe;
   /* MyMoveViewRectangle: */ 
SOURCE(19632, 185)
SOURCE(19728, 89)
   {
      W3 var←c0424;
      (*  (ptr) (word) &var←c0424 ) = context←v11616;
      (* (( (ptr) (word) &var←c0424) + 1) ) = (* (( (ptr) gf←c70884)+61) );
      (* (( (ptr) (word) &var←c0424) + 2) ) = (* (( (ptr) gf←c70884)+62) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c70884)+260)/* var←c63652 */ , 0, (word) &var←c0424));
      };
   }

static word MyTestViewRectangle←P2220(context←v11844, x←v11872, y←v11900, w←v11928, h←v11956)
   word context←v11844;
   word x←v11872;
   word y←v11900;
   word w←v11928;
   word h←v11956;
   {
   register ptr gf←c70916 =  (ptr) &globalframe;
   word var←c12000;
   /* MyTestViewRectangle: */ 
SOURCE(19823, 193)
SOURCE(19913, 89)
   {
      W3 var←c0431;
      (*  (ptr) (word) &var←c0431 ) = context←v11844;
      (* (( (ptr) (word) &var←c0431) + 1) ) = (* (( (ptr) gf←c70916)+63) );
      (* (( (ptr) (word) &var←c0431) + 2) ) = (* (( (ptr) gf←c70916)+64) );
      (void) (XR←RaiseSignal((word) (( (bPt) gf←c70916)+260)/* var←c63652 */ , 0, (word) &var←c0431));
      };
SOURCE(20004, 12)
   return(2);
   }

static void NoName←Q4032(formal←c0437, formal←c200008, formal←c200009, formal←c200010, formal←c200011)
   word formal←c0437;
   word formal←c200008;
   word formal←c200009;
   word formal←c200010;
   word formal←c200011;
   {
   register ptr gf←c0518 =  (ptr) &globalframe;
   if ((formal←c200009 == (* (( (ptr) (* (( (ptr) gf←c0518)+161)/* var←c67428 */  ))+4) ))) {
      {
         word explanation←v54628;
         explanation←v54628 = (*  (ptr) formal←c200011 );
SOURCE(9682, 8)
         (*  (ptr) formal←c0437 ) = 2;
         (* (( (ptr) formal←c0437)+1) ) = 3;
         return;
         };
      };
   (*  (ptr) formal←c0437 ) = 0;
   (* (( (ptr) formal←c0437)+1) ) = 0;
   return;
   }

static void NoName←Q4092(formal←c0442, formal←c200004, formal←c200005, formal←c200006, formal←c200007)
   word formal←c0442;
   word formal←c200004;
   word formal←c200005;
   word formal←c200006;
   word formal←c200007;
   {
   register ptr gf←c0519 =  (ptr) &globalframe;
   if ((formal←c200005 == (* (( (ptr) (* (( (ptr) gf←c0519)+147)/* var←c65348 */  ))+4) )) || (formal←c200005 == (* (( (ptr) (* (
         ( (ptr) gf←c0519)+147)/* var←c65348 */  ))+5) ))) {
SOURCE(4691, 16)
      (* (( (ptr) formal←c200004)+8) ) = 1;
SOURCE(4709, 8)
      (*  (ptr) formal←c0442 ) = 2;
      (* (( (ptr) formal←c0442)+1) ) = 2;
      return;
      };
   (*  (ptr) formal←c0442 ) = 0;
   (* (( (ptr) formal←c0442)+1) ) = 0;
   return;
   }

static void NoName←Q4152(formal←c0453, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
   word formal←c0453;
   word formal←c200000;
   word formal←c200001;
   word formal←c200002;
   word formal←c200003;
   {
   register ptr gf←c0520 =  (ptr) &globalframe;
   if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0520)+146)/* var←c65188 */  ))+5) ))) {
      {
         W3 error←v40488;
         error←v40488 = (*  (W3Pt) formal←c200003 );
SOURCE(2801, 179)
         {
            word r←v12144;
SOURCE(2803, 122)
            {
               word var←c65220;
               {
                  word pd260;
                  pd260 = (* (( (ptr) (* (( (ptr) gf←c0520)+146)/* var←c65188 */  ))+6) );
                  var←c65220 = (word) ( *( (fPt) ((*  (ptr) pd260 ))))(error←v40488.f0, pd260);
                  };
               {
                  W2 var←c65252;
                  W2 var←c65284;
                  W2 var←c0524;
                  var←c65252.f0 = 1;
                  var←c65252.f1 = var←c65220;
                  var←c65284.f0 = 11;
                  var←c65284.f1 = error←v40488.f1;
                  (*  (ptr) (word) &var←c0524 ) = 0;
                  (* (( (ptr) (word) &var←c0524) + 1) ) = 0;
                  {
                     word pd261;
                     pd261 = (* (( (ptr) (* (( (ptr) gf←c0520)+147)/* var←c65348 */  ))+62) );
                     r←v12144 = (word) ( *( (fPt) ((*  (ptr) pd261 ))))((* (( (ptr) gf←c0520)+34) ), var←c65252, var←c65284, var←c0524, pd261)
                     ;
                     };
                  };
               };
SOURCE(2927, 43)
            {
               W3 var←c0452;
               (*  (ptr) (word) &var←c0452 ) = (* (( (ptr) formal←c200000)+5) );
               (* (( (ptr) (word) &var←c0452) + 1) ) = (* (( (ptr) gf←c0520)+33) );
               (* (( (ptr) (word) &var←c0452) + 2) ) = r←v12144;
               (void) (XR←RaiseSignal((word) (( (bPt) gf←c0520)+260)/* var←c63652 */ , 0, (word) &var←c0452));
               };
SOURCE(2972, 6)
            (*  (ptr) formal←c0453 ) = 1;
            (* (( (ptr) formal←c0453)+1) ) = 0;
            return;
            };
         };
      };
   (*  (ptr) formal←c0453 ) = 0;
   (* (( (ptr) formal←c0453)+1) ) = 0;
   return;
   }

/* file: GGFromImagerImpl, module: GGFromImagerImpl, compiled at: July 11, 1993 8:14:24 pm PDT */ 
extern void XR←install←GGFromImagerImpl() {
   NoName←Q3792();
   }
extern void XR←run←GGFromImagerImpl() { XR←Start(&globalframe); }