/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation.  All rights reserved. */
/* time: July 28, 1993 10:24:39 am PDT */
/* C2C version: April 20, 1993 (sun4) */
/* ref-counting: off */
/* file: ImagerStateImpl, module: ImagerStateImpl */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
#define XRM←BITOR(x, y) (((word)(x)) | ((word)(y)))
static char versionStamp[] = "@(#)mob←version [4086631900,1508084509] ImagerStateImpl";
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;} W5;
typedef W5 *W5Pt;
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {word f0, f1;} W2;
typedef struct {W8 f; W2 r;} W10;
typedef W10 *W10Pt;
typedef struct {W8 f; word r;} W9;
typedef W9 *W9Pt;
typedef struct {W8 f; W8 r;} W16;
typedef struct {W16 f; W5 r;} W21;
typedef W21 *W21Pt;
typedef struct {word f0, f1, f2;} W3;
typedef W2 *W2Pt;
typedef struct {word f0, f1, f2, f3;} W4;
typedef struct {W8 f; W4 r;} W12;
typedef W4 *W4Pt;
#define SOURCE(p, l) /* source p, l */
static float fc27 = 0.0;
static float fc28 = 1.0;
static float fc29 = 0.5;
static void NoName←Q6192();
static void ImagerStateImpl←P0();
static word CreateState←P120();
static word StateSave←P180();
static void StateRestore←P240();
static void StateSetInt←P300();
static void Realify←P360();
static void StateSetReal←P420();
static void StateSetT←P480();
static void StateSetClipper←P540();
static void StateSetFont←P600();
static void StateSetColor←P660();
static word StateGetInt←P720();
static word StateGetReal←P780();
static word StateGetT←P840();
static word BackdoorFromClipper←P900();
static word ClipperFromBackdoor←P960();
static word StateGetClipper←P1020();
static word StateGetFont←P1080();
static word StateGetColor←P1140();
static void StateGetCP←P1200();
static void StateConcatT←P1260();
static void StateScale2T←P1320();
static void StateRotateT←P1380();
static void StateTranslateT←P1440();
static void StateMove←P1500();
static void StateSetXY←P1560();
static void StateSetXYRel←P1620();
static void StateSetGray←P1680();
static void StateSetSampledColor←P1740();
static void StateSetSampledBlack←P1800();
static void StateStartUnderline←P1860();
static void StateMaskUnderline←P1920();
static void underline←P2964();
static void StateClip←P1980();
static void StateClipRectangle←P2040();
static void path←P3024();
static void StateClipRectangleI←P2100();
static void path←P3084();
static void StateCorrectMask←P2160();
static void StateCorrectSpace←P2220();
static void StateSpace←P2280();
static void StateSetCorrectMeasure←P2340();
static void StateSetCorrectTolerance←P2400();
static void StateCorrect←P2460();
static void StateDontCorrect←P2520();
static word NoName←Q6252();
static void NoName←Q6312();
static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\231\275\333\246\300\032\361\021\012\100\324\000\000"};
static struct {unsigned f; char r[32];} string2 = {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[16];} string3 = {851984, "\257\300\207\334\320\152\300\253\325\361\210\100\200\000\000"};
static struct {unsigned f; char r[16];} string4 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[4];} string5 = {65537, "\001\000\000"};
static struct {unsigned f; char r[44];} string6 = {2752556, "\260\006\005\146\151\162\163\164\257\300\115\224\271\133\300\331\226\262\036\100\200\005\004\162\145\163\164\214\257\300\115\224\271\133\300\331\226\262\036\100\200\261\000"};
static struct {unsigned f; char r[4];} string7 = {131074, "\004\011\000"};
static struct {unsigned f; char r[44];} string8 = {2752556, "\260\006\005\146\151\162\163\164\257\300\170\064\225\306\300\207\372\245\271\100\230\005\004\162\145\163\164\214\257\300\170\064\225\306\300\207\372\245\271\100\230\261\000"};
static struct {unsigned f; char r[16];} string9 = {983056, "Unknown RealKey"};
static struct {unsigned f; char r[16];} string10 = {917520, "Unknown IntKey\000"};
static struct {unsigned f; char r[24];} string11 = {1376280, "State stack underflow\000\000"};
static struct {unsigned f; char r[76];} string12 = {4915276, "CORRECT was unable to properly adjust mask positions to specified tolerance"};
static struct {unsigned f; char r[24];} string13 = {1376280, "Save-restore mismatch\000\000"};
static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\363\225\015\334\300\131\343\213\035\100\164\000\000"};
static struct {unsigned f; char r[8];} string15 = {393222, "\006\001@T\004\037\000"};
static struct {unsigned f; char r[4];} string16 = {1231905127, "er"};
static struct {unsigned f; char r[16];} string17 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\150\000\000"};
static struct {unsigned f; char r[16];} string18 = {851984, "\257\300ZT?\010\300\370;=;@h\000\000"};
static struct {unsigned f; char r[16];} string19 = {851984, "\257\300\354\147\236\353\300\316\347\225\106\100\150\000\000"};
static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"};
static struct {unsigned f; char r[16];} string21 = {851984, "\257\300\245\247\302\156\300\052\156\325\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\247\031\224\326\300\123\162\224\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string23 = {851984, "\257\300\346\312\312\137\300\332\074\046\072\100\150\000\000"};
static struct {unsigned f; char r[24];} string24 = {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];} string25 = {851984, "\257\300\231\275\333\246\300\032\361\021\012\100\164\000\000"};
static struct {
   word f0[26]; word f26; word f27; word f28; 
   word f29; word f30; word f31; word f32; 
   word f33; word f34; word f35; word f36; 
   word f37; word f38; word f39; word f40; 
   word f41; word f42; word f43; word f44; 
   word f45; word f46; word f47; word f48; 
   word f49; word f50; word f51; word f52; 
   word f53; word f54; word f55; word f56; 
   word f57; word f58; word f59; word f60; 
   word f61; word f62; word f63; word f64; 
   word f65; word f66; 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[10]; 
   } globalframe = {
   {0}, (word) StateDontCorrect←P2520, 0, (word) StateCorrect←P2460, 
   0, (word) StateSetCorrectTolerance←P2400, 0, (word) StateSetCorrectMeasure←P2340, 
   0, (word) StateSpace←P2280, 0, (word) StateCorrectSpace←P2220, 
   0, (word) StateCorrectMask←P2160, 0, (word) StateClipRectangleI←P2100, 
   0, (word) StateClipRectangle←P2040, 0, (word) StateClip←P1980, 
   0, (word) StateMaskUnderline←P1920, 0, (word) StateStartUnderline←P1860, 
   0, (word) StateSetSampledBlack←P1800, 0, (word) StateSetSampledColor←P1740, 
   0, (word) StateSetGray←P1680, 0, (word) StateSetXYRel←P1620, 
   0, (word) StateSetXY←P1560, 0, (word) StateMove←P1500, 
   0, (word) StateTranslateT←P1440, 0, (word) StateRotateT←P1380, 
   0, (word) StateScale2T←P1320, 0, (word) StateConcatT←P1260, 
   0, (word) StateGetCP←P1200, 0, (word) StateGetColor←P1140, 
   0, (word) StateGetFont←P1080, 0, (word) StateGetClipper←P1020, 
   0, (word) ClipperFromBackdoor←P960, 0, (word) BackdoorFromClipper←P900, 
   0, (word) StateGetT←P840, 0, (word) StateGetReal←P780, 
   0, (word) StateGetInt←P720, 0, (word) StateSetColor←P660, 
   0, (word) StateSetFont←P600, 0, (word) StateSetClipper←P540, 
   0, (word) StateSetT←P480, 0, (word) StateSetReal←P420, 
   0, (word) Realify←P360, 0, (word) StateSetInt←P300, 
   0, (word) StateRestore←P240, 0, (word) StateSave←P180, 
   0, (word) CreateState←P120, 0, (word) ImagerStateImpl←P0, 
   {0}
   };

static void NoName←Q6192()
   {
   register ptr gf←c0436 =  (ptr) &globalframe;
   word var←c38516;
   (* (( (ptr) gf←c0436)+5) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
   (* (( (ptr) gf←c0436)+13) ) = (word) XR←GetTypeIndexS((word) (&string3));
   (* (( (ptr) gf←c0436)+15) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string5);
   (* (( (ptr) gf←c0436)+18) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7);
   (* (( (ptr) gf←c0436)+20) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string7);
   (*  (ptr) (( (bPt) gf←c0436)+84) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0436)+15) ), (word) &string9);
   (*  (ptr) (( (bPt) gf←c0436)+88) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0436)+15) ), (word) &string10);
   (*  (ptr) (( (bPt) gf←c0436)+92) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0436)+15) ), (word) &string11);
   (*  (ptr) (( (bPt) gf←c0436)+96) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0436)+15) ), (word) &string12);
   (*  (ptr) (( (bPt) gf←c0436)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0436)+15) ), (word) &string13);
   (void) XR←DeclareGlobalFrame((word) "ImagerStateImpl", &globalframe, (word) XR←GetTypeIndex((word) &string14, 0, (word) &string15)
      , (word) (( (bPt) gf←c0436)+432)/* var←c33140 */ );
   var←c38516 = (word) XR←ImportInterface((word) &string16, (word) XR←GetTypeIndexS((word) (&string17)), 84);
   (* (( (ptr) gf←c0436)+112)/* var←c33364 */  ) = var←c38516;
   (void) XR←ImportProcS(var←c38516, 526338);
   (void) XR←ImportProcS(var←c38516, 1068292);
   (void) XR←ImportProcS(var←c38516, 1326338);
   (void) XR←ImportProcS(var←c38516, 266241);
   (void) XR←ImportProcS(var←c38516, 790786);
   (void) XR←ImportProcS(var←c38516, 526594);
   (void) XR←ImportProcS(var←c38516, 67383553);
   var←c38516 = (word) XR←ImportInterface((word) "ImagerColor", (word) XR←GetTypeIndexS((word) (&string18)), 32);
   (* (( (ptr) gf←c0436)+114)/* var←c36532 */  ) = var←c38516;
   (void) XR←ImportProcS(var←c38516, 67896579);
   (void) XR←ImportProcS(var←c38516, 67896835);
   var←c38516 = (word) XR←ImportInterface((word) "ImagerPath", (word) XR←GetTypeIndexS((word) (&string19)), 18);
   (* (( (ptr) gf←c0436)+115)/* var←c37076 */  ) = var←c38516;
   (void) XR←ImportProcS(var←c38516, 67899651);
   var←c38516 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string20)), 55);
   (* (( (ptr) gf←c0436)+111)/* var←c33236 */  ) = var←c38516;
   (void) XR←ImportProcS(var←c38516, 262401);
   (void) XR←ImportProcS(var←c38516, 135013122);
   (void) XR←ImportProcS(var←c38516, 794626);
   (void) XR←ImportProcS(var←c38516, 792578);
   (void) XR←ImportProcS(var←c38516, 530178);
   (void) XR←ImportProcS(var←c38516, 792066);
   (void) XR←ImportProcS(var←c38516, 135013634);
   (void) XR←ImportProcS(var←c38516, 134752001);
   (void) XR←ImportProcS(var←c38516, 529410);
   (void) XR←ImportProcS(var←c38516, 67383041);
   (void) XR←ImportProcS(var←c38516, 530946);
   (void) XR←ImportProcS(var←c38516, 135013378);
   (void) XR←ImportProcS(var←c38516, 135013890);
   (void) XR←ImportProcS(var←c38516, 67371521);
   (void) XR←ImportProcS(var←c38516, 67371777);
   var←c38516 = (word) XR←ImportInterface((word) "RealFns", (word) XR←GetTypeIndexS((word) (&string21)), 36);
   (* (( (ptr) gf←c0436)+110)/* var←c33172 */  ) = var←c38516;
   (void) XR←ImportProcS(var←c38516, 67372289);
   var←c38516 = (word) XR←ImportInterface((word) "Vector2", (word) XR←GetTypeIndexS((word) (&string22)), 22);
   (* (( (ptr) gf←c0436)+116)/* var←c38324 */  ) = var←c38516;
   (void) XR←ImportProcS(var←c38516, 135006210);
   (void) XR←ImportProcS(var←c38516, 135005698);
   (void) XR←ImportProcS(var←c38516, 67638273);
   (void) XR←ImportProcS(var←c38516, 135266818);
   (void) XR←ImportProcS(var←c38516, 135266306);
   var←c38516 = (word) XR←ImportInterface((word) "Scaled", (word) XR←GetTypeIndexS((word) (&string23)), 19);
   (* (( (ptr) gf←c0436)+113)/* var←c33908 */  ) = var←c38516;
   (void) XR←ImportProcS(var←c38516, 67375105);
   var←c38516 = (word) XR←ExportInterface((word) &string16, (word) XR←GetTypeIndexS((word) (&string17)), 84);
   (* (( (ptr) gf←c0436)+117)/* var←c38548 */  ) = var←c38516;
   (void) XR←ExportType((word) "StateRep", (word) XR←GetTypeIndexS((word) (&string24)), (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2)
      );
   var←c38516 = (word) XR←ExportInterface((word) "ImagerState", (word) XR←GetTypeIndexS((word) (&string25)), 41);
   (* (( (ptr) gf←c0436)+118)/* var←c38580 */  ) = var←c38516;
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+424)/* var←c33108 */ , 67109632, (word) "CreateState");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+416)/* var←c33076 */ , 67634178, (word) "StateSave");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+408)/* var←c33044 */ , 525570, (word) "StateRestore");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+400)/* var←c33012 */ , 787971, (word) "StateSetInt");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+384)/* var←c32948 */ , 788227, (word) "StateSetReal");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+376)/* var←c32916 */ , 526338, (word) "StateSetT");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+360)/* var←c32852 */ , 526594, (word) "StateSetFont");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+352)/* var←c32820 */ , 526850, (word) "StateSetColor");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+368)/* var←c32884 */ , 527106, (word) "StateSetClipper");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+344)/* var←c32788 */ , 67636226, (word) "StateGetInt");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+336)/* var←c32756 */ , 67636482, (word) "StateGetReal");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+328)/* var←c32724 */ , 67374593, (word) "StateGetT");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+296)/* var←c32596 */ , 67374849, (word) "StateGetFont");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+288)/* var←c32564 */ , 67375105, (word) "StateGetColor");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+304)/* var←c32628 */ , 67375361, (word) "StateGetClipper");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+272)/* var←c32500 */ , 528898, (word) "StateConcatT");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+264)/* var←c32468 */ , 791298, (word) "StateScale2T");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+256)/* var←c32436 */ , 529410, (word) "StateRotateT");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+248)/* var←c32404 */ , 791810, (word) "StateTranslateT");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+240)/* var←c32372 */ , 529922, (word) "StateMove");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+232)/* var←c32340 */ , 792322, (word) "StateSetXY");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+224)/* var←c32308 */ , 792578, (word) "StateSetXYRel");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+280)/* var←c32532 */ , 134748418, (word) "StateGetCP");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+192)/* var←c32180 */ , 268801, (word) "StateStartUnderline");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+184)/* var←c32148 */ , 793347, (word) "StateMaskUnderline");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+152)/* var←c32020 */ , 269313, (word) "StateCorrectMask");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+144)/* var←c31988 */ , 793858, (word) "StateCorrectSpace");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+136)/* var←c31956 */ , 531970, (word) "StateSpace");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+128)/* var←c31924 */ , 794370, (word) "StateSetCorrectMeasure")
   ;
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+120)/* var←c31892 */ , 794626, (word) "StateSetCorrectTolerance")
   ;
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+112)/* var←c31860 */ , 532738, (word) "StateCorrect");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+104)/* var←c31828 */ , 795139, (word) "StateDontCorrect");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+216)/* var←c32276 */ , 533250, (word) "StateSetGray");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+208)/* var←c32244 */ , 1057796, (word) "StateSetSampledColor")
   ;
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+200)/* var←c32212 */ , 1058052, (word) "StateSetSampledBlack")
   ;
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+176)/* var←c32116 */ , 1058308, (word) "StateClip");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+168)/* var←c32084 */ , 1582851, (word) "StateClipRectangle");
   (void) XR←ExportProcS(var←c38516, (word) (( (bPt) gf←c0436)+160)/* var←c32052 */ , 1583110, (word) "StateClipRectangleI")
   ;
   }

static void ImagerStateImpl←P0(formal←c057, formal←c056)
   word formal←c057;
   word formal←c056;
   {
   register ptr gf←c38612 =  (ptr) &globalframe;
   /* ImagerStateImpl: */ 
SOURCE(1028, 17869)
SOURCE(16081, 50)
   {
      word pd26;
      pd26 = (* (( (ptr) (* (( (ptr) gf←c38612)+110)/* var←c33172 */  ))+9) );
      (* (( (ptr) gf←c38612)+4)/* largeReal←v4624 */  ) = (word) ( *( (fPt) ((*  (ptr) pd26 ))))(2139095039, pd26);
      };
   }

static word CreateState←P120()
   {
   register ptr gf←c38644 =  (ptr) &globalframe;
   word state←v4848;
   /* CreateState: */ 
SOURCE(2118, 223)
SOURCE(2118, 223)
   state←v4848 = 0;
SOURCE(2170, 21)
   {
      word var←c33204;
      var←c33204 = XR←NewObject(164, (* (( (ptr) gf←c38644)+5) ));
      (* (( (ptr) var←c33204)+2) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+3) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+5) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+6) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+7) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+8) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+9) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+10) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+13) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+14) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+15) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+16) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+17) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+18) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+20) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+23) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+24) ) = (*  (ptr) &fc28 );
      (* (( (ptr) var←c33204)+26) ) = (*  (ptr) &fc29 );
      (* (( (ptr) var←c33204)+27) ) = 2139095039;
      (* (( (ptr) var←c33204)+28) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+29) ) = (*  (ptr) &fc27 );
      (* (( (ptr) var←c33204)+30) ) = (*  (ptr) &fc27 );
      state←v4848 = var←c33204;
      };
SOURCE(2193, 52)
   {
      word pd30;
      pd30 = (* (( (ptr) (* (( (ptr) gf←c38644)+111)/* var←c33236 */  ))+7) );
      (* (( (ptr) state←v4848)+33) ) = (word) ( *( (fPt) ((*  (ptr) pd30 ))))((*  (ptr) (&fc28) ), pd30);
      };
SOURCE(2247, 50)
   {
      word pd31;
      pd31 = (* (( (ptr) (* (( (ptr) gf←c38644)+111)/* var←c33236 */  ))+7) );
      (* (( (ptr) state←v4848)+34) ) = (word) ( *( (fPt) ((*  (ptr) pd31 ))))((*  (ptr) (&fc28) ), pd31);
      };
SOURCE(2299, 42)
   (* (( (ptr) state←v4848)+32) ) = XR←NewObject(20, (* (( (ptr) gf←c38644)+13) ));
SOURCE(2118, 223)
   return(state←v4848);
   }

static word StateSave←P180(context←v4908, all←v4936)
   word context←v4908;
   word all←v4936;
   {
   register ptr gf←c38676 =  (ptr) &globalframe;
   word var←c4980;
   word savedState←v9064;
   word newState←v9092;
   /* StateSave: */ 
SOURCE(2347, 1001)
SOURCE(2418, 33)
   savedState←v9064 = (* (( (ptr) context←v4908)+1) );
SOURCE(2453, 34)
   newState←v9092 = (* (( (ptr) savedState←v9064)+39) );
SOURCE(2489, 461)
   if ((newState←v9092 == 0)) {
SOURCE(2514, 24)
      {
         word var←c33300;
         var←c33300 = XR←NewObject(164, (* (( (ptr) gf←c38676)+5) ));
         (* (( (ptr) var←c33300)+2) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+3) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+5) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+6) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+7) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+8) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+9) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+10) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+13) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+14) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+15) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+16) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+17) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+18) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+20) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+23) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+24) ) = (*  (ptr) &fc28 );
         (* (( (ptr) var←c33300)+26) ) = (*  (ptr) &fc29 );
         (* (( (ptr) var←c33300)+27) ) = 2139095039;
         (* (( (ptr) var←c33300)+28) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+29) ) = (*  (ptr) &fc27 );
         (* (( (ptr) var←c33300)+30) ) = (*  (ptr) &fc27 );
         newState←v9092 = var←c33300;
         };
SOURCE(2540, 78)
      {
         word pd32;
         pd32 = (* (( (ptr) (* (( (ptr) gf←c38676)+111)/* var←c33236 */  ))+6) );
         (* (( (ptr) newState←v9092)+33) ) = (word) ( *( (fPt) ((*  (ptr) pd32 ))))((* ((( (ptr) savedState←v9064)+33)) ), pd32);
         };
SOURCE(2620, 74)
      {
         word pd33;
         pd33 = (* (( (ptr) (* (( (ptr) gf←c38676)+111)/* var←c33236 */  ))+6) );
         (* (( (ptr) newState←v9092)+34) ) = (word) ( *( (fPt) ((*  (ptr) pd33 ))))((* ((( (ptr) savedState←v9064)+34)) ), pd33);
         };
SOURCE(2696, 62)
      {
         word var←c33332;
         var←c33332 = XR←NewObject(20, (* (( (ptr) gf←c38676)+13) ));
         (*  (W5Pt) var←c33332 ) = (*  (W5Pt) (* (( (ptr) savedState←v9064)+32) ) );
         (* (( (ptr) newState←v9092)+32) ) = var←c33332;
         };
SOURCE(2760, 20)
      (* (( (ptr) newState←v9092)+39) ) = 0;
      }
   else {
SOURCE(2791, 22)
      (* (( (ptr) savedState←v9064)+39) ) = 0;
SOURCE(2815, 53)
      (*  (W10Pt) (* (( (ptr) newState←v9092)+33) ) ) = (*  (W10Pt) (* (( (ptr) savedState←v9064)+33) ) );
SOURCE(2870, 49)
      (*  (W10Pt) (* (( (ptr) newState←v9092)+34) ) ) = (*  (W10Pt) (* (( (ptr) savedState←v9064)+34) ) );
SOURCE(2921, 29)
      (*  (W5Pt) (* (( (ptr) newState←v9092)+32) ) ) = (*  (W5Pt) (* (( (ptr) savedState←v9064)+32) ) );
      };
SOURCE(2955, 37)
   (* (( (ptr) newState←v9092)+1) ) = (* (( (ptr) savedState←v9064)+1) );
SOURCE(2994, 25)
   (*  (W9Pt) (( (ptr) newState←v9092)+2) ) = (*  (W9Pt) (( (ptr) savedState←v9064)+2) );
SOURCE(3021, 27)
   (*  (W21Pt) (( (ptr) newState←v9092)+11) ) = (*  (W21Pt) (( (ptr) savedState←v9064)+11) );
SOURCE(3050, 32)
   (* (( (ptr) newState←v9092)+11) ) = 0;
SOURCE(3084, 31)
   (* (( (ptr) newState←v9092)+35) ) = (* (( (ptr) savedState←v9064)+35) );
SOURCE(3117, 33)
   (* (( (ptr) newState←v9092)+36) ) = (* (( (ptr) savedState←v9064)+36) );
SOURCE(3152, 37)
   (* (( (ptr) newState←v9092)+37) ) = (* (( (ptr) savedState←v9064)+37) );
SOURCE(3191, 30)
   (* (( (ptr) newState←v9092)+38) ) = savedState←v9064;
SOURCE(3223, 25)
   (*  (ptr) newState←v9092 ) = all←v4936;
SOURCE(3250, 43)
   (* (( (ptr) newState←v9092)+40) ) = (* (( (ptr) savedState←v9064)+40) );
SOURCE(3295, 24)
   (* (( (ptr) context←v4908)+1) ) = newState←v9092;
SOURCE(3321, 27)
   return((* (( (ptr) newState←v9092)+38) ));
   }

static void StateRestore←P240(context←v5056, ref←v5084)
   word context←v5056;
   word ref←v5084;
   {
   register ptr gf←c38708 =  (ptr) &globalframe;
   word currentState←v9136;
   word savedState←v9164;
   /* StateRestore: */ 
SOURCE(3352, 634)
SOURCE(3411, 35)
   currentState←v9136 = (* (( (ptr) context←v5056)+1) );
SOURCE(3448, 41)
   savedState←v9164 = (* (( (ptr) currentState←v9136)+38) );
SOURCE(3491, 130)
   if ( ( (ref←v5084 != 0) ? (ref←v5084 != savedState←v9164) : 0 ) ) {
SOURCE(3532, 63)
      {
         W3 var←c072;
         var←c072.f0 = 82;
         var←c072.f1 = (* (( (ptr) gf←c38708)+25) );
         var←c072.f2 = 0;
         (void) (XR←RaiseSignal((*  (ptr) (* (( (ptr) (* (( (ptr) gf←c38708)+112)/* var←c33364 */  ))+7) ) ), 0, (word) &var←c072)
         );
         };
SOURCE(3597, 24)
      savedState←v9164 = XR←Narrow(ref←v5084, (* (( (ptr) gf←c38708)+5) ));
      };
SOURCE(3626, 81)
   if ((savedState←v9164 == 0)) {
SOURCE(3651, 56)
      {
         W3 var←c074;
         var←c074.f0 = 81;
         var←c074.f1 = (* (( (ptr) gf←c38708)+23) );
         var←c074.f2 = 0;
         (void) XR←RaiseError((*  (ptr) (* (( (ptr) (* (( (ptr) gf←c38708)+112)/* var←c33364 */  ))+6) ) ), (word) &var←c074);
         };
      };
SOURCE(3709, 81)
   {
      word var←c33460;
      {
         word var←c33492;
         word c1←v30408;
         word c2←v30436;
         c1←v30408 = (* (( (ptr) currentState←v9136)+1) );
         c2←v30436 = (* (( (ptr) currentState←v9136)+11) );
         var←c33492 = (word) XRM←BITOR(c1←v30408, c2←v30436);
         var←c33460 = var←c33492;
         };
      (* (( (ptr) savedState←v9164)+1) ) = var←c33460;
      };
SOURCE(3792, 103)
   if ((0 == (*  (ptr) currentState←v9136 ))) {
SOURCE(3830, 29)
      (*  (W9Pt) (( (ptr) savedState←v9164)+2) ) = (*  (W9Pt) (( (ptr) currentState←v9136)+2) );
SOURCE(3861, 34)
      (*  (W5Pt) (* (( (ptr) savedState←v9164)+32) ) ) = (*  (W5Pt) (* (( (ptr) currentState←v9136)+32) ) );
      };
SOURCE(3898, 31)
   (* (( (ptr) savedState←v9164)+39) ) = currentState←v9136;
SOURCE(3931, 27)
   (* (( (ptr) currentState←v9136)+38) ) = 0;
SOURCE(3960, 26)
   (* (( (ptr) context←v5056)+1) ) = savedState←v9164;
   }

static void StateSetInt←P300(context←v5156, key←v5184, val←v5212)
   word context←v5156;
   word key←v5184;
   word val←v5212;
   {
   register ptr gf←c38740 =  (ptr) &globalframe;
   word state←v9208;
   /* StateSetInt: */ 
SOURCE(3992, 488)
SOURCE(4078, 28)
   state←v9208 = (* (( (ptr) context←v5156)+1) );
SOURCE(4108, 372)
   {
      word var←c33556;
      var←c33556 = key←v5184;
      switch (var←c33556) {
         case 0: 
SOURCE(4147, 32)
            (* (( (ptr) state←v9208)+12) ) = val←v5212;
SOURCE(4181, 33)
SOURCE(1920, 53)
            {
               word var←c33588;
               {
                  word var←c33620;
                  word c1←v30532;
                  c1←v30532 = (* (( (ptr) state←v9208)+1) );
                  var←c33620 = (word) XRM←BITOR(c1←v30532, 134217728);
                  var←c33588 = var←c33620;
                  };
               (* (( (ptr) state←v9208)+1) ) = var←c33588;
               };
SOURCE(1975, 59)
            {
               word var←c33684;
               {
                  word var←c33716;
                  word c1←v30484;
                  c1←v30484 = (* (( (ptr) state←v9208)+11) );
                  var←c33716 = (word) XRM←BITOR(c1←v30484, 134217728);
                  var←c33684 = var←c33716;
                  };
               (* (( (ptr) state←v9208)+11) ) = var←c33684;
               };
            break;
         case 1: 
SOURCE(4228, 22)
            (* (( (ptr) state←v9208)+19) ) = val←v5212;
            break;
         case 2: 
SOURCE(4265, 24)
            (* (( (ptr) state←v9208)+21) ) = val←v5212;
            break;
         case 3: 
SOURCE(4306, 26)
            (* (( (ptr) state←v9208)+22) ) = val←v5212;
            break;
         case 4: 
SOURCE(4349, 26)
            (* (( (ptr) state←v9208)+25) ) = val←v5212;
            break;
         case 5: 
SOURCE(4394, 19)
            (* (( (ptr) state←v9208)+31) ) = val←v5212;
            break;
         default: 
SOURCE(4426, 54)
            {
               W3 var←c091;
               var←c091.f0 = 103;
               var←c091.f1 = (* (( (ptr) gf←c38740)+22) );
               var←c091.f2 = 0;
               (void) XR←RaiseError((*  (ptr) (* (( (ptr) (* (( (ptr) gf←c38740)+112)/* var←c33364 */  ))+6) ) ), (word) &var←c091);
               };
            break;
         };
      };
   }

static void Realify←P360(dVec←v5272)
   word dVec←v5272;
   {
   register ptr gf←c38772 =  (ptr) &globalframe;
   /* Realify: */ 
SOURCE(4486, 177)
SOURCE(4536, 127)
   if ((0 != (*  (ptr) dVec←v5272 ))) {
SOURCE(4558, 41)
      {
         word var←c33812;
         {
            word var←c33844;
            word a←v30360;
            a←v30360 = (* (( (ptr) dVec←v5272)+1) );
            {
               word pd34;
               pd34 = (* (( (ptr) (* (( (ptr) gf←c38772)+113)/* var←c33908 */  ))+20) );
               var←c33844 = (word) ( *( (fPt) ((*  (ptr) pd34 ))))(a←v30360, pd34);
               };
            var←c33812 = var←c33844;
            };
         (* (( (ptr) dVec←v5272)+3) ) = var←c33812;
         };
SOURCE(4601, 41)
      {
         word var←c33940;
         {
            word var←c33972;
            word a←v30312;
            a←v30312 = (* (( (ptr) dVec←v5272)+2) );
            {
               word pd35;
               pd35 = (* (( (ptr) (* (( (ptr) gf←c38772)+113)/* var←c33908 */  ))+20) );
               var←c33972 = (word) ( *( (fPt) ((*  (ptr) pd35 ))))(a←v30312, pd35);
               };
            var←c33940 = var←c33972;
            };
         (* (( (ptr) dVec←v5272)+4) ) = var←c33940;
         };
SOURCE(4644, 19)
      (*  (ptr) dVec←v5272 ) = 0;
      };
   }

static void StateSetReal←P420(context←v5332, key←v5360, val←v5388)
   word context←v5332;
   word key←v5360;
   word val←v5388;
   {
   register ptr gf←c38804 =  (ptr) &globalframe;
   word state←v9252;
   /* StateSetReal: */ 
SOURCE(4672, 1667)
SOURCE(4761, 28)
   state←v9252 = (* (( (ptr) context←v5332)+1) );
SOURCE(4791, 1548)
   {
      word var←c34036;
      var←c34036 = key←v5360;
      switch (var←c34036) {
         case 0: 
SOURCE(4818, 17)
            (void) Realify←P360((* ((( (ptr) state←v9252)+32)) ));
SOURCE(4837, 19)
            (* (( (ptr) (* (( (ptr) state←v9252)+32) ))+3) ) = val←v5388;
            break;
         case 1: 
SOURCE(4870, 17)
            (void) Realify←P360((* ((( (ptr) state←v9252)+32)) ));
SOURCE(4889, 19)
            (* (( (ptr) (* (( (ptr) state←v9252)+32) ))+4) ) = val←v5388;
            break;
         case 12: 
SOURCE(4924, 191)
            {
               W2 v←v9296;
SOURCE(4926, 93)
               {
                  word pd36;
                  pd36 = (* (( (ptr) (* (( (ptr) gf←c38804)+111)/* var←c33236 */  ))+42) );
                  (void) ( *( (fPt) ((*  (ptr) pd36 ))))((word) &v←v9296, (* (( (ptr) state←v9252)+34) ), (*  (W2Pt) (( (ptr) state←v9252)+2)
                      ), pd36);
                  };
SOURCE(5021, 9)
               v←v9296.f0 = val←v5388;
SOURCE(5032, 81)
               {
                  word pd37;
                  pd37 = (* (( (ptr) (* (( (ptr) gf←c38804)+111)/* var←c33236 */  ))+40) );
                  (void) ( *( (fPt) ((*  (ptr) pd37 ))))((word) (( (bPt) state←v9252)+8), (* (( (ptr) state←v9252)+34) ), v←v9296, pd37);
                  };
               };
            break;
         case 13: 
SOURCE(5131, 191)
            {
               W2 v←v9340;
SOURCE(5133, 93)
               {
                  word pd38;
                  pd38 = (* (( (ptr) (* (( (ptr) gf←c38804)+111)/* var←c33236 */  ))+42) );
                  (void) ( *( (fPt) ((*  (ptr) pd38 ))))((word) &v←v9340, (* (( (ptr) state←v9252)+34) ), (*  (W2Pt) (( (ptr) state←v9252)+2)
                      ), pd38);
                  };
SOURCE(5228, 9)
               v←v9340.f1 = val←v5388;
SOURCE(5239, 81)
               {
                  word pd39;
                  pd39 = (* (( (ptr) (* (( (ptr) gf←c38804)+111)/* var←c33236 */  ))+40) );
                  (void) ( *( (fPt) ((*  (ptr) pd39 ))))((word) (( (bPt) state←v9252)+8), (* (( (ptr) state←v9252)+34) ), v←v9340, pd39);
                  };
               };
            break;
         case 2: 
SOURCE(5340, 27)
            (* (( (ptr) state←v9252)+13) ) = val←v5388;
            break;
         case 3: 
SOURCE(5384, 27)
            (* (( (ptr) state←v9252)+14) ) = val←v5388;
            break;
         case 4: 
SOURCE(5426, 25)
            (* (( (ptr) state←v9252)+15) ) = val←v5388;
            break;
         case 5: 
SOURCE(5466, 25)
            (* (( (ptr) state←v9252)+16) ) = val←v5388;
            break;
         case 6: 
SOURCE(5506, 25)
            (* (( (ptr) state←v9252)+17) ) = val←v5388;
            break;
         case 7: 
SOURCE(5546, 25)
            (* (( (ptr) state←v9252)+18) ) = val←v5388;
            break;
         case 8: 
SOURCE(5588, 26)
            (* (( (ptr) state←v9252)+20) ) = val←v5388;
            break;
         case 9: 
SOURCE(5634, 29)
            (* (( (ptr) state←v9252)+23) ) = val←v5388;
            break;
         case 10: 
SOURCE(5681, 27)
            (* (( (ptr) state←v9252)+24) ) = val←v5388;
            break;
         case 11: 
SOURCE(5727, 28)
            (* (( (ptr) state←v9252)+26) ) = val←v5388;
            break;
         case 14: 
SOURCE(5770, 197)
            {
               W2 v←v9384;
SOURCE(5772, 96)
               {
                  word pd40;
                  pd40 = (* (( (ptr) (* (( (ptr) gf←c38804)+111)/* var←c33236 */  ))+42) );
                  (void) ( *( (fPt) ((*  (ptr) pd40 ))))((word) &v←v9384, (* (( (ptr) state←v9252)+34) ), (*  (W2Pt) (( (ptr) state←v9252)+28)
                      ), pd40);
                  };
SOURCE(5870, 9)
               v←v9384.f0 = val←v5388;
SOURCE(5881, 84)
               {
                  word pd41;
                  pd41 = (* (( (ptr) (* (( (ptr) gf←c38804)+111)/* var←c33236 */  ))+40) );
                  (void) ( *( (fPt) ((*  (ptr) pd41 ))))((word) (( (bPt) state←v9252)+112), (* (( (ptr) state←v9252)+34) ), v←v9384, pd41);
                  };
               };
            break;
         case 15: 
SOURCE(5983, 197)
            {
               W2 v←v9428;
SOURCE(5985, 96)
               {
                  word pd42;
                  pd42 = (* (( (ptr) (* (( (ptr) gf←c38804)+111)/* var←c33236 */  ))+42) );
                  (void) ( *( (fPt) ((*  (ptr) pd42 ))))((word) &v←v9428, (* (( (ptr) state←v9252)+34) ), (*  (W2Pt) (( (ptr) state←v9252)+28)
                      ), pd42);
                  };
SOURCE(6083, 9)
               v←v9428.f1 = val←v5388;
SOURCE(6094, 84)
               {
                  word pd43;
                  pd43 = (* (( (ptr) (* (( (ptr) gf←c38804)+111)/* var←c33236 */  ))+40) );
                  (void) ( *( (fPt) ((*  (ptr) pd43 ))))((word) (( (bPt) state←v9252)+112), (* (( (ptr) state←v9252)+34) ), v←v9428, pd43);
                  };
               };
            break;
         case 17: 
SOURCE(6197, 25)
            (* (( (ptr) state←v9252)+30) ) = val←v5388;
            break;
         case 16: 
SOURCE(6242, 29)
            (* (( (ptr) state←v9252)+27) ) = val←v5388;
            break;
         default: 
SOURCE(6284, 55)
            {
               W3 var←c0117;
               var←c0117.f0 = 103;
               var←c0117.f1 = (* (( (ptr) gf←c38804)+21) );
               var←c0117.f2 = 0;
               (void) XR←RaiseError((*  (ptr) (* (( (ptr) (* (( (ptr) gf←c38804)+112)/* var←c33364 */  ))+6) ) ), (word) &var←c0117);
               };
            break;
         };
      };
   }

static void StateSetT←P480(context←v5448, m←v5476)
   word context←v5448;
   word m←v5476;
   {
   register ptr gf←c38836 =  (ptr) &globalframe;
   word state←v9472;
   word T←v9500;
   /* StateSetT: */ 
SOURCE(6345, 249)
SOURCE(6410, 28)
   state←v9472 = (* (( (ptr) context←v5448)+1) );
SOURCE(6440, 40)
   T←v9500 = (* (( (ptr) state←v9472)+33) );
SOURCE(6499, 7)
   (*  (W10Pt) T←v9500 ) = (*  (W10Pt) m←v5476 );
SOURCE(6508, 59)
   {
      word pd44;
      pd44 = (* (( (ptr) (* (( (ptr) gf←c38836)+111)/* var←c33236 */  ))+30) );
      (void) ( *( (fPt) ((*  (ptr) pd44 ))))(T←v9500, (* (( (ptr) state←v9472)+34) ), pd44);
      };
SOURCE(6569, 25)
SOURCE(1920, 53)
   {
      word var←c34100;
      {
         word var←c34132;
         word c1←v31732;
         c1←v31732 = (* (( (ptr) state←v9472)+1) );
         var←c34132 = (word) XRM←BITOR(c1←v31732, 2147483648);
         var←c34100 = var←c34132;
         };
      (* (( (ptr) state←v9472)+1) ) = var←c34100;
      };
SOURCE(1975, 59)
   {
      word var←c34196;
      {
         word var←c34228;
         word c1←v31780;
         c1←v31780 = (* (( (ptr) state←v9472)+11) );
         var←c34228 = (word) XRM←BITOR(c1←v31780, 2147483648);
         var←c34196 = var←c34228;
         };
      (* (( (ptr) state←v9472)+11) ) = var←c34196;
      };
   }

static void StateSetClipper←P540(context←v5536, clipper←v5564)
   word context←v5536;
   word clipper←v5564;
   {
   word state←v9544;
   /* StateSetClipper: */ 
SOURCE(6600, 192)
SOURCE(6685, 28)
   state←v9544 = (* (( (ptr) context←v5536)+1) );
SOURCE(6715, 44)
   (* (( (ptr) state←v9544)+37) ) = (word) ClipperFromBackdoor←P960(clipper←v5564);
SOURCE(6761, 31)
SOURCE(1920, 53)
   {
      word var←c34292;
      {
         word var←c34324;
         word c1←v31636;
         c1←v31636 = (* (( (ptr) state←v9544)+1) );
         var←c34324 = (word) XRM←BITOR(c1←v31636, 1073741824);
         var←c34292 = var←c34324;
         };
      (* (( (ptr) state←v9544)+1) ) = var←c34292;
      };
SOURCE(1975, 59)
   {
      word var←c34388;
      {
         word var←c34420;
         word c1←v31684;
         c1←v31684 = (* (( (ptr) state←v9544)+11) );
         var←c34420 = (word) XRM←BITOR(c1←v31684, 1073741824);
         var←c34388 = var←c34420;
         };
      (* (( (ptr) state←v9544)+11) ) = var←c34388;
      };
   }

static void StateSetFont←P600(context←v5624, font←v5652)
   word context←v5624;
   word font←v5652;
   {
   word state←v9588;
   /* StateSetFont: */ 
SOURCE(6798, 164)
SOURCE(6859, 28)
   state←v9588 = (* (( (ptr) context←v5624)+1) );
SOURCE(6889, 54)
   if (((* (( (ptr) state←v9588)+35) ) != font←v5652)) {
SOURCE(6915, 28)
SOURCE(1920, 53)
      {
         word var←c34484;
         {
            word var←c34516;
            word c1←v31540;
            c1←v31540 = (* (( (ptr) state←v9588)+1) );
            var←c34516 = (word) XRM←BITOR(c1←v31540, 536870912);
            var←c34484 = var←c34516;
            };
         (* (( (ptr) state←v9588)+1) ) = var←c34484;
         };
SOURCE(1975, 59)
      {
         word var←c34580;
         {
            word var←c34612;
            word c1←v31588;
            c1←v31588 = (* (( (ptr) state←v9588)+11) );
            var←c34612 = (word) XRM←BITOR(c1←v31588, 536870912);
            var←c34580 = var←c34612;
            };
         (* (( (ptr) state←v9588)+11) ) = var←c34580;
         };
      };
SOURCE(6945, 17)
   (* (( (ptr) state←v9588)+35) ) = font←v5652;
   }

static void StateSetColor←P660(context←v5712, color←v5740)
   word context←v5712;
   word color←v5740;
   {
   word state←v9632;
   /* StateSetColor: */ 
SOURCE(6968, 144)
SOURCE(7032, 28)
   state←v9632 = (* (( (ptr) context←v5712)+1) );
SOURCE(7062, 19)
   (* (( (ptr) state←v9632)+36) ) = color←v5740;
SOURCE(7083, 29)
SOURCE(1920, 53)
   {
      word var←c34676;
      {
         word var←c34708;
         word c1←v31444;
         c1←v31444 = (* (( (ptr) state←v9632)+1) );
         var←c34708 = (word) XRM←BITOR(c1←v31444, 268435456);
         var←c34676 = var←c34708;
         };
      (* (( (ptr) state←v9632)+1) ) = var←c34676;
      };
SOURCE(1975, 59)
   {
      word var←c34772;
      {
         word var←c34804;
         word c1←v31492;
         c1←v31492 = (* (( (ptr) state←v9632)+11) );
         var←c34804 = (word) XRM←BITOR(c1←v31492, 268435456);
         var←c34772 = var←c34804;
         };
      (* (( (ptr) state←v9632)+11) ) = var←c34772;
      };
   }

static word StateGetInt←P720(context←v5800, key←v5828)
   word context←v5800;
   word key←v5828;
   {
   register ptr gf←c38868 =  (ptr) &globalframe;
   word var←c5872;
   word state←v9676;
   /* StateGetInt: */ 
SOURCE(7118, 465)
SOURCE(7207, 28)
   state←v9676 = (* (( (ptr) context←v5800)+1) );
SOURCE(7237, 346)
   {
      word var←c34868;
      var←c34868 = key←v5828;
      switch (var←c34868) {
         case 0: 
SOURCE(7274, 34)
            return((* (( (ptr) state←v9676)+12) ));
         case 1: 
SOURCE(7321, 24)
            return((* (( (ptr) state←v9676)+19) ));
         case 2: 
SOURCE(7360, 26)
            return((* (( (ptr) state←v9676)+21) ));
         case 3: 
SOURCE(7403, 28)
            return((* (( (ptr) state←v9676)+22) ));
         case 4: 
SOURCE(7448, 28)
            return((* (( (ptr) state←v9676)+25) ));
         case 5: 
SOURCE(7495, 21)
            return((* (( (ptr) state←v9676)+31) ));
         default: 
SOURCE(7529, 54)
            {
               W3 var←c0161;
               var←c0161.f0 = 103;
               var←c0161.f1 = (* (( (ptr) gf←c38868)+22) );
               var←c0161.f2 = 0;
               (void) XR←RaiseError((*  (ptr) (* (( (ptr) (* (( (ptr) gf←c38868)+112)/* var←c33364 */  ))+6) ) ), (word) &var←c0161);
               };
            break;
         };
      };
   }

static word StateGetReal←P780(context←v5932, key←v5960)
   word context←v5932;
   word key←v5960;
   {
   register ptr gf←c38900 =  (ptr) &globalframe;
   word var←c6004;
   word state←v9720;
   /* StateGetReal: */ 
SOURCE(7589, 1364)
SOURCE(7681, 28)
   state←v9720 = (* (( (ptr) context←v5932)+1) );
SOURCE(7711, 1242)
   {
      word var←c34932;
      var←c34932 = key←v5960;
      switch (var←c34932) {
         case 0: 
SOURCE(7738, 17)
            (void) Realify←P360((* ((( (ptr) state←v9720)+32)) ));
SOURCE(7757, 21)
            return((* (( (ptr) (* (( (ptr) state←v9720)+32) ))+3) ));
         case 1: 
SOURCE(7792, 17)
            (void) Realify←P360((* ((( (ptr) state←v9720)+32)) ));
SOURCE(7811, 21)
            return((* (( (ptr) (* (( (ptr) state←v9720)+32) ))+4) ));
         case 12: 
SOURCE(7848, 109)
            {
               W2 v←v9764;
SOURCE(7850, 93)
               {
                  word pd45;
                  pd45 = (* (( (ptr) (* (( (ptr) gf←c38900)+111)/* var←c33236 */  ))+42) );
                  (void) ( *( (fPt) ((*  (ptr) pd45 ))))((word) &v←v9764, (* (( (ptr) state←v9720)+34) ), (*  (W2Pt) (( (ptr) state←v9720)+2)
                      ), pd45);
                  };
SOURCE(7945, 12)
               return(v←v9764.f0);
               };
         case 13: 
SOURCE(7973, 109)
            {
               W2 v←v9808;
SOURCE(7975, 93)
               {
                  word pd46;
                  pd46 = (* (( (ptr) (* (( (ptr) gf←c38900)+111)/* var←c33236 */  ))+42) );
                  (void) ( *( (fPt) ((*  (ptr) pd46 ))))((word) &v←v9808, (* (( (ptr) state←v9720)+34) ), (*  (W2Pt) (( (ptr) state←v9720)+2)
                      ), pd46);
                  };
SOURCE(8070, 12)
               return(v←v9808.f1);
               };
         case 2: 
SOURCE(8100, 29)
            return((* (( (ptr) state←v9720)+13) ));
         case 3: 
SOURCE(8146, 29)
            return((* (( (ptr) state←v9720)+14) ));
         case 4: 
SOURCE(8190, 27)
            return((* (( (ptr) state←v9720)+15) ));
         case 5: 
SOURCE(8232, 27)
            return((* (( (ptr) state←v9720)+16) ));
         case 6: 
SOURCE(8274, 27)
            return((* (( (ptr) state←v9720)+17) ));
         case 7: 
SOURCE(8316, 27)
            return((* (( (ptr) state←v9720)+18) ));
         case 8: 
SOURCE(8360, 28)
            return((* (( (ptr) state←v9720)+20) ));
         case 9: 
SOURCE(8408, 31)
            return((* (( (ptr) state←v9720)+23) ));
         case 10: 
SOURCE(8457, 29)
            return((* (( (ptr) state←v9720)+24) ));
         case 11: 
SOURCE(8505, 30)
            return((* (( (ptr) state←v9720)+26) ));
         case 14: 
SOURCE(8550, 112)
            {
               W2 v←v9852;
SOURCE(8552, 96)
               {
                  word pd47;
                  pd47 = (* (( (ptr) (* (( (ptr) gf←c38900)+111)/* var←c33236 */  ))+42) );
                  (void) ( *( (fPt) ((*  (ptr) pd47 ))))((word) &v←v9852, (* (( (ptr) state←v9720)+34) ), (*  (W2Pt) (( (ptr) state←v9720)+28)
                      ), pd47);
                  };
SOURCE(8650, 12)
               return(v←v9852.f0);
               };
         case 15: 
SOURCE(8678, 112)
            {
               W2 v←v9896;
SOURCE(8680, 96)
               {
                  word pd48;
                  pd48 = (* (( (ptr) (* (( (ptr) gf←c38900)+111)/* var←c33236 */  ))+42) );
                  (void) ( *( (fPt) ((*  (ptr) pd48 ))))((word) &v←v9896, (* (( (ptr) state←v9720)+34) ), (*  (W2Pt) (( (ptr) state←v9720)+28)
                      ), pd48);
                  };
SOURCE(8778, 12)
               return(v←v9896.f1);
               };
         case 17: 
SOURCE(8807, 27)
            return((* (( (ptr) state←v9720)+30) ));
         case 16: 
SOURCE(8854, 31)
            return((* (( (ptr) state←v9720)+27) ));
         default: 
SOURCE(8898, 55)
            {
               W3 var←c0176;
               var←c0176.f0 = 103;
               var←c0176.f1 = (* (( (ptr) gf←c38900)+21) );
               var←c0176.f2 = 0;
               (void) XR←RaiseError((*  (ptr) (* (( (ptr) (* (( (ptr) gf←c38900)+112)/* var←c33364 */  ))+6) ) ), (word) &var←c0176);
               };
            break;
         };
      };
   }

static word StateGetT←P840(context←v6064)
   word context←v6064;
   {
   register ptr gf←c38932 =  (ptr) &globalframe;
   word var←c6108;
   word state←v9940;
   word m←v9968;
   /* StateGetT: */ 
SOURCE(8959, 240)
SOURCE(9029, 28)
   state←v9940 = (* (( (ptr) context←v6064)+1) );
SOURCE(9059, 67)
   {
      word pd49;
      pd49 = (* (( (ptr) (* (( (ptr) gf←c38932)+111)/* var←c33236 */  ))+51) );
      m←v9968 = (word) ( *( (fPt) ((*  (ptr) pd49 ))))((* ((( (ptr) state←v9940)+34)) ), pd49);
      };
SOURCE(9128, 60)
   {
      word pd50;
      pd50 = (* (( (ptr) (* (( (ptr) gf←c38932)+111)/* var←c33236 */  ))+24) );
      (void) ( *( (fPt) ((*  (ptr) pd50 ))))(m←v9968, (* (( (ptr) state←v9940)+33) ), pd50);
      };
SOURCE(9190, 9)
   return(m←v9968);
   }

static word BackdoorFromClipper←P900(clipper←v6168)
   word clipper←v6168;
   {
   register ptr gf←c38964 =  (ptr) &globalframe;
   word var←c6212;
   /* BackdoorFromClipper: */ 
SOURCE(9205, 333)
SOURCE(9360, 178)
   if ((clipper←v6168 == 0)) {
      return(0);
      }
   else {
      {
         word var←c35028;
         word var←c35060;
         var←c35028 = (word) BackdoorFromClipper←P900((* ((( (ptr) clipper←v6168)+3)) ));
         var←c35060 = XR←NewObject(16, (* (( (ptr) gf←c38964)+20) ));
         (*  (ptr) var←c35060 ) = (*  (ptr) clipper←v6168 );
         (* (( (ptr) var←c35060)+1) ) = (* (( (ptr) clipper←v6168)+1) );
         (* (( (ptr) var←c35060)+2) ) = (* (( (ptr) clipper←v6168)+2) );
         (* (( (ptr) var←c35060)+3) ) = var←c35028;
         return(var←c35060);
         };
      };
   }

static word ClipperFromBackdoor←P960(clipper←v6272)
   word clipper←v6272;
   {
   register ptr gf←c38996 =  (ptr) &globalframe;
   word var←c6316;
   /* ClipperFromBackdoor: */ 
SOURCE(9542, 333)
SOURCE(9697, 178)
   if ((clipper←v6272 == 0)) {
      return(0);
      }
   else {
      {
         word var←c35124;
         word var←c35156;
         var←c35124 = (word) ClipperFromBackdoor←P960((* ((( (ptr) clipper←v6272)+3)) ));
         var←c35156 = XR←NewObject(16, (* (( (ptr) gf←c38996)+18) ));
         (*  (ptr) var←c35156 ) = (*  (ptr) clipper←v6272 );
         (* (( (ptr) var←c35156)+1) ) = (* (( (ptr) clipper←v6272)+1) );
         (* (( (ptr) var←c35156)+2) ) = (* (( (ptr) clipper←v6272)+2) );
         (* (( (ptr) var←c35156)+3) ) = var←c35124;
         return(var←c35156);
         };
      };
   }

static word StateGetClipper←P1020(context←v6376)
   word context←v6376;
   {
   word var←c6420;
   word state←v10012;
   /* StateGetClipper: */ 
SOURCE(9879, 156)
SOURCE(9963, 28)
   state←v10012 = (* (( (ptr) context←v6376)+1) );
SOURCE(9993, 42)
   return((word) BackdoorFromClipper←P900((* ((( (ptr) state←v10012)+37)) )));
   }

static word StateGetFont←P1080(context←v6480)
   word context←v6480;
   {
   word var←c6524;
   word state←v10056;
   /* StateGetFont: */ 
SOURCE(10041, 111)
SOURCE(10104, 28)
   state←v10056 = (* (( (ptr) context←v6480)+1) );
SOURCE(10134, 18)
   return((* (( (ptr) state←v10056)+35) ));
   }

static word StateGetColor←P1140(context←v6584)
   word context←v6584;
   {
   word var←c6628;
   word state←v10100;
   /* StateGetColor: */ 
SOURCE(10158, 114)
SOURCE(10223, 28)
   state←v10100 = (* (( (ptr) context←v6584)+1) );
SOURCE(10253, 19)
   return((* (( (ptr) state←v10100)+36) ));
   }

static void StateGetCP←P1200(formal←c0206, context←v6688, rounded←v6716)
   word formal←c0206;
   word context←v6688;
   word rounded←v6716;
   {
   register ptr gf←c39028 =  (ptr) &globalframe;
   W2 var←c6760;
   word state←v10144;
   W2 p←v10172;
   /* StateGetCP: */ 
SOURCE(10278, 271)
SOURCE(10353, 28)
   state←v10144 = (* (( (ptr) context←v6688)+1) );
SOURCE(10391, 17)
   (void) Realify←P360((* ((( (ptr) state←v10144)+32)) ));
SOURCE(10410, 15)
   p←v10172 = (*  (W2Pt) (( (ptr) (* (( (ptr) state←v10144)+32) ))+3) );
SOURCE(10427, 50)
   if ((0 != rounded←v6716)) {
SOURCE(10443, 34)
      {
         word pd51;
         pd51 = (* (( (ptr) (* (( (ptr) gf←c39028)+111)/* var←c33236 */  ))+43) );
         (void) ( *( (fPt) ((*  (ptr) pd51 ))))((word) &p←v10172, p←v10172, pd51);
         };
      };
SOURCE(10479, 70)
   {
      W2 var←c35252;
      {
         word pd52;
         pd52 = (* (( (ptr) (* (( (ptr) gf←c39028)+111)/* var←c33236 */  ))+41) );
         (void) ( *( (fPt) ((*  (ptr) pd52 ))))((word) &var←c35252, (* (( (ptr) state←v10144)+33) ), p←v10172, pd52);
         };
      var←c6760 = var←c35252;
      /* removed tail goto */ 
      };
   (*  (W2Pt) formal←c0206 ) = var←c6760;
   return;
   }

static void StateConcatT←P1260(context←v6820, m←v6848)
   word context←v6820;
   word m←v6848;
   {
   register ptr gf←c39060 =  (ptr) &globalframe;
   word state←v10216;
   /* StateConcatT: */ 
SOURCE(10555, 185)
SOURCE(10623, 28)
   state←v10216 = (* (( (ptr) context←v6820)+1) );
SOURCE(10653, 60)
   {
      word pd53;
      pd53 = (* (( (ptr) (* (( (ptr) gf←c39060)+111)/* var←c33236 */  ))+24) );
      (void) ( *( (fPt) ((*  (ptr) pd53 ))))((* (( (ptr) state←v10216)+33) ), m←v6848, pd53);
      };
SOURCE(10715, 25)
SOURCE(1920, 53)
   {
      word var←c35284;
      {
         word var←c35316;
         word c1←v31348;
         c1←v31348 = (* (( (ptr) state←v10216)+1) );
         var←c35316 = (word) XRM←BITOR(c1←v31348, 2147483648);
         var←c35284 = var←c35316;
         };
      (* (( (ptr) state←v10216)+1) ) = var←c35284;
      };
SOURCE(1975, 59)
   {
      word var←c35380;
      {
         word var←c35412;
         word c1←v31396;
         c1←v31396 = (* (( (ptr) state←v10216)+11) );
         var←c35412 = (word) XRM←BITOR(c1←v31396, 2147483648);
         var←c35380 = var←c35412;
         };
      (* (( (ptr) state←v10216)+11) ) = var←c35380;
      };
   }

static void StateScale2T←P1320(context←v6908, s←v6936)
   word context←v6908;
   W2 s←v6936;
   {
   register ptr gf←c39092 =  (ptr) &globalframe;
   word state←v10260;
   /* StateScale2T: */ 
SOURCE(10746, 174)
SOURCE(10803, 28)
   state←v10260 = (* (( (ptr) context←v6908)+1) );
SOURCE(10833, 60)
   {
      word pd54;
      pd54 = (* (( (ptr) (* (( (ptr) gf←c39092)+111)/* var←c33236 */  ))+26) );
      (void) ( *( (fPt) ((*  (ptr) pd54 ))))((* (( (ptr) state←v10260)+33) ), s←v6936, pd54);
      };
SOURCE(10895, 25)
SOURCE(1920, 53)
   {
      word var←c35476;
      {
         word var←c35508;
         word c1←v31252;
         c1←v31252 = (* (( (ptr) state←v10260)+1) );
         var←c35508 = (word) XRM←BITOR(c1←v31252, 2147483648);
         var←c35476 = var←c35508;
         };
      (* (( (ptr) state←v10260)+1) ) = var←c35476;
      };
SOURCE(1975, 59)
   {
      word var←c35572;
      {
         word var←c35604;
         word c1←v31300;
         c1←v31300 = (* (( (ptr) state←v10260)+11) );
         var←c35604 = (word) XRM←BITOR(c1←v31300, 2147483648);
         var←c35572 = var←c35604;
         };
      (* (( (ptr) state←v10260)+11) ) = var←c35572;
      };
   }

static void StateRotateT←P1380(context←v6996, a←v7024)
   word context←v6996;
   word a←v7024;
   {
   register ptr gf←c39124 =  (ptr) &globalframe;
   word state←v10304;
   /* StateRotateT: */ 
SOURCE(10926, 175)
SOURCE(10984, 28)
   state←v10304 = (* (( (ptr) context←v6996)+1) );
SOURCE(11014, 60)
   {
      word pd55;
      pd55 = (* (( (ptr) (* (( (ptr) gf←c39124)+111)/* var←c33236 */  ))+27) );
      (void) ( *( (fPt) ((*  (ptr) pd55 ))))((* (( (ptr) state←v10304)+33) ), a←v7024, pd55);
      };
SOURCE(11076, 25)
SOURCE(1920, 53)
   {
      word var←c35668;
      {
         word var←c35700;
         word c1←v31156;
         c1←v31156 = (* (( (ptr) state←v10304)+1) );
         var←c35700 = (word) XRM←BITOR(c1←v31156, 2147483648);
         var←c35668 = var←c35700;
         };
      (* (( (ptr) state←v10304)+1) ) = var←c35668;
      };
SOURCE(1975, 59)
   {
      word var←c35764;
      {
         word var←c35796;
         word c1←v31204;
         c1←v31204 = (* (( (ptr) state←v10304)+11) );
         var←c35796 = (word) XRM←BITOR(c1←v31204, 2147483648);
         var←c35764 = var←c35796;
         };
      (* (( (ptr) state←v10304)+11) ) = var←c35764;
      };
   }

static void StateTranslateT←P1440(context←v7084, t←v7112)
   word context←v7084;
   W2 t←v7112;
   {
   register ptr gf←c39156 =  (ptr) &globalframe;
   word state←v10348;
   /* StateTranslateT: */ 
SOURCE(11107, 180)
SOURCE(11167, 28)
   state←v10348 = (* (( (ptr) context←v7084)+1) );
SOURCE(11197, 63)
   {
      word pd56;
      pd56 = (* (( (ptr) (* (( (ptr) gf←c39156)+111)/* var←c33236 */  ))+28) );
      (void) ( *( (fPt) ((*  (ptr) pd56 ))))((* (( (ptr) state←v10348)+33) ), t←v7112, pd56);
      };
SOURCE(11262, 25)
SOURCE(1920, 53)
   {
      word var←c35860;
      {
         word var←c35892;
         word c1←v31060;
         c1←v31060 = (* (( (ptr) state←v10348)+1) );
         var←c35892 = (word) XRM←BITOR(c1←v31060, 2147483648);
         var←c35860 = var←c35892;
         };
      (* (( (ptr) state←v10348)+1) ) = var←c35860;
      };
SOURCE(1975, 59)
   {
      word var←c35956;
      {
         word var←c35988;
         word c1←v31108;
         c1←v31108 = (* (( (ptr) state←v10348)+11) );
         var←c35988 = (word) XRM←BITOR(c1←v31108, 2147483648);
         var←c35956 = var←c35988;
         };
      (* (( (ptr) state←v10348)+11) ) = var←c35956;
      };
   }

static void StateMove←P1500(context←v7172, rounded←v7200)
   word context←v7172;
   word rounded←v7200;
   {
   register ptr gf←c39188 =  (ptr) &globalframe;
   word state←v10392;
   W2 p←v10420;
   /* StateMove: */ 
SOURCE(11293, 283)
SOURCE(11361, 28)
   state←v10392 = (* (( (ptr) context←v7172)+1) );
SOURCE(11399, 17)
   (void) Realify←P360((* ((( (ptr) state←v10392)+32)) ));
SOURCE(11418, 15)
   p←v10420 = (*  (W2Pt) (( (ptr) (* (( (ptr) state←v10392)+32) ))+3) );
SOURCE(11435, 50)
   if ((0 != rounded←v7200)) {
SOURCE(11451, 34)
      {
         word pd57;
         pd57 = (* (( (ptr) (* (( (ptr) gf←c39188)+111)/* var←c33236 */  ))+43) );
         (void) ( *( (fPt) ((*  (ptr) pd57 ))))((word) &p←v10420, p←v10420, pd57);
         };
      };
SOURCE(11487, 62)
   {
      word pd58;
      pd58 = (* (( (ptr) (* (( (ptr) gf←c39188)+111)/* var←c33236 */  ))+36) );
      (void) ( *( (fPt) ((*  (ptr) pd58 ))))((* (( (ptr) state←v10392)+33) ), p←v10420, pd58);
      };
SOURCE(11551, 25)
SOURCE(1920, 53)
   {
      word var←c36052;
      {
         word var←c36084;
         word c1←v30964;
         c1←v30964 = (* (( (ptr) state←v10392)+1) );
         var←c36084 = (word) XRM←BITOR(c1←v30964, 2147483648);
         var←c36052 = var←c36084;
         };
      (* (( (ptr) state←v10392)+1) ) = var←c36052;
      };
SOURCE(1975, 59)
   {
      word var←c36148;
      {
         word var←c36180;
         word c1←v31012;
         c1←v31012 = (* (( (ptr) state←v10392)+11) );
         var←c36180 = (word) XRM←BITOR(c1←v31012, 2147483648);
         var←c36148 = var←c36180;
         };
      (* (( (ptr) state←v10392)+11) ) = var←c36148;
      };
   }

static void StateSetXY←P1560(context←v7260, p←v7288)
   word context←v7260;
   W2 p←v7288;
   {
   register ptr gf←c39220 =  (ptr) &globalframe;
   word state←v10464;
   /* StateSetXY: */ 
SOURCE(11582, 179)
SOURCE(11637, 28)
   state←v10464 = (* (( (ptr) context←v7260)+1) );
SOURCE(11667, 69)
   {
      word pd59;
      pd59 = (* (( (ptr) (* (( (ptr) gf←c39220)+111)/* var←c33236 */  ))+39) );
      (void) ( *( (fPt) ((*  (ptr) pd59 ))))((word) (( (bPt) (* (( (ptr) state←v10464)+32) ))+12), (* (( (ptr) state←v10464)+33)
          ), p←v7288, pd59);
      };
SOURCE(11738, 23)
   (*  (ptr) (* (( (ptr) state←v10464)+32) ) ) = 0;
   }

static void StateSetXYRel←P1620(context←v7348, v←v7376)
   word context←v7348;
   W2 v←v7376;
   {
   register ptr gf←c39252 =  (ptr) &globalframe;
   word state←v10508;
   /* StateSetXYRel: */ 
SOURCE(11767, 202)
SOURCE(11825, 28)
   state←v10508 = (* (( (ptr) context←v7348)+1) );
SOURCE(11855, 17)
   (void) Realify←P360((* ((( (ptr) state←v10508)+32)) ));
SOURCE(11874, 95)
   {
      W2 var←c36244;
      {
         W2 var←c36276;
         W2 v1←v30236;
         W2 v2←v30264;
         v1←v30236 = (*  (W2Pt) (( (ptr) (* (( (ptr) state←v10508)+32) ))+3) );
         {
            word pd60;
            pd60 = (* (( (ptr) (* (( (ptr) gf←c39252)+111)/* var←c33236 */  ))+40) );
            (void) ( *( (fPt) ((*  (ptr) pd60 ))))((word) &v2←v30264, (* (( (ptr) state←v10508)+33) ), v←v7376, pd60);
            };
         {
            word x61;
            word x62;
            *(float*)&var←c36276.f0 = (
               x61 = v1←v30236.f0,  *(float*)&x61
               ) + (
               x62 = v2←v30264.f0,  *(float*)&x62
               );
            };
         {
            word x63;
            word x64;
            *(float*)&var←c36276.f1 = (
               x63 = v1←v30236.f1,  *(float*)&x63
               ) + (
               x64 = v2←v30264.f1,  *(float*)&x64
               );
            };
         var←c36244 = var←c36276;
         };
      (*  (W2Pt) (( (ptr) (* (( (ptr) state←v10508)+32) ))+3) ) = var←c36244;
      };
   }

static void StateSetGray←P1680(context←v7436, f←v7464)
   word context←v7436;
   word f←v7464;
   {
   register ptr gf←c39284 =  (ptr) &globalframe;
   word state←v10552;
   /* StateSetGray: */ 
SOURCE(11975, 151)
SOURCE(12033, 28)
   state←v10552 = (* (( (ptr) context←v7436)+1) );
SOURCE(12063, 32)
   {
      word pd65;
      pd65 = (* (( (ptr) (* (( (ptr) gf←c39284)+112)/* var←c33364 */  ))+53) );
      (* (( (ptr) state←v10552)+36) ) = (word) ( *( (fPt) ((*  (ptr) pd65 ))))(f←v7464, pd65);
      };
SOURCE(12097, 29)
SOURCE(1920, 53)
   {
      word var←c36340;
      {
         word var←c36372;
         word c1←v30868;
         c1←v30868 = (* (( (ptr) state←v10552)+1) );
         var←c36372 = (word) XRM←BITOR(c1←v30868, 268435456);
         var←c36340 = var←c36372;
         };
      (* (( (ptr) state←v10552)+1) ) = var←c36340;
      };
SOURCE(1975, 59)
   {
      word var←c36436;
      {
         word var←c36468;
         word c1←v30916;
         c1←v30916 = (* (( (ptr) state←v10552)+11) );
         var←c36468 = (word) XRM←BITOR(c1←v30916, 268435456);
         var←c36436 = var←c36468;
         };
      (* (( (ptr) state←v10552)+11) ) = var←c36436;
      };
   }

static void StateSetSampledColor←P1740(context←v7524, pa←v7552, m←v7580, colorOperator←v7608)
   word context←v7524;
   word pa←v7552;
   word m←v7580;
   word colorOperator←v7608;
   {
   register ptr gf←c39316 =  (ptr) &globalframe;
   word state←v10596;
   word um←v10624;
   /* StateSetSampledColor: */ 
SOURCE(12132, 391)
SOURCE(12255, 28)
   state←v10596 = (* (( (ptr) context←v7524)+1) );
SOURCE(12285, 39)
   um←v10624 = (word) StateGetT←P840(context←v7524);
SOURCE(12344, 42)
   {
      word pd66;
      pd66 = (* (( (ptr) (* (( (ptr) gf←c39316)+111)/* var←c33236 */  ))+24) );
      (void) ( *( (fPt) ((*  (ptr) pd66 ))))(um←v10624, m←v7580, pd66);
      };
SOURCE(12404, 88)
   {
      word pd67;
      pd67 = (* (( (ptr) (* (( (ptr) gf←c39316)+114)/* var←c36532 */  ))+10) );
      (* (( (ptr) state←v10596)+36) ) = (word) ( *( (fPt) ((*  (ptr) pd67 ))))(pa←v7552, um←v10624, colorOperator←v7608, pd67);
      };
SOURCE(12494, 29)
SOURCE(1920, 53)
   {
      word var←c36564;
      {
         word var←c36596;
         word c1←v30772;
         c1←v30772 = (* (( (ptr) state←v10596)+1) );
         var←c36596 = (word) XRM←BITOR(c1←v30772, 268435456);
         var←c36564 = var←c36596;
         };
      (* (( (ptr) state←v10596)+1) ) = var←c36564;
      };
SOURCE(1975, 59)
   {
      word var←c36660;
      {
         word var←c36692;
         word c1←v30820;
         c1←v30820 = (* (( (ptr) state←v10596)+11) );
         var←c36692 = (word) XRM←BITOR(c1←v30820, 268435456);
         var←c36660 = var←c36692;
         };
      (* (( (ptr) state←v10596)+11) ) = var←c36660;
      };
   }

static void StateSetSampledBlack←P1800(context←v7668, pa←v7696, m←v7724, clear←v7752)
   word context←v7668;
   word pa←v7696;
   word m←v7724;
   word clear←v7752;
   {
   register ptr gf←c39348 =  (ptr) &globalframe;
   word state←v10668;
   word um←v10696;
   /* StateSetSampledBlack: */ 
SOURCE(12529, 358)
SOURCE(12635, 28)
   state←v10668 = (* (( (ptr) context←v7668)+1) );
SOURCE(12665, 39)
   um←v10696 = (word) StateGetT←P840(context←v7668);
SOURCE(12724, 42)
   {
      word pd68;
      pd68 = (* (( (ptr) (* (( (ptr) gf←c39348)+111)/* var←c33236 */  ))+24) );
      (void) ( *( (fPt) ((*  (ptr) pd68 ))))(um←v10696, m←v7724, pd68);
      };
SOURCE(12784, 72)
   {
      word pd69;
      pd69 = (* (( (ptr) (* (( (ptr) gf←c39348)+114)/* var←c36532 */  ))+9) );
      (* (( (ptr) state←v10668)+36) ) = (word) ( *( (fPt) ((*  (ptr) pd69 ))))(pa←v7696, um←v10696, clear←v7752, pd69);
      };
SOURCE(12858, 29)
SOURCE(1920, 53)
   {
      word var←c36756;
      {
         word var←c36788;
         word c1←v30676;
         c1←v30676 = (* (( (ptr) state←v10668)+1) );
         var←c36788 = (word) XRM←BITOR(c1←v30676, 268435456);
         var←c36756 = var←c36788;
         };
      (* (( (ptr) state←v10668)+1) ) = var←c36756;
      };
SOURCE(1975, 59)
   {
      word var←c36852;
      {
         word var←c36884;
         word c1←v30724;
         c1←v30724 = (* (( (ptr) state←v10668)+11) );
         var←c36884 = (word) XRM←BITOR(c1←v30724, 268435456);
         var←c36852 = var←c36884;
         };
      (* (( (ptr) state←v10668)+11) ) = var←c36852;
      };
   }

static void StateStartUnderline←P1860(context←v7812)
   word context←v7812;
   {
   register ptr gf←c39380 =  (ptr) &globalframe;
   word state←v10740;
   /* StateStartUnderline: */ 
SOURCE(12893, 205)
SOURCE(12949, 28)
   state←v10740 = (* (( (ptr) context←v7812)+1) );
SOURCE(12979, 17)
   (void) Realify←P360((* ((( (ptr) state←v10740)+32)) ));
SOURCE(12998, 100)
   {
      word var←c36948;
      W2 var←c0302;
      {
         word pd70;
         pd70 = (* (( (ptr) (* (( (ptr) gf←c39380)+111)/* var←c33236 */  ))+41) );
         (void) ( *( (fPt) ((*  (ptr) pd70 ))))((word) &var←c0302, (* (( (ptr) state←v10740)+33) ), (*  (W2Pt) (( (ptr) (* (( (ptr) state←v10740)+32)
                ))+3) ), pd70);
         };
      var←c36948 = var←c0302.f0;
      (* (( (ptr) state←v10740)+23) ) = var←c36948;
      };
   }

static void StateMaskUnderline←P1920(formal←c0486, dy←v7900, formal←c0487)
   word formal←c0486;
   word dy←v7900;
   word formal←c0487;
   {
   W12 var←c39412;
   /* declaration of context←v7872 skipped */ 
   /* declaration of h←v7928 skipped */ 
   register ptr gf←c39444 =  (ptr) &globalframe;
   /* declaration of var←c36980 skipped */ 
   word state←v10784;
   /* declaration of p2←v10812 skipped */ 
   /* declaration of p1←v10840 skipped */ 
   (* (( (ptr) &var←c39412)+4)/* context←v7872 */  ) = formal←c0486;
   (* (( (ptr) &var←c39412)+5)/* h←v7928 */  ) = formal←c0487;
   /* StateMaskUnderline: */ 
SOURCE(13104, 435)
   {
      word tmpAddr71;
      tmpAddr71 = (word) (( (ptr) &var←c39412)+6)/* var←c36980 */ ;
      (*  (ptr) tmpAddr71 ) = ( ((word)  (fPt) underline←P2964) );
      (* (( (ptr) tmpAddr71) + 1) ) = 1;
      };
SOURCE(13172, 28)
   state←v10784 = (* (( (ptr) (* (( (ptr) &var←c39412)+4)/* context←v7872 */  ))+1) );
SOURCE(13202, 54)
   (void) StateGetCP←P1200((word) (( (bPt) &var←c39412)+32)/* p2←v10812 */ , (* (( (ptr) &var←c39412)+4)/* context←v7872 */  ), 0)
   ;
SOURCE(13294, 46)
   (* (( (ptr) &var←c39412)+10) ) = (* (( (ptr) state←v10784)+23) );
   {
      word x72;
      word x73;
      word x74;
      *(float*)(( (ptr) &var←c39412)+11) = ((
         x72 = (* (( (ptr) &var←c39412)+9) ),  *(float*)&x72
         ) - (
         x73 = dy←v7900,  *(float*)&x73
         )) - (
         x74 = (* (( (ptr) &var←c39412)+5)/* h←v7928 */  ),  *(float*)&x74
         );
      };
SOURCE(13503, 36)
   {
      word pd75;
      pd75 = (* (( (ptr) (* (( (ptr) gf←c39444)+112)/* var←c33364 */  ))+13) );
      (void) ( *( (fPt) ((*  (ptr) pd75 ))))((* (( (ptr) &var←c39412)+4)/* context←v7872 */  ), (word) (( (bPt) &var←c39412)+24)
         /* var←c36980 */ , pd75);
      };
   }

static void underline←P2964(formal←c39508)
   word formal←c39508;
   {
   register ptr gf←c39476 =  (ptr) &globalframe;
   formal←c39508 = (formal←c39508 - 24);
   /* underline: */ 
SOURCE(13377, 121)
SOURCE(13397, 25)
   {
      word pd76;
      pd76 = (* (( (ptr) (* (( (ptr) gf←c39476)+112)/* var←c33364 */  ))+21) );
      (void) ( *( (fPt) ((*  (ptr) pd76 ))))((* (( (ptr) formal←c39508)+4) ), (*  (W2Pt) (( (ptr) formal←c39508)+10) ), pd76);
      };
SOURCE(13424, 21)
   {
      word pd77;
      pd77 = (* (( (ptr) (* (( (ptr) gf←c39476)+112)/* var←c33364 */  ))+20) );
      (void) ( *( (fPt) ((*  (ptr) pd77 ))))((* ((( (ptr) formal←c39508)+4)) ), pd77);
      };
SOURCE(13447, 51)
   {
      W4 var←c37044;
      var←c37044.f0 = (*  (ptr) &fc27 );
      var←c37044.f1 = (*  (ptr) &fc27 );
      {
         word x78;
         word x79;
         *(float*)&var←c37044.f2 = (
            x78 = (* (( (ptr) formal←c39508)+8) ),  *(float*)&x78
            ) - (
            x79 = (* (( (ptr) formal←c39508)+10) ),  *(float*)&x79
            );
         };
      var←c37044.f3 = (* (( (ptr) formal←c39508)+5) );
      {
         word pd80;
         pd80 = (* (( (ptr) (* (( (ptr) gf←c39476)+112)/* var←c33364 */  ))+65) );
         (void) ( *( (fPt) ((*  (ptr) pd80 ))))((* (( (ptr) formal←c39508)+4) ), var←c37044, pd80);
         };
      };
   }

static void StateClip←P1980(context←v7988, path←v8016, oddWrap←v8044, exclude←v8072)
   word context←v7988;
   word path←v8016;
   word oddWrap←v8044;
   word exclude←v8072;
   {
   register ptr gf←c39540 =  (ptr) &globalframe;
   word state←v10928;
   word T←v10956;
   word outline←v10984;
   /* StateClip: */ 
SOURCE(13545, 384)
SOURCE(13637, 28)
   state←v10928 = (* (( (ptr) context←v7988)+1) );
SOURCE(13667, 38)
   T←v10956 = (word) StateGetT←P840(context←v7988);
SOURCE(13707, 63)
   {
      word pd81;
      pd81 = (* (( (ptr) (* (( (ptr) gf←c39540)+115)/* var←c37076 */  ))+21) );
      outline←v10984 = (word) ( *( (fPt) ((*  (ptr) pd81 ))))(path←v8016, 0, T←v10956, pd81);
      };
SOURCE(13772, 31)
   {
      word pd82;
      pd82 = (* (( (ptr) (* (( (ptr) gf←c39540)+111)/* var←c33236 */  ))+5) );
      (void) ( *( (fPt) ((*  (ptr) pd82 ))))(T←v10956, pd82);
      };
SOURCE(13805, 91)
   {
      word var←c37108;
      var←c37108 = XR←NewObject(16, (* (( (ptr) gf←c39540)+18) ));
      (*  (ptr) var←c37108 ) = outline←v10984;
      (* (( (ptr) var←c37108)+1) ) = oddWrap←v8044;
      (* (( (ptr) var←c37108)+2) ) = exclude←v8072;
      (* (( (ptr) var←c37108)+3) ) = (* (( (ptr) state←v10928)+37) );
      (* (( (ptr) state←v10928)+37) ) = var←c37108;
      };
SOURCE(13898, 31)
SOURCE(1920, 53)
   {
      word var←c37140;
      {
         word var←c37172;
         word c1←v30580;
         c1←v30580 = (* (( (ptr) state←v10928)+1) );
         var←c37172 = (word) XRM←BITOR(c1←v30580, 1073741824);
         var←c37140 = var←c37172;
         };
      (* (( (ptr) state←v10928)+1) ) = var←c37140;
      };
SOURCE(1975, 59)
   {
      word var←c37236;
      {
         word var←c37268;
         word c1←v30628;
         c1←v30628 = (* (( (ptr) state←v10928)+11) );
         var←c37268 = (word) XRM←BITOR(c1←v30628, 1073741824);
         var←c37236 = var←c37268;
         };
      (* (( (ptr) state←v10928)+11) ) = var←c37236;
      };
   }

static void StateClipRectangle←P2040(context←v8132, formal←c0488, exclude←v8188)
   word context←v8132;
   W4 formal←c0488;
   word exclude←v8188;
   {
   W10 var←c39572;
   /* declaration of r←v8160 skipped */ 
   register ptr gf←c39604 =  (ptr) &globalframe;
   /* declaration of var←c37332 skipped */ 
   (*  (W4Pt) (( (ptr) &var←c39572)+4)/* r←v8160 */  ) = formal←c0488;
   /* StateClipRectangle: */ 
SOURCE(13935, 277)
   {
      word tmpAddr83;
      tmpAddr83 = (word) (( (ptr) &var←c39572)+8)/* var←c37332 */ ;
      (*  (ptr) tmpAddr83 ) = ( ((word)  (fPt) path←P3024) );
      (* (( (ptr) tmpAddr83) + 1) ) = 1;
      };
SOURCE(14137, 75)
   {
      word pd84;
      pd84 = (* (( (ptr) (* (( (ptr) gf←c39604)+112)/* var←c33364 */  ))+81) );
      (void) ( *( (fPt) ((*  (ptr) pd84 ))))(context←v8132, (word) (( (bPt) &var←c39572)+32)/* var←c37332 */ , 0, exclude←v8188, pd84)
      ;
      };
   }

static void path←P3024(moveTo←v28536, lineTo←v28564, curveTo←v28592, conicTo←v28620, arcTo←v28648, formal←c39636)
   word moveTo←v28536;
   word lineTo←v28564;
   word curveTo←v28592;
   word conicTo←v28620;
   word arcTo←v28648;
   word formal←c39636;
   {
   formal←c39636 = (formal←c39636 - 32);
   /* path: */ 
SOURCE(14019, 113)
SOURCE(14038, 18)
   {
      W2 var←c37364;
      var←c37364.f0 = (* (( (ptr) formal←c39636)+4) );
      var←c37364.f1 = (* (( (ptr) formal←c39636)+5) );
      (void) ( *( (fPt) ((*  (ptr) moveTo←v28536 ))))(var←c37364, moveTo←v28536);
      };
SOURCE(14058, 22)
   {
      W2 var←c37396;
      {
         word x85;
         word x86;
         *(float*)&var←c37396.f0 = (
            x85 = (* (( (ptr) formal←c39636)+4) ),  *(float*)&x85
            ) + (
            x86 = (* (( (ptr) formal←c39636)+6) ),  *(float*)&x86
            );
         };
      var←c37396.f1 = (* (( (ptr) formal←c39636)+5) );
      (void) ( *( (fPt) ((*  (ptr) lineTo←v28564 ))))(var←c37396, lineTo←v28564);
      };
SOURCE(14082, 26)
   {
      W2 var←c37428;
      {
         word x87;
         word x88;
         *(float*)&var←c37428.f0 = (
            x87 = (* (( (ptr) formal←c39636)+4) ),  *(float*)&x87
            ) + (
            x88 = (* (( (ptr) formal←c39636)+6) ),  *(float*)&x88
            );
         };
      {
         word x89;
         word x90;
         *(float*)&var←c37428.f1 = (
            x89 = (* (( (ptr) formal←c39636)+5) ),  *(float*)&x89
            ) + (
            x90 = (* (( (ptr) formal←c39636)+7) ),  *(float*)&x90
            );
         };
      (void) ( *( (fPt) ((*  (ptr) lineTo←v28564 ))))(var←c37428, lineTo←v28564);
      };
SOURCE(14110, 22)
   {
      W2 var←c37460;
      var←c37460.f0 = (* (( (ptr) formal←c39636)+4) );
      {
         word x91;
         word x92;
         *(float*)&var←c37460.f1 = (
            x91 = (* (( (ptr) formal←c39636)+5) ),  *(float*)&x91
            ) + (
            x92 = (* (( (ptr) formal←c39636)+7) ),  *(float*)&x92
            );
         };
      (void) ( *( (fPt) ((*  (ptr) lineTo←v28564 ))))(var←c37460, lineTo←v28564);
      };
   }

static void StateClipRectangleI←P2100(context←v8248, formal←c0489, formal←c0490, formal←c0491, formal←c0492, exclude←v8388)
   word context←v8248;
   word formal←c0489;
   word formal←c0490;
   word formal←c0491;
   word formal←c0492;
   word exclude←v8388;
   {
   W10 var←c39668;
   /* declaration of x←v8276 skipped */ 
   /* declaration of y←v8304 skipped */ 
   /* declaration of w←v8332 skipped */ 
   /* declaration of h←v8360 skipped */ 
   register ptr gf←c39700 =  (ptr) &globalframe;
   /* declaration of var←c37492 skipped */ 
   (* (( (ptr) &var←c39668)+4)/* x←v8276 */  ) = formal←c0489;
   (* (( (ptr) &var←c39668)+5)/* y←v8304 */  ) = formal←c0490;
   (* (( (ptr) &var←c39668)+6)/* w←v8332 */  ) = formal←c0491;
   (* (( (ptr) &var←c39668)+7)/* h←v8360 */  ) = formal←c0492;
   /* StateClipRectangleI: */ 
SOURCE(14218, 261)
   {
      word tmpAddr93;
      tmpAddr93 = (word) (( (ptr) &var←c39668)+8)/* var←c37492 */ ;
      (*  (ptr) tmpAddr93 ) = ( ((word)  (fPt) path←P3084) );
      (* (( (ptr) tmpAddr93) + 1) ) = 1;
      };
SOURCE(14404, 75)
   {
      word pd94;
      pd94 = (* (( (ptr) (* (( (ptr) gf←c39700)+112)/* var←c33364 */  ))+81) );
      (void) ( *( (fPt) ((*  (ptr) pd94 ))))(context←v8248, (word) (( (bPt) &var←c39668)+32)/* var←c37492 */ , 0, exclude←v8388, pd94)
      ;
      };
   }

static void path←P3084(moveTo←v28708, lineTo←v28736, curveTo←v28764, conicTo←v28792, arcTo←v28820, formal←c39732)
   word moveTo←v28708;
   word lineTo←v28736;
   word curveTo←v28764;
   word conicTo←v28792;
   word arcTo←v28820;
   word formal←c39732;
   {
   formal←c39732 = (formal←c39732 - 32);
   /* path: */ 
SOURCE(14310, 89)
SOURCE(14329, 14)
   {
      W2 var←c37524;
      {
         float tf95;
         var←c37524.f0 = (
            tf95 = (float)(int)(* (( (ptr) formal←c39732)+4) ),  *(word*)&tf95
            );
         };
      {
         float tf96;
         var←c37524.f1 = (
            tf96 = (float)(int)(* (( (ptr) formal←c39732)+5) ),  *(word*)&tf96
            );
         };
      (void) ( *( (fPt) ((*  (ptr) moveTo←v28708 ))))(var←c37524, moveTo←v28708);
      };
SOURCE(14345, 16)
   {
      W2 var←c37556;
      {
         float tf97;
         var←c37556.f0 = (
            tf97 = (float)(int)((* (( (ptr) formal←c39732)+4) ) + (* (( (ptr) formal←c39732)+6) )),  *(word*)&tf97
            );
         };
      {
         float tf98;
         var←c37556.f1 = (
            tf98 = (float)(int)(* (( (ptr) formal←c39732)+5) ),  *(word*)&tf98
            );
         };
      (void) ( *( (fPt) ((*  (ptr) lineTo←v28736 ))))(var←c37556, lineTo←v28736);
      };
SOURCE(14363, 18)
   {
      W2 var←c37588;
      {
         float tf99;
         var←c37588.f0 = (
            tf99 = (float)(int)((* (( (ptr) formal←c39732)+4) ) + (* (( (ptr) formal←c39732)+6) )),  *(word*)&tf99
            );
         };
      {
         float tf100;
         var←c37588.f1 = (
            tf100 = (float)(int)((* (( (ptr) formal←c39732)+5) ) + (* (( (ptr) formal←c39732)+7) )),  *(word*)&tf100
            );
         };
      (void) ( *( (fPt) ((*  (ptr) lineTo←v28736 ))))(var←c37588, lineTo←v28736);
      };
SOURCE(14383, 16)
   {
      W2 var←c37620;
      {
         float tf101;
         var←c37620.f0 = (
            tf101 = (float)(int)(* (( (ptr) formal←c39732)+4) ),  *(word*)&tf101
            );
         };
      {
         float tf102;
         var←c37620.f1 = (
            tf102 = (float)(int)((* (( (ptr) formal←c39732)+5) ) + (* (( (ptr) formal←c39732)+7) )),  *(word*)&tf102
            );
         };
      (void) ( *( (fPt) ((*  (ptr) lineTo←v28736 ))))(var←c37620, lineTo←v28736);
      };
   }

static void StateCorrectMask←P2160(context←v8448)
   word context←v8448;
   {
   word state←v11116;
   /* StateCorrectMask: */ 
SOURCE(14485, 381)
SOURCE(14538, 28)
   state←v11116 = (* (( (ptr) context←v8448)+1) );
SOURCE(14568, 298)
   if (( (int)(* (( (ptr) state←v11116)+25) ) !=  (int)0)) {
SOURCE(14601, 265)
      {
         word var←c37652;
         var←c37652 = (* (( (ptr) state←v11116)+25) );
         if (( (int)var←c37652 ==  (int)1)) {
SOURCE(14639, 53)
            (* (( (ptr) state←v11116)+4) ) = ((* (( (ptr) state←v11116)+4) ) + 1);
            }
         else {
            if (( (int)var←c37652 ==  (int)2)) {
SOURCE(14699, 167)
               if (( (int)(* (( (ptr) state←v11116)+4) ) !=  (int)0)) {
SOURCE(14736, 17)
                  (void) Realify←P360((* ((( (ptr) state←v11116)+32)) ));
SOURCE(14755, 56)
                  {
                     W2 var←c37684;
                     W2 v1←v30160;
                     W2 v2←v30188;
                     v1←v30160 = (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11116)+32) ))+3) );
                     v2←v30188 = (*  (W2Pt) (( (ptr) state←v11116)+7) );
                     {
                        word x103;
                        word x104;
                        *(float*)&var←c37684.f0 = (
                           x103 = v1←v30160.f0,  *(float*)&x103
                           ) + (
                           x104 = v2←v30188.f0,  *(float*)&x104
                           );
                        };
                     {
                        word x105;
                        word x106;
                        *(float*)&var←c37684.f1 = (
                           x105 = v1←v30160.f1,  *(float*)&x105
                           ) + (
                           x106 = v2←v30188.f1,  *(float*)&x106
                           );
                        };
                     (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11116)+32) ))+3) ) = var←c37684;
                     };
SOURCE(14813, 53)
                  (* (( (ptr) state←v11116)+4) ) = ((* (( (ptr) state←v11116)+4) ) - 1);
                  };
               };
            };
         };
      };
   }

static void StateCorrectSpace←P2220(context←v8508, v←v8536)
   word context←v8508;
   W2 v←v8536;
   {
   register ptr gf←c39764 =  (ptr) &globalframe;
   word state←v11160;
   /* StateCorrectSpace: */ 
SOURCE(14887, 383)
SOURCE(14949, 28)
   state←v11160 = (* (( (ptr) context←v8508)+1) );
SOURCE(14979, 291)
   if (( (int)(* (( (ptr) state←v11160)+25) ) !=  (int)0)) {
SOURCE(15010, 274)
      {
         W2 s←v11204;
SOURCE(15012, 67)
         {
            word pd107;
            pd107 = (* (( (ptr) (* (( (ptr) gf←c39764)+111)/* var←c33236 */  ))+40) );
            (void) ( *( (fPt) ((*  (ptr) pd107 ))))((word) &s←v11204, (* (( (ptr) state←v11160)+33) ), v←v8536, pd107);
            };
SOURCE(15081, 189)
         {
            word var←c37748;
            var←c37748 = (* (( (ptr) state←v11160)+25) );
            if (( (int)var←c37748 ==  (int)1)) {
SOURCE(15119, 52)
               {
                  W2 var←c37780;
                  W2 v1←v30112;
                  v1←v30112 = (*  (W2Pt) (( (ptr) state←v11160)+5) );
                  {
                     word x108;
                     word x109;
                     *(float*)&var←c37780.f0 = (
                        x108 = v1←v30112.f0,  *(float*)&x108
                        ) + (
                        x109 = s←v11204.f0,  *(float*)&x109
                        );
                     };
                  {
                     word x110;
                     word x111;
                     *(float*)&var←c37780.f1 = (
                        x110 = v1←v30112.f1,  *(float*)&x110
                        ) + (
                        x111 = s←v11204.f1,  *(float*)&x111
                        );
                     };
                  (*  (W2Pt) (( (ptr) state←v11160)+5) ) = var←c37780;
                  };
               }
            else {
               if (( (int)var←c37748 ==  (int)2)) {
SOURCE(15180, 17)
                  (void) Realify←P360((* ((( (ptr) state←v11160)+32)) ));
SOURCE(15199, 71)
                  {
                     W2 var←c37844;
                     W2 v1←v30036;
                     W2 v2←v30064;
                     v1←v30036 = (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11160)+32) ))+3) );
                     {
                        W2 v1←v29816;
                        v1←v29816 = (*  (W2Pt) (( (ptr) state←v11160)+9) );
                        {
                           word x112;
                           word x113;
                           *(float*)&v2←v30064.f0 = (
/*1*/   x112 = v1←v29816.f0,  *(float*)&x112
/*1*/   ) * (
/*1*/   x113 = s←v11204.f0,  *(float*)&x113
/*1*/   );
                           };
                        {
                           word x114;
                           word x115;
                           *(float*)&v2←v30064.f1 = (
/*1*/   x114 = v1←v29816.f1,  *(float*)&x114
/*1*/   ) * (
/*1*/   x115 = s←v11204.f1,  *(float*)&x115
/*1*/   );
                           };
                        };
                     {
                        word x116;
                        word x117;
                        *(float*)&var←c37844.f0 = (
                           x116 = v1←v30036.f0,  *(float*)&x116
                           ) + (
                           x117 = v2←v30064.f0,  *(float*)&x117
                           );
                        };
                     {
                        word x118;
                        word x119;
                        *(float*)&var←c37844.f1 = (
                           x118 = v1←v30036.f1,  *(float*)&x118
                           ) + (
                           x119 = v2←v30064.f1,  *(float*)&x119
                           );
                        };
                     (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11160)+32) ))+3) ) = var←c37844;
                     };
                  };
               };
            };
         };
      };
   }

static void StateSpace←P2280(context←v8596, x←v8624)
   word context←v8596;
   word x←v8624;
   {
   register ptr gf←c39796 =  (ptr) &globalframe;
   word state←v11248;
   W2 s←v11276;
   /* StateSpace: */ 
SOURCE(15291, 398)
SOURCE(15347, 28)
   state←v11248 = (* (( (ptr) context←v8596)+1) );
SOURCE(15377, 72)
   {
      W2 var←c0378;
      {
         W2 var←c37972;
         var←c37972.f0 = x←v8624;
         var←c37972.f1 = (*  (ptr) &fc27 );
         {
            word pd120;
            pd120 = (* (( (ptr) (* (( (ptr) gf←c39796)+111)/* var←c33236 */  ))+40) );
            (void) ( *( (fPt) ((*  (ptr) pd120 ))))((word) &var←c0378, (* (( (ptr) state←v11248)+33) ), var←c37972, pd120);
            };
         };
      s←v11276 = var←c0378;
      };
SOURCE(15451, 17)
   (void) Realify←P360((* ((( (ptr) state←v11248)+32)) ));
SOURCE(15470, 38)
   {
      W2 var←c38004;
      W2 v1←v29988;
      v1←v29988 = (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11248)+32) ))+3) );
      {
         word x121;
         word x122;
         *(float*)&var←c38004.f0 = (
            x121 = v1←v29988.f0,  *(float*)&x121
            ) + (
            x122 = s←v11276.f0,  *(float*)&x122
            );
         };
      {
         word x123;
         word x124;
         *(float*)&var←c38004.f1 = (
            x123 = v1←v29988.f1,  *(float*)&x123
            ) + (
            x124 = s←v11276.f1,  *(float*)&x124
            );
         };
      (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11248)+32) ))+3) ) = var←c38004;
      };
SOURCE(15510, 179)
   {
      word var←c38068;
      var←c38068 = (* (( (ptr) state←v11248)+25) );
      switch (var←c38068) {
         case 0: 
            break;
         case 1: 
SOURCE(15559, 52)
            {
               W2 var←c38100;
               W2 v1←v29940;
               v1←v29940 = (*  (W2Pt) (( (ptr) state←v11248)+5) );
               {
                  word x125;
                  word x126;
                  *(float*)&var←c38100.f0 = (
                     x125 = v1←v29940.f0,  *(float*)&x125
                     ) + (
                     x126 = s←v11276.f0,  *(float*)&x126
                     );
                  };
               {
                  word x127;
                  word x128;
                  *(float*)&var←c38100.f1 = (
                     x127 = v1←v29940.f1,  *(float*)&x127
                     ) + (
                     x128 = s←v11276.f1,  *(float*)&x128
                     );
                  };
               (*  (W2Pt) (( (ptr) state←v11248)+5) ) = var←c38100;
               };
            break;
         case 2: 
SOURCE(15618, 71)
            {
               W2 var←c38164;
               W2 v1←v29864;
               W2 v2←v29892;
               v1←v29864 = (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11248)+32) ))+3) );
               {
                  W2 v1←v29768;
                  v1←v29768 = (*  (W2Pt) (( (ptr) state←v11248)+9) );
                  {
                     word x129;
                     word x130;
                     *(float*)&v2←v29892.f0 = (
                        x129 = v1←v29768.f0,  *(float*)&x129
                        ) * (
                        x130 = s←v11276.f0,  *(float*)&x130
                        );
                     };
                  {
                     word x131;
                     word x132;
                     *(float*)&v2←v29892.f1 = (
                        x131 = v1←v29768.f1,  *(float*)&x131
                        ) * (
                        x132 = s←v11276.f1,  *(float*)&x132
                        );
                     };
                  };
               {
                  word x133;
                  word x134;
                  *(float*)&var←c38164.f0 = (
                     x133 = v1←v29864.f0,  *(float*)&x133
                     ) + (
                     x134 = v2←v29892.f0,  *(float*)&x134
                     );
                  };
               {
                  word x135;
                  word x136;
                  *(float*)&var←c38164.f1 = (
                     x135 = v1←v29864.f1,  *(float*)&x135
                     ) + (
                     x136 = v2←v29892.f1,  *(float*)&x136
                     );
                  };
               (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11248)+32) ))+3) ) = var←c38164;
               };
            break;
         };
      };
   }

static void StateSetCorrectMeasure←P2340(context←v8684, v←v8712)
   word context←v8684;
   W2 v←v8712;
   {
   register ptr gf←c39828 =  (ptr) &globalframe;
   word state←v11320;
   /* StateSetCorrectMeasure: */ 
SOURCE(15704, 180)
SOURCE(15771, 28)
   state←v11320 = (* (( (ptr) context←v8684)+1) );
SOURCE(15801, 83)
   {
      word pd137;
      pd137 = (* (( (ptr) (* (( (ptr) gf←c39828)+111)/* var←c33236 */  ))+40) );
      (void) ( *( (fPt) ((*  (ptr) pd137 ))))((word) (( (bPt) state←v11320)+8), (* (( (ptr) state←v11320)+33) ), v←v8712, pd137)
      ;
      };
   }

static void StateSetCorrectTolerance←P2400(context←v8772, v←v8800)
   word context←v8772;
   W2 v←v8800;
   {
   register ptr gf←c39860 =  (ptr) &globalframe;
   word state←v11364;
   /* StateSetCorrectTolerance: */ 
SOURCE(15890, 185)
SOURCE(15959, 28)
   state←v11364 = (* (( (ptr) context←v8772)+1) );
SOURCE(15989, 86)
   {
      word pd138;
      pd138 = (* (( (ptr) (* (( (ptr) gf←c39860)+111)/* var←c33236 */  ))+40) );
      (void) ( *( (fPt) ((*  (ptr) pd138 ))))((word) (( (bPt) state←v11364)+112), (* (( (ptr) state←v11364)+33) ), v←v8800, pd138)
      ;
      };
   }

static void StateCorrect←P2460(context←v8860, action←v8888)
   word context←v8860;
   word action←v8888;
   {
   register ptr gf←c39892 =  (ptr) &globalframe;
   word state←v11408;
   W2 tolerance←v11436;
   W2 start←v11464;
   W2 end←v11492;
   W2 measure←v11520;
   W2 target←v11548;
   W2 correction←v11576;
   W2 mask←v11604;
   W2 space←v11632;
   W2 var←c38356;
   word var←c0476;
   word var←c38452;
   W2 v←v29720;
   /* StateCorrect: */ 
SOURCE(16162, 2368)
SOURCE(16225, 28)
   state←v11408 = (* (( (ptr) context←v8860)+1) );
SOURCE(16255, 42)
   tolerance←v11436 = (*  (W2Pt) (( (ptr) state←v11408)+28) );
SOURCE(16345, 25)
   mask←v11604.f0 = (*  (ptr) &fc27 );
   mask←v11604.f1 = (*  (ptr) &fc27 );
   space←v11632 = mask←v11604;
SOURCE(16372, 28)
   (* (( (ptr) state←v11408)+4) ) = 0;
SOURCE(16402, 27)
   (* (( (ptr) state←v11408)+5) ) = (*  (ptr) &fc27 );
   (* (( (ptr) state←v11408)+6) ) = (*  (ptr) &fc27 );
SOURCE(16431, 20)
   (* (( (ptr) state←v11408)+19) ) = 1;
SOURCE(16453, 24)
   (* (( (ptr) state←v11408)+25) ) = 1;
SOURCE(16479, 17)
   (void) Realify←P360((* ((( (ptr) state←v11408)+32)) ));
SOURCE(16498, 19)
   start←v11464 = (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11408)+32) ))+3) );
SOURCE(16540, 30)
   {
      word pd139;
      pd139 = (* (( (ptr) (* (( (ptr) gf←c39892)+112)/* var←c33364 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd139 ))))(context←v8860, action←v8888, pd139);
      };
SOURCE(16582, 17)
   (void) Realify←P360((* ((( (ptr) state←v11408)+32)) ));
SOURCE(16601, 17)
   end←v11492 = (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11408)+32) ))+3) );
SOURCE(16639, 32)
   measure←v11520 = (*  (W2Pt) (( (ptr) state←v11408)+2) );
SOURCE(16725, 27)
   {
      word pd140;
      pd140 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+4) );
      (void) ( *( (fPt) ((*  (ptr) pd140 ))))((word) &target←v11548, start←v11464, measure←v11520, pd140);
      };
SOURCE(16773, 28)
   {
      word pd141;
      pd141 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+6) );
      (void) ( *( (fPt) ((*  (ptr) pd141 ))))((word) &correction←v11576, target←v11548, end←v11492, pd141);
      };
   {
      word pd142;
      word x143;
      word pd144;
      word x145;
      pd142 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+24) );
      pd144 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+24) );
      if (((
         x143 = (word) ( *( (fPt) ((*  (ptr) pd142 ))))(correction←v11576, pd142),  *(float*)&x143
         ) <= (
         x145 = (word) ( *( (fPt) ((*  (ptr) pd144 ))))(tolerance←v11436, pd144),  *(float*)&x145
         ))) {
         }
      else {
         {
            word x148;
            word pd149;
            word x150;
            {
               word pd146;
               pd146 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+6) );
               (void) ( *( (fPt) ((*  (ptr) pd146 ))))((word) &var←c38356, end←v11492, start←v11464, pd146);
               };
            {
               word pd147;
               pd147 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+24) );
               var←c0476 = (word) ( *( (fPt) ((*  (ptr) pd147 ))))(var←c38356, pd147);
               };
            pd149 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+24) );
            if (((
               x148 = var←c0476,  *(float*)&x148
               ) < (
               x150 = (word) ( *( (fPt) ((*  (ptr) pd149 ))))(measure←v11520, pd149),  *(float*)&x150
               ))) {
SOURCE(17005, 18)
               space←v11632 = correction←v11576;
SOURCE(17025, 220)
               {
                  word tc151;
                  word x152;
                  word x153;
                  word pd154;
                  word x155;
                  word x156;
                  word pd157;
                  word x158;
                  if (((
                     x152 = (* (( (ptr) state←v11408)+27) ),  *(float*)&x152
                     ) < (
                     x153 = (* (( (ptr) gf←c39892)+4)/* largeReal←v4624 */  ),  *(float*)&x153
                     ))) {
                     pd154 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+24) );
                     pd157 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+24) );
                     tc151 =  (word) ((
                        x155 = (word) ( *( (fPt) ((*  (ptr) pd154 ))))(correction←v11576, pd154),  *(float*)&x155
                        ) > (
                        x156 = (* (( (ptr) state←v11408)+27) ),  *(float*)&x156
                        ) * (
                        x158 = (word) ( *( (fPt) ((*  (ptr) pd157 ))))((*  (W2Pt) ((( (ptr) state←v11408)+5)) ), pd157),  *(float*)&x158
                        ));
                     }
                  else {
                     tc151 =  (word) 0;
                     };
                  if (tc151) {
SOURCE(17145, 70)
                     {
                        W2 var←c38388;
                        {
                           word pd159;
                           pd159 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+10) );
                           (void) ( *( (fPt) ((*  (ptr) pd159 ))))((word) &var←c38388, (*  (W2Pt) (( (ptr) state←v11408)+5) ), (* (( (ptr) state←v11408)+27)
/*1*/    ), pd159);
                           };
                        {
                           W2 var←c0413;
                           {
/*1*/   word pd160;
/*1*/   pd160 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+6) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd160 ))))((word) &var←c0413, correction←v11576, var←c38388, pd160);
/*1*/   };
                           mask←v11604 = var←c0413;
                           };
                        };
SOURCE(17217, 28)
                     {
                        word pd161;
                        pd161 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+6) );
                        (void) ( *( (fPt) ((*  (ptr) pd161 ))))((word) &space←v11632, correction←v11576, mask←v11604, pd161);
                        };
                     };
                  };
               }
            else {
SOURCE(17281, 18)
               space←v11632 = correction←v11576;
SOURCE(17301, 180)
               {
                  word pd162;
                  word x163;
                  word x164;
                  word pd165;
                  word x166;
                  pd162 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+24) );
                  pd165 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+24) );
                  if (((
                     x163 = (word) ( *( (fPt) ((*  (ptr) pd162 ))))(correction←v11576, pd162),  *(float*)&x163
                     ) > (
                     x164 = (* (( (ptr) state←v11408)+26) ),  *(float*)&x164
                     ) * (
                     x166 = (word) ( *( (fPt) ((*  (ptr) pd165 ))))((*  (W2Pt) ((( (ptr) state←v11408)+5)) ), pd165),  *(float*)&x166
                     ))) {
SOURCE(17382, 69)
                     {
                        W2 var←c38420;
                        {
                           word pd167;
                           pd167 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+10) );
                           (void) ( *( (fPt) ((*  (ptr) pd167 ))))((word) &var←c38420, (*  (W2Pt) (( (ptr) state←v11408)+5) ), (* (( (ptr) state←v11408)+26)
/*1*/    ), pd167);
                           };
                        {
                           W2 var←c0417;
                           {
/*1*/   word pd168;
/*1*/   pd168 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+4) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd168 ))))((word) &var←c0417, correction←v11576, var←c38420, pd168);
/*1*/   };
                           mask←v11604 = var←c0417;
                           };
                        };
SOURCE(17453, 28)
                     {
                        word pd169;
                        pd169 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+6) );
                        (void) ( *( (fPt) ((*  (ptr) pd169 ))))((word) &space←v11632, correction←v11576, mask←v11604, pd169);
                        };
                     };
                  };
               };
            };
         };
      };
SOURCE(17489, 136)
   {
      word x170;
      word x171;
      if (((
         x170 = (* (( (ptr) state←v11408)+5) ),  *(float*)&x170
         ) != (
         x171 = (*  (ptr) &fc27 ),  *(float*)&x171
         ))) {
SOURCE(17522, 39)
         {
            word x172;
            word x173;
            *(float*)&space←v11632.f0 = (
               x172 = space←v11632.f0,  *(float*)&x172
               ) / (
               x173 = (* (( (ptr) state←v11408)+5) ),  *(float*)&x173
               );
            };
         }
      else {
SOURCE(17568, 57)
         {
            word x174;
            word x175;
            if (((
               x174 = space←v11632.f0,  *(float*)&x174
               ) != (
               x175 = (*  (ptr) &fc27 ),  *(float*)&x175
               ))) {
SOURCE(17588, 23)
               {
                  word x176;
                  word x177;
                  *(float*)&mask←v11604.f0 = (
                     x176 = mask←v11604.f0,  *(float*)&x176
                     ) + (
                     x177 = space←v11632.f0,  *(float*)&x177
                     );
                  };
SOURCE(17613, 12)
               space←v11632.f0 = (*  (ptr) &fc27 );
               };
            };
         };
      };
SOURCE(17628, 136)
   {
      word x178;
      word x179;
      if (((
         x178 = (* (( (ptr) state←v11408)+6) ),  *(float*)&x178
         ) != (
         x179 = (*  (ptr) &fc27 ),  *(float*)&x179
         ))) {
SOURCE(17661, 39)
         {
            word x180;
            word x181;
            *(float*)&space←v11632.f1 = (
               x180 = space←v11632.f1,  *(float*)&x180
               ) / (
               x181 = (* (( (ptr) state←v11408)+6) ),  *(float*)&x181
               );
            };
         }
      else {
SOURCE(17707, 57)
         {
            word x182;
            word x183;
            if (((
               x182 = space←v11632.f1,  *(float*)&x182
               ) != (
               x183 = (*  (ptr) &fc27 ),  *(float*)&x183
               ))) {
SOURCE(17727, 23)
               {
                  word x184;
                  word x185;
                  *(float*)&mask←v11604.f1 = (
                     x184 = mask←v11604.f1,  *(float*)&x184
                     ) + (
                     x185 = space←v11632.f1,  *(float*)&x185
                     );
                  };
SOURCE(17752, 12)
               space←v11632.f1 = (*  (ptr) &fc27 );
               };
            };
         };
      };
SOURCE(17767, 234)
   if (( (int)(* (( (ptr) state←v11408)+4) ) !=  (int)0)) {
SOURCE(17804, 197)
      {
         word x186;
         word x187;
         word x188;
         word x189;
         if ( ( ((
            x186 = mask←v11604.f0,  *(float*)&x186
            ) == (
            x187 = (*  (ptr) &fc27 ),  *(float*)&x187
            )) ? ((
            x188 = mask←v11604.f1,  *(float*)&x188
            ) == (
            x189 = (*  (ptr) &fc27 ),  *(float*)&x189
            )) : 0 ) ) {
SOURCE(17834, 34)
            (* (( (ptr) state←v11408)+4) ) = 0;
            }
         else {
SOURCE(17868, 133)
            if (( (int)(* (( (ptr) state←v11408)+4) ) >  (int)1)) {
SOURCE(17905, 53)
               (* (( (ptr) state←v11408)+4) ) = ((* (( (ptr) state←v11408)+4) ) - 1);
SOURCE(17960, 41)
               {
                  word pd190;
                  float tf191;
                  pd190 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+12) );
                  (void) ( *( (fPt) ((*  (ptr) pd190 ))))((word) &mask←v11604, mask←v11604, (
                        tf191 = (float)(int)(* (( (ptr) state←v11408)+4) ),  *(word*)&tf191
                        ), pd190);
                  };
               };
            };
         };
      };
SOURCE(18009, 26)
   (*  (W2Pt) (( (ptr) state←v11408)+7) ) = mask←v11604;
SOURCE(18037, 28)
   (*  (W2Pt) (( (ptr) state←v11408)+9) ) = space←v11632;
SOURCE(18067, 20)
   (* (( (ptr) state←v11408)+19) ) = 0;
SOURCE(18089, 24)
   (* (( (ptr) state←v11408)+25) ) = 2;
SOURCE(18116, 19)
   (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11408)+32) ))+3) ) = start←v11464;
SOURCE(18137, 23)
   (*  (ptr) (* (( (ptr) state←v11408)+32) ) ) = 0;
SOURCE(18163, 30)
   {
      word pd192;
      pd192 = (* (( (ptr) (* (( (ptr) gf←c39892)+112)/* var←c33364 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd192 ))))(context←v8860, action←v8888, pd192);
      };
SOURCE(18205, 24)
   (* (( (ptr) state←v11408)+25) ) = 0;
SOURCE(18231, 17)
   (void) Realify←P360((* ((( (ptr) state←v11408)+32)) ));
SOURCE(18250, 17)
   end←v11492 = (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11408)+32) ))+3) );
SOURCE(18288, 20)
   (*  (W2Pt) (( (ptr) (* (( (ptr) state←v11408)+32) ))+3) ) = target←v11548;
SOURCE(18310, 220)
   {
      word tc193;
      word x199;
      word x200;
      word x201;
      word x202;
      word x203;
      if (( (int)(* (( (ptr) state←v11408)+31) ) !=  (int)0)) {
         {
            word pd194;
            pd194 = (* (( (ptr) (* (( (ptr) gf←c39892)+116)/* var←c38324 */  ))+6) );
            (void) ( *( (fPt) ((*  (ptr) pd194 ))))((word) &v←v29720, target←v11548, end←v11492, pd194);
            };
         {
            word x195;
            word x196;
            word x197;
            word x198;
            *(float*)&var←c38452 = ((
               x195 = v←v29720.f0,  *(float*)&x195
               ) * (
               x196 = v←v29720.f0,  *(float*)&x196
               )) + ((
               x197 = v←v29720.f1,  *(float*)&x197
               ) * (
               x198 = v←v29720.f1,  *(float*)&x198
               ));
            };
         tc193 =  (word) ((
            x199 = var←c38452,  *(float*)&x199
            ) > ((
            x200 = tolerance←v11436.f0,  *(float*)&x200
            ) * (
            x201 = tolerance←v11436.f0,  *(float*)&x201
            )) + ((
            x202 = tolerance←v11436.f1,  *(float*)&x202
            ) * (
            x203 = tolerance←v11436.f1,  *(float*)&x203
            )));
         }
      else {
         tc193 =  (word) 0;
         };
      if (tc193) {
SOURCE(18390, 140)
         {
            W3 var←c0424;
            var←c0424.f0 = 121;
            var←c0424.f1 = (* (( (ptr) gf←c39892)+24) );
            var←c0424.f2 = 0;
            (void) (XR←RaiseSignal((*  (ptr) (* (( (ptr) (* (( (ptr) gf←c39892)+112)/* var←c33364 */  ))+7) ) ), 0, (word) &var←c0424)
            );
            };
         };
      };
   }

static void StateDontCorrect←P2520(context←v8964, formal←c0493, formal←c0494)
   word context←v8964;
   word formal←c0493;
   word formal←c0494;
   {
   W10 var←c39924;
   /* declaration of action←v8992 skipped */ 
   /* declaration of saveCP←v9020 skipped */ 
   /* declaration of state←v11676 skipped */ 
   /* declaration of correctPass←v11704 skipped */ 
   /* declaration of cp←v11732 skipped */ 
   (* (( (ptr) &var←c39924)+4)/* action←v8992 */  ) = formal←c0493;
   (* (( (ptr) &var←c39924)+5)/* saveCP←v9020 */  ) = formal←c0494;
   /* StateDontCorrect: */ 
SOURCE(18536, 361)
SOURCE(18617, 28)
   (* (( (ptr) &var←c39924)+6)/* state←v11676 */  ) = (* (( (ptr) context←v8964)+1) );
SOURCE(18647, 39)
   (* (( (ptr) &var←c39924)+7)/* correctPass←v11704 */  ) = (* (( (ptr) (* (( (ptr) &var←c39924)+6)/* state←v11676 */  ))+25)
    );
SOURCE(18820, 17)
   (void) Realify←P360((* ((( (ptr) (* (( (ptr) &var←c39924)+6)/* state←v11676 */  ))+32)) ));
SOURCE(18839, 16)
   (*  (W2Pt) (( (ptr) &var←c39924)+8)/* cp←v11732 */  ) = (*  (W2Pt) (( (ptr) (* (( (ptr) (* (( (ptr) &var←c39924)+6)/* state←v11676 */  ))+32)
       ))+3) );
SOURCE(18857, 29)
   {
      word var←c0477;
      var←c0477 = (word) &var←c39924;
       (void) (word) XR←Enable(( ((word)  (fPt) NoName←Q6252) ), ( ((word)  (fPt) NoName←Q6312) ), var←c0477);
      };
SOURCE(18888, 9)
SOURCE(18722, 34)
   (* (( (ptr) (* (( (ptr) &var←c39924)+6)/* state←v11676 */  ))+25) ) = (* (( (ptr) &var←c39924)+7)/* correctPass←v11704 */  );
SOURCE(18758, 57)
   if ((0 != (* (( (ptr) &var←c39924)+5)/* saveCP←v9020 */  ))) {
SOURCE(18774, 23)
      (*  (ptr) (* (( (ptr) (* (( (ptr) &var←c39924)+6)/* state←v11676 */  ))+32) ) ) = 0;
SOURCE(18799, 16)
      (*  (W2Pt) (( (ptr) (* (( (ptr) (* (( (ptr) &var←c39924)+6)/* state←v11676 */  ))+32) ))+3) ) = (*  (W2Pt) (( (ptr) &var←c39924)+8)
      /* cp←v11732 */  );
      };
   }

static word NoName←Q6252(formal←c0475)
   word formal←c0475;
   {
SOURCE(18857, 29)
   {
      word pd204;
      pd204 = (* (( (ptr) formal←c0475)+4) );
      (void) ( *( (fPt) ((*  (ptr) pd204 ))))(pd204);
      };
   return(0);
   }

static void NoName←Q6312(formal←c0435, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
   word formal←c0435;
   word formal←c200000;
   word formal←c200001;
   word formal←c200002;
   word formal←c200003;
   {
   if ((formal←c200001 == XR←Unwind)) {
SOURCE(18876, 10)
SOURCE(18722, 34)
      (* (( (ptr) (* (( (ptr) formal←c200000)+6) ))+25) ) = (* (( (ptr) formal←c200000)+7) );
SOURCE(18758, 57)
      if ((0 != (* (( (ptr) formal←c200000)+5) ))) {
SOURCE(18774, 23)
         (*  (ptr) (* (( (ptr) (* (( (ptr) formal←c200000)+6) ))+32) ) ) = 0;
SOURCE(18799, 16)
         (*  (W2Pt) (( (ptr) (* (( (ptr) (* (( (ptr) formal←c200000)+6) ))+32) ))+3) ) = (*  (W2Pt) (( (ptr) formal←c200000)+8) );
         };
      };
   (*  (ptr) formal←c0435 ) = 0;
   (* (( (ptr) formal←c0435)+1) ) = 0;
   return;
   }

/* file: ImagerStateImpl, module: ImagerStateImpl, compiled at: July 28, 1993 10:24:38 am PDT */ 
extern void XR←install←ImagerStateImpl() {
   NoName←Q6192();
   }
extern void XR←run←ImagerStateImpl() { XR←Start(&globalframe); }