/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation.  All rights reserved. */
/* time: August 16, 1993 2:17:13 pm PDT */
/* C2C version: April 20, 1993 (sun4) */
/* ref-counting: off */
/* file: XTkBitmapWidgetsImpl, module: XTkBitmapWidgetsImpl */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [29225873,409538545] XTkBitmapWidgetsImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {W8 f; W8 r;} W16;
typedef struct {W8 f; word r;} W9;
typedef struct {W16 f; W9 r;} W25;
typedef word (*fPt)();
typedef struct {word f0, f1;} W2;
typedef struct {word f0, f1, f2, f3;} W4;
typedef struct {word f0, f1, f2, f3, f4;} W5;
typedef struct {word f0, f1, f2, f3, f4, f5;} W6;
typedef W4 *W4Pt;
typedef W2 *W2Pt;
typedef struct {W8 f; W4 r;} W12;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
typedef struct {W8 f; W7 r;} W15;
typedef struct {W16 f; W2 r;} W18;
typedef W15 *W15Pt;
#define SOURCE(p, l) /* source p, l */
#define IOP2(op, x, y)  ( (word) ((x) op (y)) )
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
#define INEG(x)  ( (word) ( - ((int) (word) (x)) ) )
#define MIN(cast, x, y)  ( ( cast x) < ( cast y) ? (x) : (y) )
#define MAX(cast, x, y)  ( ( cast x) > ( cast y) ? (x) : (y) )
static void NoName←Q4728();
static void XTkBitmapWidgetsImpl←P0();
static void NoOp←P60();
static void MPadBugActualPaint1←P120();
static void IBMBugActualPaint1←P180();
static void ActualPaint1←P240();
static void ActualPaint2←P300();
static void ActualPaint4←P360();
static void ActualPaint8←P420();
static void ActualPaint24←P480();
static void ShmPaintCopyPlane←P540();
static void ShmPaintCopyArea←P600();
static void EventHandler←P720();
static void FreeShmData←P780();
static void DelayedDestroyShmData←P840();
static void BMDestroyWindowLR←P900();
static void BMConfigureLR←P960();
static void Set←P1020();
static word Swap←P2472();
static void Stop←P1080();
static word Nillout←P2532();
static void BMPreStopFastAccess←P1140();
static void BMFullStopFastAccessLR←P1200();
static void BMDestroyWidget←P1260();
static void NullNotify←P1320();
static void InitInstPart←P1380();
static void DontNotify←P1440();
static void SetCallbacks←P1500();
static word CreateBitmapWidget←P1560();
static void SetBitmap←P1620();
static void GetBitmap←P1680();
static word MakeGC←P1740();
static void SetBM←P1800();
static word NoName←Q4788();
static word Range←P2592();
static void ClearOutsideAreas←P1860();
static word NoName←Q4848();
static void Clear←P2844();
static void Fill←P2904();
static word GetImplData←P1920();
static void Wait←P1980();
static word CreateContext←P2040();
static void CreateAndSetBitmap←P2100();
static void FollowColors←P2160();
static void FollowColorsOnce←P2220();
static void NoName←Q4908();
static void NoName←Q4968();
static struct {unsigned f; char r[4];} string1 = {131076, "\216\251\000"};
static struct {unsigned f; char r[4];} string2 = {65537, "\001\000\000"};
static struct {unsigned f; char r[44];} string3 = {2752556, "\260\006\005\146\151\162\163\164\257\300\205\277\037\240\300\057\303\211\051\100\164\005\004\162\145\163\164\214\257\300\205\277\037\240\300\057\303\211\051\100\164\261\000"};
static struct {unsigned f; char r[4];} string4 = {131074, "\004\006\000"};
static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\351\276\264\273\300\115\104\320\264\105\154\000\000"};
static struct {unsigned f; char r[4];} string6 = {196611, "\004A\330"};
static struct {unsigned f; char r[16];} string7 = {851984, "\257\300\351\276\264\273\300\115\104\320\264\107\320\000\000"};
static struct {unsigned f; char r[4];} string8 = {131074, "\004\016\000"};
static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\205\277\037\240\300\057\303\211\051\100\214\000\000"};
static struct {unsigned f; char r[20];} string10 = {1245203, "\006\007\000\001\004\001\010\001\034\001\105\164\001\105\210\001\105\224\001"};
static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\001\275\363\221\300\030\151\017\361\100\214\000\000"};
static struct {unsigned f; char r[20];} string12 = {1245203, "\006\007\020\001\024\001\030\001\074\001\100\100\001\100\120\001\100\124\001"};
static struct {unsigned f; char r[16];} string13 = {851984, "\257\300\033\115\307\000\300\214\060\055\310\100\244\000\000"};
static struct {unsigned f; char r[40];} string14 = {2555943, "\011\000\004\106\000\040\006\011\020\004\101\201\100\174\001\100\200\001\100\204\001\100\210\001\100\220\001\100\264\001\100\270\001\100\274\001\100\304\001"};
static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\001\275\363\221\300\030\151\017\361\100\230\000\000"};
static struct {unsigned f; char r[16];} string16 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[4];} string17 = {65540, "\242\000\000"};
static struct {unsigned f; char r[20];} string18 = {1048596, "Xerox Split MPAD\000\000\000"};
static struct {unsigned f; char r[8];} string19 = {458760, "ZPixmap"};
static struct {unsigned f; char r[20];} string20 = {1048596, "ibm 6000 bug fix\000\000\000"};
static struct {unsigned f; char r[16];} string21 = {851984, "1 bpp, remote\000\000"};
static struct {unsigned f; char r[16];} string22 = {851984, "8 bpp, remote\000\000"};
static struct {unsigned f; char r[16];} string23 = {851984, "2 bpp, remote\000\000"};
static struct {unsigned f; char r[16];} string24 = {851984, "4 bpp, remote\000\000"};
static struct {unsigned f; char r[16];} string25 = {917520, "24 bpp, remote\000"};
static struct {unsigned f; char r[12];} string26 = {655372, "1 bpp, shm\000"};
static struct {unsigned f; char r[16];} string27 = {917520, "multi bpp, shm\000"};
static struct {unsigned f; char r[8];} string28 = {327688, " MPAD\000\000"};
static struct {unsigned f; char r[16];} string29 = {786448, "OverheadCost\000\000\000"};
static struct {unsigned f; char r[20];} string30 = {1048596, "ServerQueueLimit\000\000\000"};
static struct {unsigned f; char r[8];} string31 = {327688, "white\000\000"};
static struct {unsigned f; char r[16];} string32 = {786448, "bitmapWidget\000\000\000"};
static struct {unsigned f; char r[24];} string33 = {1310744, "XTkBitmapWidgetsImpl\000\000\000"};
static struct {unsigned f; char r[16];} string34 = {786448, "BitmapBorder\000\000\000"};
static struct {unsigned f; char r[16];} string35 = {851984, "\257\300\001\275\363\221\300\030\151\017\361\100\200\000\000"};
static struct {unsigned f; char r[20];} string36 = {1245203, "\006\006\020\001\024\001\030\001\034\001\040\001\100\224\010\000\004\021\001"};
static struct {unsigned f; char r[16];} string37 = {851984, "\257\300\263\064\342\215\300\063\160\325\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string38 = {851984, "\257\300\240\236\274\315\300\111\163\325\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string39 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {unsigned f; char r[16];} string40 = {851984, "\257\300\243\162\130\311\300\344\000\142\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string41 = {851984, "\257\300\351\276\264\273\300\115\104\320\264\100\164\000\000"};
static struct {unsigned f; char r[16];} string42 = {851984, "\257\300\256\061\211\265\300\052\170\134\271\100\150\000\000"};
static struct {unsigned f; char r[16];} string43 = {851984, "\257\300\205\277\037\240\300\057\303\211\051\100\150\000\000"};
static struct {unsigned f; char r[16];} string44 = {851984, "\257\300\331\133\131\347\300\165\343\006\212\100\150\000\000"};
static struct {unsigned f; char r[16];} string45 = {851984, "\257\300\337\070\153\303\300\227\216\321\214\100\150\000\000"};
static struct {unsigned f; char r[16];} string46 = {851984, "\257\300\313\043\035\351\300\322\261\377\170\100\150\000\000"};
static struct {unsigned f; char r[16];} string47 = {851984, "\257\300\033\115\307\000\300\214\060\055\310\100\150\000\000"};
static struct {unsigned f; char r[16];} string48 = {851984, "\257\300\227\370\144\253\300\176\165\034\110\100\150\000\000"};
static struct {unsigned f; char r[16];} string49 = {851984, "\257\300\054\174\025\242\300\120\014\117\154\100\150\000\000"};
static struct {unsigned f; char r[16];} string50 = {851984, "\257\300\114\360\325\157\300\264\322\230\211\100\150\000\000"};
static struct {unsigned f; char r[16];} string51 = {851984, "\257\300\113\261\032\013\300\242\011\276\261\100\150\000\000"};
static struct {
   word f0[54]; 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; word f110; word f111; word f112; 
   word f113; word f114; word f115; word f116; 
   word f117; word f118; word f119; word f120; 
   word f121; word f122; word f123; word f124; 
   word f125; word f126; word f127; word f128; 
   word f129; word f130; word f131; word f132; 
   word f133; word f134; word f135; word f136[14]; 
   } globalframe = {
   {0}, (word) FollowColorsOnce←P2220, 0, (word) FollowColors←P2160, 
   0, (word) CreateAndSetBitmap←P2100, 0, (word) CreateContext←P2040, 
   0, (word) Wait←P1980, 0, (word) GetImplData←P1920, 
   0, (word) ClearOutsideAreas←P1860, 0, (word) SetBM←P1800, 
   0, (word) MakeGC←P1740, 0, (word) GetBitmap←P1680, 
   0, (word) SetBitmap←P1620, 0, (word) CreateBitmapWidget←P1560, 
   0, (word) SetCallbacks←P1500, 0, (word) DontNotify←P1440, 
   0, (word) InitInstPart←P1380, 0, (word) NullNotify←P1320, 
   0, (word) BMDestroyWidget←P1260, 0, (word) BMFullStopFastAccessLR←P1200, 
   0, (word) BMPreStopFastAccess←P1140, 0, (word) Stop←P1080, 
   0, (word) Set←P1020, 0, (word) BMConfigureLR←P960, 
   0, (word) BMDestroyWindowLR←P900, 0, (word) DelayedDestroyShmData←P840, 
   0, (word) FreeShmData←P780, 0, (word) EventHandler←P720, 
   0, (word) ShmPaintCopyArea←P600, 0, (word) ShmPaintCopyPlane←P540, 
   0, (word) ActualPaint24←P480, 0, (word) ActualPaint8←P420, 
   0, (word) ActualPaint4←P360, 0, (word) ActualPaint2←P300, 
   0, (word) ActualPaint1←P240, 0, (word) IBMBugActualPaint1←P180, 
   0, (word) MPadBugActualPaint1←P120, 0, (word) NoOp←P60, 
   0, (word) XTkBitmapWidgetsImpl←P0, 0, (word) 4294959296, 
   (word) 4294959296, (word) 8000, (word) 8000, (word) 2147483648, 
   (word) 2147483648, (word) 2147483647, (word) 2147483647, {0}
   };

static void NoName←Q4728()
   {
   register ptr gf←c0375 =  (ptr) &globalframe;
   word var←c56380;
   (* (( (ptr) gf←c0375)+9) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
   (* (( (ptr) gf←c0375)+12) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4);
   (* (( (ptr) gf←c0375)+13) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6);
   (* (( (ptr) gf←c0375)+14) ) = (word) XR←GetTypeIndex((word) &string7, 0, (word) &string8);
   (* (( (ptr) gf←c0375)+21) ) = (word) XR←GetTypeIndex((word) &string9, 0, (word) &string10);
   (* (( (ptr) gf←c0375)+22) ) = (word) XR←GetTypeIndex((word) &string11, 0, (word) &string12);
   (* (( (ptr) gf←c0375)+23) ) = (word) XR←GetTypeIndex((word) &string13, 0, (word) &string14);
   (* (( (ptr) gf←c0375)+25) ) = (word) XR←GetTypeIndex((word) &string15, 0, (word) &string4);
   (* (( (ptr) gf←c0375)+27) ) = (word) XR←GetTypeIndex((word) &string16, 0, (word) &string2);
   (* (( (ptr) gf←c0375)+34) ) = (word) XR←GetTypeIndexS((word) (&string17));
   (*  (ptr) (( (bPt) gf←c0375)+148) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+27) ), (word) &string18);
   (*  (ptr) (( (bPt) gf←c0375)+152) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+9) ), (word) &string19);
   (*  (ptr) (( (bPt) gf←c0375)+156) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+27) ), (word) &string20);
   (*  (ptr) (( (bPt) gf←c0375)+160) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+27) ), (word) &string21);
   (*  (ptr) (( (bPt) gf←c0375)+164) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+27) ), (word) &string22);
   (*  (ptr) (( (bPt) gf←c0375)+168) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+27) ), (word) &string23);
   (*  (ptr) (( (bPt) gf←c0375)+172) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+27) ), (word) &string24);
   (*  (ptr) (( (bPt) gf←c0375)+176) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+27) ), (word) &string25);
   (*  (ptr) (( (bPt) gf←c0375)+180) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+27) ), (word) &string26);
   (*  (ptr) (( (bPt) gf←c0375)+184) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+27) ), (word) &string27);
   (*  (ptr) (( (bPt) gf←c0375)+188) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+27) ), (word) &string28);
   (*  (ptr) (( (bPt) gf←c0375)+192) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+9) ), (word) &string29);
   (*  (ptr) (( (bPt) gf←c0375)+196) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+9) ), (word) &string30);
   (*  (ptr) (( (bPt) gf←c0375)+200) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+9) ), (word) &string31);
   (*  (ptr) (( (bPt) gf←c0375)+204) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+9) ), (word) &string32);
   (*  (ptr) (( (bPt) gf←c0375)+208) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+9) ), (word) &string33);
   (*  (ptr) (( (bPt) gf←c0375)+212) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0375)+9) ), (word) &string34);
   (void) XR←DeclareGlobalFrame((word) "XTkBitmapWidgetsImpl", &globalframe, (word) XR←GetTypeIndex((word) &string35, 0, (word) &string36)
      , (word) (( (bPt) gf←c0375)+504)/* var←c52860 */ );
   var←c56380 = (word) XR←ImportInterface((word) "ForkOps", (word) XR←GetTypeIndexS((word) (&string37)), 4);
   (* (( (ptr) gf←c0375)+141)/* var←c54140 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 1048836);
   var←c56380 = (word) XR←ImportInterface((word) "Process", (word) XR←GetTypeIndexS((word) (&string38)), 22);
   (* (( (ptr) gf←c0375)+147)/* var←c56124 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 4864);
   var←c56380 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string39)), 43);
   (* (( (ptr) gf←c0375)+145)/* var←c54812 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 67633666);
   (void) XR←ImportProcS(var←c56380, 67896323);
   var←c56380 = (word) XR←ImportInterface((word) "SF", (word) XR←GetTypeIndexS((word) (&string40)), 19);
   (* (( (ptr) gf←c0375)+144)/* var←c54716 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 270012418);
   (void) XR←ImportProcS(var←c56380, 270535426);
   var←c56380 = (word) XR←ImportInterface((word) "Xl", (word) XR←GetTypeIndexS((word) (&string41)), 218);
   (* (( (ptr) gf←c0375)+138)/* var←c53212 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 4736772);
   (void) XR←ImportProcS(var←c56380, 534530);
   (void) XR←ImportProcS(var←c56380, 2139398);
   (void) XR←ImportProcS(var←c56380, 2138630);
   (void) XR←ImportProcS(var←c56380, 822787);
   (void) XR←ImportProcS(var←c56380, 559618);
   (void) XR←ImportProcS(var←c56380, 563970);
   (void) XR←ImportProcS(var←c56380, 67668226);
   (void) XR←ImportProcS(var←c56380, 810243);
   (void) XR←ImportProcS(var←c56380, 2925320);
   (void) XR←ImportProcS(var←c56380, 3187721);
   (void) XR←ImportProcS(var←c56380, 3450891);
   (void) XR←ImportProcS(var←c56380, 68207876);
   var←c56380 = (word) XR←ImportInterface((word) "XlBitmap", (word) XR←GetTypeIndexS((word) (&string42)), 14);
   (* (( (ptr) gf←c0375)+139)/* var←c53276 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 525570);
   (void) XR←ImportProcS(var←c56380, 67635202);
   (void) XR←ImportProcS(var←c56380, 67372545);
   (void) XR←ImportProcS(var←c56380, 268699393);
   (void) XR←ImportProcS(var←c56380, 68158467);
   var←c56380 = (word) XR←ImportInterface((word) "XlBWFriends", (word) XR←GetTypeIndexS((word) (&string43)), 6);
   (* (( (ptr) gf←c0375)+140)/* var←c54044 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 67634434);
   (void) XR←ImportProcS(var←c56380, 262401);
   (void) XR←ImportProcS(var←c56380, 262657);
   (void) XR←ImportProcS(var←c56380, 1835780);
   var←c56380 = (word) XR←ImportInterface((word) "XlColorAccess", (word) XR←GetTypeIndexS((word) (&string44)), 3);
   (* (( (ptr) gf←c0375)+143)/* var←c54332 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 67895299);
   (void) XR←ImportProcS(var←c56380, 67895811);
   var←c56380 = (word) XR←ImportInterface((word) "XlDetails", (word) XR←GetTypeIndexS((word) (&string45)), 4);
   (* (( (ptr) gf←c0375)+137)/* var←c53084 */  ) = var←c56380;
   var←c56380 = (word) XR←ImportInterface((word) "XlShmPixmaps", (word) XR←GetTypeIndexS((word) (&string46)), 5);
   (* (( (ptr) gf←c0375)+146)/* var←c55004 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 67895811);
   (void) XR←ImportProcS(var←c56380, 67371265);
   (void) XR←ImportProcS(var←c56380, 67372033);
   var←c56380 = (word) XR←ImportInterface((word) "XTk", (word) XR←GetTypeIndexS((word) (&string47)), 50);
   (* (( (ptr) gf←c0375)+142)/* var←c54268 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 788227);
   (void) XR←ImportProcS(var←c56380, 67634690);
   (void) XR←ImportProcS(var←c56380, 69992451);
   (void) XR←ImportProcS(var←c56380, 786947);
   (void) XR←ImportProcS(var←c56380, 1579779);
   var←c56380 = (word) XR←ImportInterface((word) "XTkFriends", (word) XR←GetTypeIndexS((word) (&string48)), 33);
   (* (( (ptr) gf←c0375)+136)/* var←c53052 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 2102532);
   (void) XR←ImportProcS(var←c56380, 529922);
   (void) XR←ImportProcS(var←c56380, 73666049);
   var←c56380 = (word) XR←ImportInterface((word) "XTkShellWidgets", (word) XR←GetTypeIndexS((word) (&string49)), 26);
   (* (( (ptr) gf←c0375)+148)/* var←c56348 */  ) = var←c56380;
   (void) XR←ImportProcS(var←c56380, 529666);
   var←c56380 = (word) XR←ExportInterface((word) "XTkBitmapWidgets", (word) XR←GetTypeIndexS((word) (&string50)), 8);
   (* (( (ptr) gf←c0375)+149)/* var←c56412 */  ) = var←c56380;
   (void) XR←ExportProcS(var←c56380, (word) (( (bPt) gf←c0375)+304)/* var←c52060 */ , 69992451, (word) "CreateBitmapWidget")
   ;
   (void) XR←ExportProcS(var←c56380, (word) (( (bPt) gf←c0375)+312)/* var←c52092 */ , 786691, (word) "SetCallbacks");
   (void) XR←ExportProcS(var←c56380, (word) (( (bPt) gf←c0375)+296)/* var←c52028 */ , 2621958, (word) "SetBitmap");
   (void) XR←ExportProcS(var←c56380, (word) (( (bPt) gf←c0375)+288)/* var←c51996 */ , 470024961, (word) "GetBitmap");
   (void) XR←ExportProcS(var←c56380, (word) (( (bPt) gf←c0375)+248)/* var←c51836 */ , 525314, (word) "Wait");
   (void) XR←ExportProcS(var←c56380, (word) (( (bPt) gf←c0375)+240)/* var←c51804 */ , 67634434, (word) "CreateContext");
   (void) XR←ExportProcS(var←c56380, (word) (( (bPt) gf←c0375)+232)/* var←c51772 */ , 1574404, (word) "CreateAndSetBitmap");
   (void) XR←ExportProcS(var←c56380, (word) (( (bPt) gf←c0375)+256)/* var←c51868 */ , 67372801, (word) "GetImplData");
   var←c56380 = (word) XR←ExportInterface((word) "XTkBitmapWidgetsExtras", (word) XR←GetTypeIndexS((word) (&string51)), 2);
   (* (( (ptr) gf←c0375)+149)/* var←c56412 */  ) = var←c56380;
   (void) XR←ExportProcS(var←c56380, (word) (( (bPt) gf←c0375)+224)/* var←c51740 */ , 524290, (word) "FollowColors");
   (void) XR←ExportProcS(var←c56380, (word) (( (bPt) gf←c0375)+216)/* var←c51708 */ , 524546, (word) "FollowColorsOnce");
   }

static void XTkBitmapWidgetsImpl←P0(formal←c075, formal←c068)
   word formal←c075;
   word formal←c068;
   {
   register ptr gf←c56444 =  (ptr) &globalframe;
   /* XTkBitmapWidgetsImpl: */ 
SOURCE(207, 18507)
   /* moved to installation proc */ 
   /* moved to installation proc */ 
   /* moved to installation proc */ 
   /* moved to installation proc */ 
   /* moved to installation proc */ 
   /* moved to installation proc */ 
   /* moved to installation proc */ 
   /* moved to installation proc */ 
SOURCE(538, 380)
   {
      W25 var←c070;
      (*  (ptr) &var←c070 ) = (* (( (ptr) gf←c56444)+51) );
      (* (( (ptr) &var←c070)+1) ) = 0;
      (* (( (ptr) &var←c070)+2) ) = 0;
      (* (( (ptr) &var←c070)+3) ) = 1;
      (* (( (ptr) &var←c070)+4) ) = 0;
      (* (( (ptr) &var←c070)+5) ) = 0;
      (* (( (ptr) &var←c070)+6) ) = XR←CheckProc(0);
      (* (( (ptr) &var←c070)+7) ) = (word) (( (bPt) gf←c56444)+384)/* var←c52380 */ ;
      (* (( (ptr) &var←c070)+8) ) = XR←CheckProc(0);
      (* (( (ptr) &var←c070)+9) ) = (word) (( (bPt) gf←c56444)+392)/* var←c52412 */ ;
      (* (( (ptr) &var←c070)+10) ) = XR←CheckProc(0);
      (* (( (ptr) &var←c070)+11) ) = XR←CheckProc(0);
      (* (( (ptr) &var←c070)+12) ) = (word) (( (bPt) gf←c56444)+360)/* var←c52284 */ ;
      (* (( (ptr) &var←c070)+13) ) = (word) (( (bPt) gf←c56444)+352)/* var←c52252 */ ;
      (* (( (ptr) &var←c070)+14) ) = XR←CheckProc(0);
      (* (( (ptr) &var←c070)+15) ) = XR←CheckProc(0);
      (* (( (ptr) &var←c070)+16) ) = (word) (( (bPt) gf←c56444)+344)/* var←c52220 */ ;
      (* (( (ptr) &var←c070)+17) ) = XR←CheckProc(0);
      (* (( (ptr) &var←c070)+18) ) = (word) (( (bPt) gf←c56444)+328)/* var←c52156 */ ;
      (* (( (ptr) &var←c070)+19) ) = 0;
      (* (( (ptr) &var←c070)+20) ) = (* (( (ptr) gf←c56444)+50) );
      (* (( (ptr) &var←c070)+21) ) = 0;
      (* (( (ptr) &var←c070)+22) ) = 163840;
      (* (( (ptr) &var←c070)+23) ) = XR←CheckProc(0);
      (* (( (ptr) &var←c070)+24) ) = XR←CheckProc(0);
      {
         word pd52;
         pd52 = (* (( (ptr) (* (( (ptr) gf←c56444)+136)/* var←c53052 */  ))+18) );
         (* (( (ptr) gf←c56444)+4)/* bmClass←v3292 */  ) = (word) ( *( (fPt) ((*  (ptr) pd52 ))))((word) (&var←c070), pd52);
         };
      };
SOURCE(1444, 45)
   (* (( (ptr) gf←c56444)+5)/* noErrors←v3376 */  ) = (*  (ptr) (* (( (ptr) (* (( (ptr) gf←c56444)+137)/* var←c53084 */  ))+5)
    ) );
SOURCE(1520, 115)
   {
      word var←c53116;
      word var←c53180;
      {
         word var←c53148;
         var←c53148 = XR←NewObject(16, (* (( (ptr) gf←c56444)+14) ));
         (*  (ptr) var←c53148 ) = (word) (( (bPt) gf←c56444)+496)/* var←c52828 */ ;
         var←c53116 = var←c53148;
         };
      var←c53180 = XR←NewObject(36, (* (( (ptr) gf←c56444)+13) ));
      (* (( (ptr) var←c53180)+3) ) = var←c53116;
      (* (( (ptr) var←c53180)+6) ) = (* (( (ptr) gf←c56444)+38) );
      (* (( (ptr) gf←c56444)+6)/* mPadNoErrors←v3432 */  ) = var←c53180;
      };
SOURCE(5902, 82)
   {
      word pd53;
      pd53 = (* (( (ptr) (* (( (ptr) gf←c56444)+138)/* var←c53212 */  ))+201) );
      (* (( (ptr) gf←c56444)+7)/* eventFilter←v3740 */  ) = (word) ( *( (fPt) ((*  (ptr) pd53 ))))(18, 19, 12, 35, pd53);
      };
SOURCE(16732, 62)
   {
      W2 var←c53244;
      var←c53244.f0 = 1;
      var←c53244.f1 = 1;
      {
         word pd54;
         pd54 = (* (( (ptr) (* (( (ptr) gf←c56444)+139)/* var←c53276 */  ))+8) );
         (* (( (ptr) gf←c56444)+8)/* noWhereBM←v4440 */  ) = (word) ( *( (fPt) ((*  (ptr) pd54 ))))(var←c53244, 1, 0, pd54);
         };
      };
   }

static void NoOp←P60(event←v20792, clientData←v20820, tq←v20848)
   word event←v20792;
   word clientData←v20820;
   word tq←v20848;
   {
   /* NoOp: */ 
   }

static void MPadBugActualPaint1←P120(b←v5196, ref←v5224)
   W4 b←v5196;
   word ref←v5224;
   {
   register ptr gf←c56476 =  (ptr) &globalframe;
   word w←v8132;
   word dirtyFix←v8188;
   /* MPadBugActualPaint1: */ 
SOURCE(1638, 484)
SOURCE(1689, 33)
   w←v8132 = XR←Narrow(ref←v5224, (* (( (ptr) gf←c56476)+21) ));
SOURCE(1738, 30)
   dirtyFix←v8188 = IOP2( % ,  (int)b←v5196.f1,  (int)32);
SOURCE(1770, 62)
   if (( (int)((* (( (ptr) w←v8132)+351) ) + b←v5196.f1) <  (int)dirtyFix←v8188)) {
SOURCE(1808, 24)
      dirtyFix←v8188 = (dirtyFix←v8188 - 32);
      };
SOURCE(1838, 284)
   {
      W2 var←c53308;
      W2 var←c53340;
      var←c53308.f0 = ((b←v5196.f3 - b←v5196.f1) + dirtyFix←v8188);
      var←c53308.f1 = (b←v5196.f2 - b←v5196.f0);
      var←c53340.f0 = (((* (( (ptr) w←v8132)+351) ) + b←v5196.f1) - dirtyFix←v8188);
      var←c53340.f1 = ((* (( (ptr) w←v8132)+352) ) + b←v5196.f0);
      {
         word pd55;
         pd55 = (* (( (ptr) (* (( (ptr) gf←c56476)+138)/* var←c53212 */  ))+172) );
         (void) ( *( (fPt) ((*  (ptr) pd55 ))))((*  (ptr) w←v8132 ), (* (( (ptr) w←v8132)+350) ), (* (( (ptr) w←v8132)+354) ), var←c53308, var←c53340, (* (
               ( (ptr) w←v8132)+353) )
            , (b←v5196.f1 - dirtyFix←v8188), b←v5196.f0, (* (( (ptr) w←v8132)+355) ), 1, (* (( (ptr) gf←c56476)+6)/* mPadNoErrors←v3432 */  ), pd55)
         ;
         };
      };
   }

static void IBMBugActualPaint1←P180(b←v5296, ref←v5324)
   W4 b←v5296;
   word ref←v5324;
   {
   register ptr gf←c56508 =  (ptr) &globalframe;
   word w←v8232;
   word dirtyFix←v8288;
   /* IBMBugActualPaint1: */ 
SOURCE(2128, 479)
SOURCE(2178, 33)
   w←v8232 = XR←Narrow(ref←v5324, (* (( (ptr) gf←c56508)+21) ));
SOURCE(2227, 30)
   dirtyFix←v8288 = IOP2( % ,  (int)b←v5296.f1,  (int)32);
SOURCE(2259, 62)
   if (( (int)((* (( (ptr) w←v8232)+351) ) + b←v5296.f1) <  (int)dirtyFix←v8288)) {
SOURCE(2297, 24)
      dirtyFix←v8288 = (dirtyFix←v8288 - 32);
      };
SOURCE(2327, 280)
   {
      W2 var←c53372;
      W2 var←c53404;
      var←c53372.f0 = ((b←v5296.f3 - b←v5296.f1) + dirtyFix←v8288);
      var←c53372.f1 = (b←v5296.f2 - b←v5296.f0);
      var←c53404.f0 = (((* (( (ptr) w←v8232)+351) ) + b←v5296.f1) - dirtyFix←v8288);
      var←c53404.f1 = ((* (( (ptr) w←v8232)+352) ) + b←v5296.f0);
      {
         word pd56;
         pd56 = (* (( (ptr) (* (( (ptr) gf←c56508)+138)/* var←c53212 */  ))+172) );
         (void) ( *( (fPt) ((*  (ptr) pd56 ))))((*  (ptr) w←v8232 ), (* (( (ptr) w←v8232)+350) ), (* (( (ptr) w←v8232)+354) ), var←c53372, var←c53404, (* (
               ( (ptr) w←v8232)+353) )
            , (b←v5296.f1 - dirtyFix←v8288), b←v5296.f0, (* (( (ptr) w←v8232)+355) ), 1, (* (( (ptr) gf←c56508)+5)/* noErrors←v3376 */  ), pd56)
         ;
         };
      };
   }

static void ActualPaint1←P240(b←v5396, ref←v5424)
   W4 b←v5396;
   word ref←v5424;
   {
   register ptr gf←c56540 =  (ptr) &globalframe;
   word w←v8332;
   /* ActualPaint1: */ 
SOURCE(2613, 392)
SOURCE(2657, 33)
   w←v8332 = XR←Narrow(ref←v5424, (* (( (ptr) gf←c56540)+21) ));
SOURCE(2725, 280)
   {
      W2 var←c53436;
      W2 var←c53468;
      var←c53436.f0 = (b←v5396.f3 - b←v5396.f1);
      var←c53436.f1 = (b←v5396.f2 - b←v5396.f0);
      var←c53468.f0 = ((* (( (ptr) w←v8332)+351) ) + b←v5396.f1);
      var←c53468.f1 = ((* (( (ptr) w←v8332)+352) ) + b←v5396.f0);
      {
         word pd57;
         pd57 = (* (( (ptr) (* (( (ptr) gf←c56540)+138)/* var←c53212 */  ))+172) );
         (void) ( *( (fPt) ((*  (ptr) pd57 ))))((*  (ptr) w←v8332 ), (* (( (ptr) w←v8332)+350) ), (* (( (ptr) w←v8332)+354) ), var←c53436, var←c53468, (* (
               ( (ptr) w←v8332)+353) )
            , b←v5396.f1, b←v5396.f0, (* (( (ptr) w←v8332)+355) ), 1, (* (( (ptr) gf←c56540)+5)/* noErrors←v3376 */  ), pd57);
         };
      };
   }

static void ActualPaint2←P300(b←v5496, ref←v5524)
   W4 b←v5496;
   word ref←v5524;
   {
   register ptr gf←c56572 =  (ptr) &globalframe;
   word w←v8432;
   word dirtyFix←v8516;
   /* ActualPaint2: */ 
SOURCE(3011, 552)
SOURCE(3055, 33)
   w←v8432 = XR←Narrow(ref←v5524, (* (( (ptr) gf←c56572)+21) ));
SOURCE(3172, 35)
   dirtyFix←v8516 = IOP2( % ,  (int)b←v5496.f1,  (int)16);
SOURCE(3210, 67)
   if (( (int)((* (( (ptr) w←v8432)+351) ) + b←v5496.f1) <  (int)dirtyFix←v8516)) {
SOURCE(3248, 29)
      dirtyFix←v8516 = (dirtyFix←v8516 - 16);
      };
SOURCE(3283, 280)
   {
      W2 var←c53500;
      W2 var←c53532;
      var←c53500.f0 = ((b←v5496.f3 - b←v5496.f1) + dirtyFix←v8516);
      var←c53500.f1 = (b←v5496.f2 - b←v5496.f0);
      var←c53532.f0 = (((* (( (ptr) w←v8432)+351) ) + b←v5496.f1) - dirtyFix←v8516);
      var←c53532.f1 = ((* (( (ptr) w←v8432)+352) ) + b←v5496.f0);
      {
         word pd58;
         pd58 = (* (( (ptr) (* (( (ptr) gf←c56572)+138)/* var←c53212 */  ))+172) );
         (void) ( *( (fPt) ((*  (ptr) pd58 ))))((*  (ptr) w←v8432 ), (* (( (ptr) w←v8432)+350) ), (* (( (ptr) w←v8432)+354) ), var←c53500, var←c53532, (* (
               ( (ptr) w←v8432)+353) )
            , (b←v5496.f1 - dirtyFix←v8516), b←v5496.f0, (* (( (ptr) w←v8432)+355) ), 2, (* (( (ptr) gf←c56572)+5)/* noErrors←v3376 */  ), pd58)
         ;
         };
      };
   }

static void ActualPaint4←P360(b←v5596, ref←v5624)
   W4 b←v5596;
   word ref←v5624;
   {
   register ptr gf←c56604 =  (ptr) &globalframe;
   word w←v8560;
   word dirtyFix←v8644;
   /* ActualPaint4: */ 
SOURCE(3569, 552)
SOURCE(3613, 33)
   w←v8560 = XR←Narrow(ref←v5624, (* (( (ptr) gf←c56604)+21) ));
SOURCE(3730, 35)
   dirtyFix←v8644 = IOP2( % ,  (int)b←v5596.f1,  (int)8);
SOURCE(3768, 67)
   if (( (int)((* (( (ptr) w←v8560)+351) ) + b←v5596.f1) <  (int)dirtyFix←v8644)) {
SOURCE(3806, 29)
      dirtyFix←v8644 = (dirtyFix←v8644 - 8);
      };
SOURCE(3841, 280)
   {
      W2 var←c53564;
      W2 var←c53596;
      var←c53564.f0 = ((b←v5596.f3 - b←v5596.f1) + dirtyFix←v8644);
      var←c53564.f1 = (b←v5596.f2 - b←v5596.f0);
      var←c53596.f0 = (((* (( (ptr) w←v8560)+351) ) + b←v5596.f1) - dirtyFix←v8644);
      var←c53596.f1 = ((* (( (ptr) w←v8560)+352) ) + b←v5596.f0);
      {
         word pd59;
         pd59 = (* (( (ptr) (* (( (ptr) gf←c56604)+138)/* var←c53212 */  ))+172) );
         (void) ( *( (fPt) ((*  (ptr) pd59 ))))((*  (ptr) w←v8560 ), (* (( (ptr) w←v8560)+350) ), (* (( (ptr) w←v8560)+354) ), var←c53564, var←c53596, (* (
               ( (ptr) w←v8560)+353) )
            , (b←v5596.f1 - dirtyFix←v8644), b←v5596.f0, (* (( (ptr) w←v8560)+355) ), 4, (* (( (ptr) gf←c56604)+5)/* noErrors←v3376 */  ), pd59)
         ;
         };
      };
   }

static void ActualPaint8←P420(b←v5696, ref←v5724)
   W4 b←v5696;
   word ref←v5724;
   {
   register ptr gf←c56636 =  (ptr) &globalframe;
   word w←v8688;
   word dirtyFix←v8772;
   /* ActualPaint8: */ 
SOURCE(4127, 552)
SOURCE(4171, 33)
   w←v8688 = XR←Narrow(ref←v5724, (* (( (ptr) gf←c56636)+21) ));
SOURCE(4288, 35)
   dirtyFix←v8772 = IOP2( % ,  (int)b←v5696.f1,  (int)4);
SOURCE(4326, 67)
   if (( (int)((* (( (ptr) w←v8688)+351) ) + b←v5696.f1) <  (int)dirtyFix←v8772)) {
SOURCE(4364, 29)
      dirtyFix←v8772 = (dirtyFix←v8772 - 4);
      };
SOURCE(4399, 280)
   {
      W2 var←c53628;
      W2 var←c53660;
      var←c53628.f0 = ((b←v5696.f3 - b←v5696.f1) + dirtyFix←v8772);
      var←c53628.f1 = (b←v5696.f2 - b←v5696.f0);
      var←c53660.f0 = (((* (( (ptr) w←v8688)+351) ) + b←v5696.f1) - dirtyFix←v8772);
      var←c53660.f1 = ((* (( (ptr) w←v8688)+352) ) + b←v5696.f0);
      {
         word pd60;
         pd60 = (* (( (ptr) (* (( (ptr) gf←c56636)+138)/* var←c53212 */  ))+172) );
         (void) ( *( (fPt) ((*  (ptr) pd60 ))))((*  (ptr) w←v8688 ), (* (( (ptr) w←v8688)+350) ), (* (( (ptr) w←v8688)+354) ), var←c53628, var←c53660, (* (
               ( (ptr) w←v8688)+353) )
            , (b←v5696.f1 - dirtyFix←v8772), b←v5696.f0, (* (( (ptr) w←v8688)+355) ), 8, (* (( (ptr) gf←c56636)+5)/* noErrors←v3376 */  ), pd60)
         ;
         };
      };
   }

static void ActualPaint24←P480(b←v5796, ref←v5824)
   W4 b←v5796;
   word ref←v5824;
   {
   register ptr gf←c56668 =  (ptr) &globalframe;
   word w←v8816;
   word dirtyFix←v8872;
   /* ActualPaint24: */ 
SOURCE(4685, 517)
SOURCE(4730, 33)
   w←v8816 = XR←Narrow(ref←v5824, (* (( (ptr) gf←c56668)+21) ));
SOURCE(4780, 29)
   dirtyFix←v8872 = IOP2( % ,  (int)b←v5796.f1,  (int)3);
SOURCE(4855, 61)
   if (( (int)((* (( (ptr) w←v8816)+351) ) + b←v5796.f1) <  (int)dirtyFix←v8872)) {
SOURCE(4893, 23)
      dirtyFix←v8872 = (dirtyFix←v8872 - 3);
      };
SOURCE(4922, 280)
   {
      W2 var←c53692;
      W2 var←c53724;
      var←c53692.f0 = ((b←v5796.f3 - b←v5796.f1) + dirtyFix←v8872);
      var←c53692.f1 = (b←v5796.f2 - b←v5796.f0);
      var←c53724.f0 = (((* (( (ptr) w←v8816)+351) ) + b←v5796.f1) - dirtyFix←v8872);
      var←c53724.f1 = ((* (( (ptr) w←v8816)+352) ) + b←v5796.f0);
      {
         word pd61;
         pd61 = (* (( (ptr) (* (( (ptr) gf←c56668)+138)/* var←c53212 */  ))+172) );
         (void) ( *( (fPt) ((*  (ptr) pd61 ))))((*  (ptr) w←v8816 ), (* (( (ptr) w←v8816)+350) ), (* (( (ptr) w←v8816)+354) ), var←c53692, var←c53724, (* (
               ( (ptr) w←v8816)+353) )
            , (b←v5796.f1 - dirtyFix←v8872), b←v5796.f0, (* (( (ptr) w←v8816)+355) ), 24, (* (( (ptr) gf←c56668)+5)/* noErrors←v3376 */  ), pd61)
         ;
         };
      };
   }

static void ShmPaintCopyPlane←P540(b←v5896, ref←v5924)
   W4 b←v5896;
   word ref←v5924;
   {
   register ptr gf←c56700 =  (ptr) &globalframe;
   word w←v8916;
   /* ShmPaintCopyPlane: */ 
SOURCE(5208, 293)
SOURCE(5257, 33)
   w←v8916 = XR←Narrow(ref←v5924, (* (( (ptr) gf←c56700)+21) ));
SOURCE(5292, 209)
   {
      W2 var←c53756;
      W2 var←c53788;
      W2 var←c53820;
      var←c53756.f0 = b←v5896.f1;
      var←c53756.f1 = b←v5896.f0;
      var←c53788.f0 = ((* (( (ptr) w←v8916)+351) ) + b←v5896.f1);
      var←c53788.f1 = ((* (( (ptr) w←v8916)+352) ) + b←v5896.f0);
      var←c53820.f0 = (b←v5896.f3 - b←v5896.f1);
      var←c53820.f1 = (b←v5896.f2 - b←v5896.f0);
      {
         word pd62;
         pd62 = (* (( (ptr) (* (( (ptr) gf←c56700)+138)/* var←c53212 */  ))+168) );
         (void) ( *( (fPt) ((*  (ptr) pd62 ))))((*  (ptr) w←v8916 ), (* (( (ptr) w←v8916)+356) ), (* (( (ptr) w←v8916)+350) ), var←c53756, var←c53788, var←c53820
            , (* (( (ptr) w←v8916)+354) ), 1, (* (( (ptr) gf←c56700)+5)/* noErrors←v3376 */  ), pd62);
         };
      };
   }

static void ShmPaintCopyArea←P600(b←v5996, ref←v6024)
   W4 b←v5996;
   word ref←v6024;
   {
   register ptr gf←c56732 =  (ptr) &globalframe;
   word w←v8960;
   /* ShmPaintCopyArea: */ 
SOURCE(5505, 278)
SOURCE(5553, 33)
   w←v8960 = XR←Narrow(ref←v6024, (* (( (ptr) gf←c56732)+21) ));
SOURCE(5588, 195)
   {
      W2 var←c53852;
      W2 var←c53884;
      W2 var←c53916;
      var←c53852.f0 = b←v5996.f1;
      var←c53852.f1 = b←v5996.f0;
      var←c53884.f0 = ((* (( (ptr) w←v8960)+351) ) + b←v5996.f1);
      var←c53884.f1 = ((* (( (ptr) w←v8960)+352) ) + b←v5996.f0);
      var←c53916.f0 = (b←v5996.f3 - b←v5996.f1);
      var←c53916.f1 = (b←v5996.f2 - b←v5996.f0);
      {
         word pd63;
         pd63 = (* (( (ptr) (* (( (ptr) gf←c56732)+138)/* var←c53212 */  ))+167) );
         (void) ( *( (fPt) ((*  (ptr) pd63 ))))((*  (ptr) w←v8960 ), (* (( (ptr) w←v8960)+356) ), (* (( (ptr) w←v8960)+350) ), var←c53852, var←c53884, var←c53916
            , (* (( (ptr) w←v8960)+354) ), (* (( (ptr) gf←c56732)+5)/* noErrors←v3376 */  ), pd63);
         };
      };
   }

static void EventHandler←P720(event←v22052, clientData←v22080, tq←v22108)
   word event←v22052;
   word clientData←v22080;
   word tq←v22108;
   {
   register ptr gf←c56764 =  (ptr) &globalframe;
   word widget←v9004;
   word bmRef←v9032;
   /* EventHandler: */ 
SOURCE(5987, 694)
SOURCE(6022, 35)
   widget←v9004 = XR←Narrow(clientData←v22080, (* (( (ptr) gf←c56764)+23) ));
SOURCE(6059, 38)
   {
      word var←c53948;
      word superClass←v50988;
      superClass←v50988 = (* (( (ptr) gf←c56764)+4)/* bmClass←v3292 */  );
      {
         word idx64;
         word limit65;
         var←c53948 = (* ((( (ptr) widget←v9004)+49)+(
               idx64 = (* (( (ptr) superClass←v50988)+4) ),
               limit65 = (* (( (ptr) widget←v9004)+48) ),
               BCK(idx64, limit65)
               )) );
         };
      bmRef←v9032 = XR←Narrow(var←c53948, (* (( (ptr) gf←c56764)+22) ));
      };
SOURCE(6099, 582)
   if (((* (( (ptr) bmRef←v9032)+13) ) != 0)) {
SOURCE(6126, 555)
      {
         word var←c53980;
         var←c53980 = (* (( (ptr) event←v22052)+4) );
         switch (var←c53980) {
            case 19: 
SOURCE(6164, 19)
               (* (( (ptr) bmRef←v9032)+14) ) = 1;
SOURCE(6185, 34)
               (void) SetBM←P1800(bmRef←v9032, widget←v9004, 0, 0);
SOURCE(6221, 37)
               {
                  word pd66;
                  pd66 = (* (( (ptr) bmRef←v9032)+13) );
                  (void) ( *( (fPt) ((*  (ptr) pd66 ))))(widget←v9004, 2, (* (( (ptr) bmRef←v9032)+15) ), pd66);
                  };
               break;
            case 18: 
SOURCE(6280, 20)
               (* (( (ptr) bmRef←v9032)+14) ) = 0;
SOURCE(6302, 11)
               (void) Stop←P1080(bmRef←v9032);
SOURCE(6315, 39)
               {
                  word pd67;
                  pd67 = (* (( (ptr) bmRef←v9032)+13) );
                  (void) ( *( (fPt) ((*  (ptr) pd67 ))))(widget←v9004, 3, (* (( (ptr) bmRef←v9032)+15) ), pd67);
                  };
               break;
            case 12: 
SOURCE(6369, 314)
               {
                  word e←v9088;
                  word s←v9116 = 0;
                  word w←v9144;
SOURCE(6371, 33)
                  if ((event←v22052 == 0)) {
                     goto lab←L100001;
                     };
                  if (((* (( (ptr) event←v22052)+4) ) == 12)) {
                     goto lab←L100001;
                     };
                  (void) XR←RaiseError(XR←NarrowFault, 0);
                  lab←L100001: ;
                  e←v9088 = event←v22052;
SOURCE(6427, 35)
                  w←v9144 = (* (( (ptr) bmRef←v9032)+4) );
SOURCE(6464, 37)
                  if ((w←v9144 == 0)) { goto then068;};
                  s←v9116 = (* (( (ptr) w←v9144)+7) );
                  if ((s←v9116 == 0)) {
                     then068: ;
SOURCE(6495, 6)
                     return;
                     };
SOURCE(6503, 178)
                  {
                     W4 var←c54012;
                     var←c54012.f0 = ((* (( (ptr) e←v9088)+8) ) - (* (( (ptr) w←v9144)+352) ));
                     var←c54012.f1 = ((* (( (ptr) e←v9088)+7) ) - (* (( (ptr) w←v9144)+351) ));
                     var←c54012.f2 = (((* (( (ptr) e←v9088)+8) ) + (* (( (ptr) e←v9088)+10) )) - (* (( (ptr) w←v9144)+352) ));
                     var←c54012.f3 = (((* (( (ptr) e←v9088)+7) ) + (* (( (ptr) e←v9088)+9) )) - (* (( (ptr) w←v9144)+351) ));
                     {
                        word pd69;
                        pd69 = (* (( (ptr) (* (( (ptr) gf←c56764)+140)/* var←c54044 */  ))+7) );
                        (void) ( *( (fPt) ((*  (ptr) pd69 ))))(s←v9116, w←v9144, var←c54012,  (unsigned) ((* (( (ptr) e←v9088)+11) ) != 0), pd69)
                        ;
                        };
                     };
                  };
               break;
            };
         };
      };
   }

static void FreeShmData←P780(x←v6212)
   word x←v6212;
   {
   register ptr gf←c56796 =  (ptr) &globalframe;
   /* FreeShmData: */ 
SOURCE(6708, 208)
SOURCE(6739, 177)
   {
      word var←c54076;
      var←c54076 = x←v6212;
      if ((var←c54076 == 0)) {
         goto lab←L100002;
         };
      if (((* (( (ptr) gf←c56796)+25) ) == XR←GetReferentType(var←c54076))) {
         {
            word sd←v9188;
            sd←v9188 = var←c54076;
SOURCE(6777, 141)
            {
               word pm←v9244;
               word var←c54108;
               word c←v50940;
SOURCE(6779, 28)
               pm←v9244 = (*  (ptr) sd←v9188 );
SOURCE(6809, 28)
               (*  (ptr) sd←v9188 ) = 0;
SOURCE(6839, 77)
               {
                  word tc70;
                  c←v50940 = (* (( (ptr) sd←v9188)+1) );
                  if ((c←v50940 != 0)) {
                     var←c54108 =  (unsigned) (0 != (* (( (ptr) c←v50940)+15) ));
                     }
                  else {
                     var←c54108 =  (unsigned) 0;
                     };
                  if ((0 != var←c54108)) {
                     tc70 =  (word) (pm←v9244 != 0);
                     }
                  else {
                     tc70 =  (word) 0;
                     };
                  if (tc70) {
SOURCE(6883, 33)
                     {
                        word pd71;
                        pd71 = (* (( (ptr) (* (( (ptr) gf←c56796)+138)/* var←c53212 */  ))+97) );
                        (void) ( *( (fPt) ((*  (ptr) pd71 ))))((* (( (ptr) sd←v9188)+1) ), pm←v9244, (* (( (ptr) gf←c56796)+5)/* noErrors←v3376 */  ), pd71)
                        ;
                        };
                     };
                  };
               };
            };
         }
      else {
         lab←L100002: ;
         };
      };
   }

static void DelayedDestroyShmData←P840(sd←v6284)
   word sd←v6284;
   {
   register ptr gf←c56828 =  (ptr) &globalframe;
   /* DelayedDestroyShmData: */ 
SOURCE(6939, 107)
SOURCE(6989, 57)
   if ((sd←v6284 != 0)) {
SOURCE(7004, 42)
      {
         word pd72;
         pd72 = (* (( (ptr) (* (( (ptr) gf←c56828)+141)/* var←c54140 */  ))+5) );
         (void) ( *( (fPt) ((*  (ptr) pd72 ))))(100, (word) (( (bPt) gf←c56828)+408)/* var←c52476 */ , sd←v6284, 2, pd72);
         };
      };
   }

static void BMDestroyWindowLR←P900(widget←v19052, reason←v19080)
   word widget←v19052;
   word reason←v19080;
   {
   register ptr gf←c56860 =  (ptr) &globalframe;
   word bmRef←v9288;
   word sd←v9316;
   /* BMDestroyWindowLR: */ 
SOURCE(7050, 308)
SOURCE(7087, 38)
   {
      word var←c54172;
      word superClass←v51660;
      superClass←v51660 = (* (( (ptr) gf←c56860)+4)/* bmClass←v3292 */  );
      {
         word idx73;
         word limit74;
         var←c54172 = (* ((( (ptr) widget←v19052)+49)+(
               idx73 = (* (( (ptr) superClass←v51660)+4) ),
               limit74 = (* (( (ptr) widget←v19052)+48) ),
               BCK(idx73, limit74)
               )) );
         };
      bmRef←v9288 = XR←Narrow(var←c54172, (* (( (ptr) gf←c56860)+22) ));
      };
SOURCE(7127, 31)
   sd←v9316 = (* (( (ptr) bmRef←v9288)+20) );
SOURCE(7160, 19)
   (* (( (ptr) bmRef←v9288)+20) ) = 0;
SOURCE(7181, 72)
   if (((* (( (ptr) bmRef←v9288)+13) ) != 0)) {
SOURCE(7206, 47)
      {
         word pd75;
         pd75 = (* (( (ptr) bmRef←v9288)+13) );
         (void) ( *( (fPt) ((*  (ptr) pd75 ))))(widget←v19052, 4, (* (( (ptr) bmRef←v9288)+15) ), pd75);
         };
      };
SOURCE(7255, 48)
   {
      word pd76;
      pd76 = (* (( (ptr) (* (( (ptr) gf←c56860)+136)/* var←c53052 */  ))+26) );
      (void) ( *( (fPt) ((*  (ptr) pd76 ))))(widget←v19052, reason←v19080, pd76);
      };
SOURCE(7305, 11)
   (void) Stop←P1080(bmRef←v9288);
SOURCE(7318, 40)
   if ((sd←v9316 != 0)) {
SOURCE(7333, 25)
      (void) DelayedDestroyShmData←P840(sd←v9316);
      };
   }

static void BMConfigureLR←P960(widget←v18908, geometry←v18936, mapping←v18964, reConsiderChildren←v18992)
   word widget←v18908;
   W5 geometry←v18936;
   word mapping←v18964;
   word reConsiderChildren←v18992;
   {
   register ptr gf←c56892 =  (ptr) &globalframe;
   word bmRef←v9384;
   word existW←v9412;
   word createW←v9440;
   word reason←v9468 = 1;
   /* BMConfigureLR: */ 
SOURCE(7364, 1192)
SOURCE(7397, 38)
   {
      word var←c54204;
      word superClass←v51612;
      superClass←v51612 = (* (( (ptr) gf←c56892)+4)/* bmClass←v3292 */  );
      {
         word idx77;
         word limit78;
         var←c54204 = (* ((( (ptr) widget←v18908)+49)+(
               idx77 = (* (( (ptr) superClass←v51612)+4) ),
               limit78 = (* (( (ptr) widget←v18908)+48) ),
               BCK(idx77, limit78)
               )) );
         };
      bmRef←v9384 = XR←Narrow(var←c54204, (* (( (ptr) gf←c56892)+22) ));
      };
SOURCE(7496, 42)
   existW←v9412 =  (unsigned) ((* (( (ptr) widget←v18908)+44) ) < 2);
SOURCE(7540, 42)
   if ((mapping←v18964 < 2)) {
      createW←v9440 =  (unsigned) (0 == existW←v9412);
      }
   else {
      createW←v9440 =  (unsigned) 0;
      };
SOURCE(7584, 117)
   if ((0 != createW←v9440)) {
SOURCE(7602, 99)
      {
         W4 var←c54236;
         var←c54236.f0 = (word) (( (bPt) gf←c56892)+416)/* var←c52508 */ ;
         var←c54236.f1 = (* (( (ptr) gf←c56892)+7)/* eventFilter←v3740 */  );
         var←c54236.f2 = (* (( (ptr) widget←v18908)+45) );
         var←c54236.f3 = widget←v18908;
         {
            word pd79;
            pd79 = (* (( (ptr) (* (( (ptr) gf←c56892)+142)/* var←c54268 */  ))+31) );
            (void) ( *( (fPt) ((*  (ptr) pd79 ))))(widget←v18908, var←c54236, 32768, pd79);
            };
         };
      };
SOURCE(7706, 63)
   {
      word pd80;
      pd80 = (* (( (ptr) (* (( (ptr) gf←c56892)+136)/* var←c53052 */  ))+25) );
      (void) ( *( (fPt) ((*  (ptr) pd80 ))))(widget←v18908, geometry←v18936, mapping←v18964, 0, pd80);
      };
SOURCE(7771, 785)
   if (((0 != existW←v9412) || (0 != createW←v9440))) {
SOURCE(7799, 649)
      if ((0 != createW←v9440)) {
SOURCE(7815, 638)
         {
            word sd←v9524;
            word ownBM←v9552;
SOURCE(7817, 39)
            sd←v9524 = (* (( (ptr) widget←v18908)+36) );
SOURCE(7858, 42)
            ownBM←v9552 = (* (( (ptr) bmRef←v9384)+16) );
SOURCE(7902, 25)
            (* (( (ptr) bmRef←v9384)+21) ) = (word) MakeGC←P1740(widget←v18908);
SOURCE(7929, 20)
            (* (( (ptr) bmRef←v9384)+14) ) = 0;
SOURCE(7951, 21)
            reason←v9468 = 0;
SOURCE(7974, 474)
            if ((sd←v9524 != 0)) {
SOURCE(7992, 91)
               {
                  word var←c54300;
                  {
                     word pd81;
                     pd81 = (* (( (ptr) (* (( (ptr) gf←c56892)+143)/* var←c54332 */  ))+6) );
                     var←c54300 =  (unsigned) ((word) ( *( (fPt) ((*  (ptr) pd81 ))))((* (( (ptr) sd←v9524)+1) ), 8, 3, pd81) != 0);
                     };
                  (* (( (ptr) bmRef←v9384)+17) ) = var←c54300;
                  };
SOURCE(8086, 91)
               {
                  word var←c54364;
                  {
                     word pd82;
                     pd82 = (* (( (ptr) (* (( (ptr) gf←c56892)+143)/* var←c54332 */  ))+6) );
                     var←c54364 =  (unsigned) ((word) ( *( (fPt) ((*  (ptr) pd82 ))))((* (( (ptr) sd←v9524)+1) ), 4, 3, pd82) != 0);
                     };
                  (* (( (ptr) bmRef←v9384)+18) ) = var←c54364;
                  };
SOURCE(8180, 91)
               {
                  word var←c54396;
                  {
                     word pd83;
                     pd83 = (* (( (ptr) (* (( (ptr) gf←c56892)+143)/* var←c54332 */  ))+6) );
                     var←c54396 =  (unsigned) ((word) ( *( (fPt) ((*  (ptr) pd83 ))))((* (( (ptr) sd←v9524)+1) ), 2, 3, pd83) != 0);
                     };
                  (* (( (ptr) bmRef←v9384)+19) ) = var←c54396;
                  };
SOURCE(8274, 107)
               if ( ( (ownBM←v9552 != 0) ?  ( ((0 != (* (( (ptr) bmRef←v9384)+17) )) || (0 != (* (( (ptr) bmRef←v9384)+18) ))) ? 1 : (0 != (* (
                  ( (ptr) bmRef←v9384)+19) )) )  : 0 ) ) {
SOURCE(8350, 31)
                  (void) FollowColorsOnce←P2220(widget←v18908, ownBM←v9552);
                  };
               }
            else {
SOURCE(8392, 56)
               (* (( (ptr) bmRef←v9384)+19) ) = 0;
               (* (( (ptr) bmRef←v9384)+18) ) = 0;
               (* (( (ptr) bmRef←v9384)+17) ) = 0;
               };
            };
         };
SOURCE(8456, 33)
      (void) SetBM←P1800(bmRef←v9384, widget←v18908, 0, 1);
SOURCE(8491, 65)
      if (((* (( (ptr) bmRef←v9384)+13) ) != 0)) {
SOURCE(8516, 40)
         {
            word pd84;
            pd84 = (* (( (ptr) bmRef←v9384)+13) );
            (void) ( *( (fPt) ((*  (ptr) pd84 ))))(widget←v18908, reason←v9468, (* (( (ptr) bmRef←v9384)+15) ), pd84);
            };
         };
      };
   }

static void Set←P1020(bmRef←v6356, h←v6384)
   word bmRef←v6356;
   word h←v6384;
   {
   W6 var←c56924;
   register ptr gf←c56956 =  (ptr) &globalframe;
   /* declaration of var←c54428 skipped */ 
   word old←v9624;
   /* Set: */ 
SOURCE(8565, 302)
   {
      word tmpAddr85;
      tmpAddr85 = (word) (( (ptr) &var←c56924)+4)/* var←c54428 */ ;
      (*  (ptr) tmpAddr85 ) = ( ((word)  (fPt) Swap←P2472) );
      (* (( (ptr) tmpAddr85) + 1) ) = 1;
      };
SOURCE(8786, 38)
   old←v9624 = (word) Swap←P2472(bmRef←v6356, h←v6384, (word) (( (bPt) &var←c56924)+16)/* var←c54428 */ );
SOURCE(8826, 41)
   if ((old←v9624 != 0)) {
SOURCE(8842, 25)
      {
         word pd86;
         pd86 = (* (( (ptr) (* (( (ptr) gf←c56956)+140)/* var←c54044 */  ))+6) );
         (void) ( *( (fPt) ((*  (ptr) pd86 ))))(old←v9624, pd86);
         };
      };
   }

static word Swap←P2472(bmRef←v9700, new←v9728, formal←c56988)
   word bmRef←v9700;
   word new←v9728;
   word formal←c56988;
   {
   word old←v9784;
   formal←c56988 = (formal←c56988 - 16);
   /* Swap: */ 
SOURCE(8619, 162)
   (void) (XR←MonitorEntry(bmRef←v9700));
SOURCE(8619, 162)
   old←v9784 = 0;
SOURCE(8714, 19)
   old←v9784 = (* (( (ptr) bmRef←v9700)+4) );
SOURCE(8735, 25)
   if ((old←v9784 == new←v9728)) {
SOURCE(8751, 9)
      old←v9784 = 0;
      };
SOURCE(8762, 19)
   (* (( (ptr) bmRef←v9700)+4) ) = new←v9728;
SOURCE(8619, 162)
   (void) (XR←MonitorExit(bmRef←v9700));
   return(old←v9784);
   }

static void Stop←P1080(bmRef←v6456)
   word bmRef←v6456;
   {
   W6 var←c57020;
   register ptr gf←c57052 =  (ptr) &globalframe;
   /* declaration of var←c54460 skipped */ 
   word old←v9840;
   /* Stop: */ 
SOURCE(8873, 235)
   {
      word tmpAddr87;
      tmpAddr87 = (word) (( (ptr) &var←c57020)+4)/* var←c54460 */ ;
      (*  (ptr) tmpAddr87 ) = ( ((word)  (fPt) Nillout←P2532) );
      (* (( (ptr) tmpAddr87) + 1) ) = 1;
      };
SOURCE(9027, 38)
   old←v9840 = (word) Nillout←P2532(bmRef←v6456, (word) (( (bPt) &var←c57020)+16)/* var←c54460 */ );
SOURCE(9067, 41)
   if ((old←v9840 != 0)) {
SOURCE(9083, 25)
      {
         word pd88;
         pd88 = (* (( (ptr) (* (( (ptr) gf←c57052)+140)/* var←c54044 */  ))+6) );
         (void) ( *( (fPt) ((*  (ptr) pd88 ))))(old←v9840, pd88);
         };
      };
   }

static word Nillout←P2532(bmRef←v9916, formal←c57084)
   word bmRef←v9916;
   word formal←c57084;
   {
   word old←v9972;
   formal←c57084 = (formal←c57084 - 16);
   /* Nillout: */ 
SOURCE(8907, 115)
   (void) (XR←MonitorEntry(bmRef←v9916));
SOURCE(8907, 115)
   old←v9972 = 0;
SOURCE(8982, 19)
   old←v9972 = (* (( (ptr) bmRef←v9916)+4) );
SOURCE(9003, 19)
   (* (( (ptr) bmRef←v9916)+4) ) = 0;
SOURCE(8907, 115)
   (void) (XR←MonitorExit(bmRef←v9916));
   return(old←v9972);
   }

static void BMPreStopFastAccess←P1140(widget←v19140, reason←v19168)
   word widget←v19140;
   word reason←v19168;
   {
   register ptr gf←c57116 =  (ptr) &globalframe;
   word bmRef←v10000;
   /* BMPreStopFastAccess: */ 
SOURCE(9114, 90)
SOURCE(9153, 38)
   {
      word var←c54492;
      word superClass←v51564;
      superClass←v51564 = (* (( (ptr) gf←c57116)+4)/* bmClass←v3292 */  );
      {
         word idx89;
         word limit90;
         var←c54492 = (* ((( (ptr) widget←v19140)+49)+(
               idx89 = (* (( (ptr) superClass←v51564)+4) ),
               limit90 = (* (( (ptr) widget←v19140)+48) ),
               BCK(idx89, limit90)
               )) );
         };
      bmRef←v10000 = XR←Narrow(var←c54492, (* (( (ptr) gf←c57116)+22) ));
      };
SOURCE(9193, 11)
   (void) Stop←P1080(bmRef←v10000);
   }

static void BMFullStopFastAccessLR←P1200(widget←v19228, protectTQLR←v19256, reason←v19284)
   word widget←v19228;
   word protectTQLR←v19256;
   word reason←v19284;
   {
   register ptr gf←c57148 =  (ptr) &globalframe;
   word bmRef←v10056;
   /* BMFullStopFastAccessLR: */ 
SOURCE(9210, 176)
SOURCE(9261, 38)
   {
      word var←c54524;
      word superClass←v51516;
      superClass←v51516 = (* (( (ptr) gf←c57148)+4)/* bmClass←v3292 */  );
      {
         word idx91;
         word limit92;
         var←c54524 = (* ((( (ptr) widget←v19228)+49)+(
               idx91 = (* (( (ptr) superClass←v51516)+4) ),
               limit92 = (* (( (ptr) widget←v19228)+48) ),
               BCK(idx91, limit92)
               )) );
         };
      bmRef←v10056 = XR←Narrow(var←c54524, (* (( (ptr) gf←c57148)+22) ));
      };
SOURCE(9301, 11)
   (void) Stop←P1080(bmRef←v10056);
SOURCE(9314, 72)
   if (((* (( (ptr) bmRef←v10056)+13) ) != 0)) {
SOURCE(9339, 47)
      {
         word pd93;
         pd93 = (* (( (ptr) bmRef←v10056)+13) );
         (void) ( *( (fPt) ((*  (ptr) pd93 ))))(widget←v19228, 4, (* (( (ptr) bmRef←v10056)+15) ), pd93);
         };
      };
   }

static void BMDestroyWidget←P1260(widget←v19344)
   word widget←v19344;
   {
   register ptr gf←c57180 =  (ptr) &globalframe;
   word bmRef←v10112;
   /* BMDestroyWidget: */ 
SOURCE(9392, 83)
SOURCE(9424, 38)
   {
      word var←c54556;
      word superClass←v51468;
      superClass←v51468 = (* (( (ptr) gf←c57180)+4)/* bmClass←v3292 */  );
      {
         word idx94;
         word limit95;
         var←c54556 = (* ((( (ptr) widget←v19344)+49)+(
               idx94 = (* (( (ptr) superClass←v51468)+4) ),
               limit95 = (* (( (ptr) widget←v19344)+48) ),
               BCK(idx94, limit95)
               )) );
         };
      bmRef←v10112 = XR←Narrow(var←c54556, (* (( (ptr) gf←c57180)+22) ));
      };
SOURCE(9464, 11)
   (void) Stop←P1080(bmRef←v10112);
   }

static void NullNotify←P1320(widget←v22168, reason←v22196, data←v22224)
   word widget←v22168;
   word reason←v22196;
   word data←v22224;
   {
   /* NullNotify: */ 
   }

static void InitInstPart←P1380(widget←v19404, arguments←v19432)
   word widget←v19404;
   word arguments←v19432;
   {
   register ptr gf←c57212 =  (ptr) &globalframe;
   /* InitInstPart: */ 
SOURCE(9516, 189)
SOURCE(9555, 91)
   {
      word superClass←v50816;
      word val←v50844;
      superClass←v50816 = (* (( (ptr) gf←c57212)+4)/* bmClass←v3292 */  );
      val←v50844 = XR←NewObject(88, (* (( (ptr) gf←c57212)+22) ));
      (* (( (ptr) val←v50844)+9) ) = 2147483648;
      (* (( (ptr) val←v50844)+10) ) = 2147483648;
      (* (( (ptr) val←v50844)+11) ) = 2147483647;
      (* (( (ptr) val←v50844)+12) ) = 2147483647;
      (* (( (ptr) val←v50844)+13) ) = (word) (( (bPt) gf←c57212)+336)/* var←c52188 */ ;
      {
         word idx96;
         word limit97;
         (* ((( (ptr) widget←v19404)+49)+(
               idx96 = (* (( (ptr) superClass←v50816)+4) ),
               limit97 = (* (( (ptr) widget←v19404)+48) ),
               BCK(idx96, limit97)
               )) ) = val←v50844;
         };
      };
SOURCE(9648, 57)
   {
      word pd98;
      pd98 = (* (( (ptr) (* (( (ptr) gf←c57212)+142)/* var←c54268 */  ))+6) );
      (void) ( *( (fPt) ((*  (ptr) pd98 ))))(widget←v19404, 2, 1, pd98);
      };
   }

static void DontNotify←P1440(widget←v22284, reason←v22312, data←v22340)
   word widget←v22284;
   word reason←v22312;
   word data←v22340;
   {
   /* DontNotify: */ 
   }

static void SetCallbacks←P1500(bmw←v6528, notify←v6556, data←v6584)
   word bmw←v6528;
   word notify←v6556;
   word data←v6584;
   {
   register ptr gf←c57244 =  (ptr) &globalframe;
   word bmRef←v10168;
   /* SetCallbacks: */ 
SOURCE(9745, 215)
SOURCE(9843, 35)
   {
      word var←c54620;
      word superClass←v51420;
      superClass←v51420 = (* (( (ptr) gf←c57244)+4)/* bmClass←v3292 */  );
      {
         word idx99;
         word limit100;
         var←c54620 = (* ((( (ptr) bmw←v6528)+49)+(
               idx99 = (* (( (ptr) superClass←v51420)+4) ),
               limit100 = (* (( (ptr) bmw←v6528)+48) ),
               BCK(idx99, limit100)
               )) );
         };
      bmRef←v10168 = XR←Narrow(var←c54620, (* (( (ptr) gf←c57244)+22) ));
      };
SOURCE(9880, 38)
   if ((notify←v6556 == 0)) {
SOURCE(9899, 19)
      notify←v6556 = (word) (( (bPt) gf←c57244)+320)/* var←c52124 */ ;
      };
SOURCE(9920, 21)
   (* (( (ptr) bmRef←v10168)+13) ) = XR←CheckProc(notify←v6556);
SOURCE(9943, 17)
   (* (( (ptr) bmRef←v10168)+15) ) = data←v6584;
   }

static word CreateBitmapWidget←P1560(widgetSpec←v6656, notify←v6684, data←v6712)
   W9 widgetSpec←v6656;
   word notify←v6684;
   word data←v6712;
   {
   register ptr gf←c57276 =  (ptr) &globalframe;
   word widget←v6768;
   /* CreateBitmapWidget: */ 
SOURCE(10005, 244)
SOURCE(10005, 244)
   widget←v6768 = 0;
SOURCE(10127, 46)
   {
      word pd101;
      pd101 = (* (( (ptr) (* (( (ptr) gf←c57276)+142)/* var←c54268 */  ))+4) );
      widget←v6768 = (word) ( *( (fPt) ((*  (ptr) pd101 ))))(widgetSpec←v6656, (* (( (ptr) gf←c57276)+4)/* bmClass←v3292 */  ), 0, pd101)
      ;
      };
SOURCE(10175, 38)
   {
      word pd102;
      pd102 = (* (( (ptr) (* (( (ptr) gf←c57276)+142)/* var←c54268 */  ))+6) );
      (void) ( *( (fPt) ((*  (ptr) pd102 ))))(widget←v6768, 6, 1, pd102);
      };
SOURCE(10215, 34)
   (void) SetCallbacks←P1500(widget←v6768, notify←v6684, data←v6712);
SOURCE(10005, 244)
   return(widget←v6768);
   }

static void SetBitmap←P1620(widget←v6828, bitmap←v6856, restrict←v6884, origin←v6912, immediateRefresh←v6940, retainRefreshs←v6968)
   word widget←v6828;
   word bitmap←v6856;
   W4 restrict←v6884;
   W2 origin←v6912;
   word immediateRefresh←v6940;
   word retainRefreshs←v6968;
   {
   register ptr gf←c57308 =  (ptr) &globalframe;
   word bmRef←v10224;
   /* SetBitmap: */ 
SOURCE(10255, 425)
SOURCE(10448, 38)
   {
      word var←c54652;
      word superClass←v51372;
      superClass←v51372 = (* (( (ptr) gf←c57308)+4)/* bmClass←v3292 */  );
      {
         word idx103;
         word limit104;
         var←c54652 = (* ((( (ptr) widget←v6828)+49)+(
               idx103 = (* (( (ptr) superClass←v51372)+4) ),
               limit104 = (* (( (ptr) widget←v6828)+48) ),
               BCK(idx103, limit104)
               )) );
         };
      bmRef←v10224 = XR←Narrow(var←c54652, (* (( (ptr) gf←c57308)+22) ));
      };
SOURCE(10488, 17)
   (* (( (ptr) bmRef←v10224)+6) ) = bitmap←v6856;
SOURCE(10507, 64)
   {
      W4 var←c54684;
      {
         word pd105;
         pd105 = (* (( (ptr) (* (( (ptr) gf←c57308)+139)/* var←c53276 */  ))+11) );
         (void) ( *( (fPt) ((*  (ptr) pd105 ))))((word) &var←c54684, bitmap←v6856, pd105);
         };
      {
         W4 var←c0231;
         {
            word pd106;
            pd106 = (* (( (ptr) (* (( (ptr) gf←c57308)+144)/* var←c54716 */  ))+15) );
            (void) ( *( (fPt) ((*  (ptr) pd106 ))))((word) &var←c0231, restrict←v6884, var←c54684, pd106);
            };
         (*  (W4Pt) (( (ptr) bmRef←v10224)+9) ) = var←c0231;
         };
      };
SOURCE(10573, 21)
   (*  (W2Pt) (( (ptr) bmRef←v10224)+7) ) = origin←v6912;
SOURCE(10596, 84)
   if (((* (( (ptr) widget←v6828)+38) ) == 0)) {
SOURCE(10626, 54)
      (void) SetBM←P1800(bmRef←v10224, widget←v6828, immediateRefresh←v6940, retainRefreshs←v6968);
      };
   }

static void GetBitmap←P1680(formal←c0239, widget←v7028)
   word formal←c0239;
   word widget←v7028;
   {
   register ptr gf←c57340 =  (ptr) &globalframe;
   word bitmap←v7072;
   W4 restrict←v7100;
   W2 origin←v7128;
   word bmRef←v10280;
   /* GetBitmap: */ 
SOURCE(10686, 227)
SOURCE(10686, 227)
   bitmap←v7072 = 0;
SOURCE(10686, 227)
   restrict←v7100.f0 = 0;
   restrict←v7100.f1 = 0;
   restrict←v7100.f2 = 0;
   restrict←v7100.f3 = 0;
SOURCE(10806, 38)
   {
      word var←c54748;
      word superClass←v51324;
      superClass←v51324 = (* (( (ptr) gf←c57340)+4)/* bmClass←v3292 */  );
      {
         word idx107;
         word limit108;
         var←c54748 = (* ((( (ptr) widget←v7028)+49)+(
               idx107 = (* (( (ptr) superClass←v51324)+4) ),
               limit108 = (* (( (ptr) widget←v7028)+48) ),
               BCK(idx107, limit108)
               )) );
         };
      bmRef←v10280 = XR←Narrow(var←c54748, (* (( (ptr) gf←c57340)+22) ));
      };
SOURCE(10846, 17)
   bitmap←v7072 = (* (( (ptr) bmRef←v10280)+6) );
SOURCE(10865, 25)
   restrict←v7100 = (*  (W4Pt) (( (ptr) bmRef←v10280)+9) );
SOURCE(10892, 21)
   origin←v7128 = (*  (W2Pt) (( (ptr) bmRef←v10280)+7) );
   /* removed tail goto */ 
   (*  (ptr) formal←c0239 ) = bitmap←v7072;
   (*  (W4Pt) (( (ptr) formal←c0239)+1) ) = restrict←v7100;
   (*  (W2Pt) (( (ptr) formal←c0239)+5) ) = origin←v7128;
   return;
   }

static word MakeGC←P1740(widget←v7188)
   word widget←v7188;
   {
   register ptr gf←c57372 =  (ptr) &globalframe;
   word var←c7232;
   word vendor←v10336;
   word var←c54780;
   word c←v50768;
   word screen←v10364;
   word gc←v10392;
   /* MakeGC: */ 
SOURCE(10919, 538)
SOURCE(10979, 53)
   c←v50768 = (* (( (ptr) widget←v7188)+34) );
   var←c54780 = (* (( (ptr) c←v50768)+16) );
   vendor←v10336 = (* (( (ptr) var←c54780)+15) );
SOURCE(11034, 45)
   screen←v10364 = (* (( (ptr) (* (( (ptr) widget←v7188)+36) ))+1) );
SOURCE(11081, 76)
   {
      word pd109;
      pd109 = (* (( (ptr) (* (( (ptr) gf←c57372)+138)/* var←c53212 */  ))+141) );
      gc←v10392 = (word) ( *( (fPt) ((*  (ptr) pd109 ))))((* (( (ptr) widget←v7188)+34) ), (* (( (ptr) widget←v7188)+35) ), pd109)
      ;
      };
SOURCE(11159, 36)
   {
      word pd110;
      pd110 = (* (( (ptr) (* (( (ptr) gf←c57372)+138)/* var←c53212 */  ))+159) );
      (void) ( *( (fPt) ((*  (ptr) pd110 ))))(gc←v10392, 0, pd110);
      };
SOURCE(11197, 127)
   {
      word pd111;
      pd111 = (* (( (ptr) (* (( (ptr) gf←c57372)+145)/* var←c54812 */  ))+8) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd111 ))))(vendor←v10336, (* (( (ptr) gf←c57372)+37) ), 1, pd111))) {
SOURCE(11246, 78)
         if (((* (( (ptr) screen←v10364)+3) ) == 0)) {
SOURCE(11276, 34)
            {
               word pd112;
               pd112 = (* (( (ptr) (* (( (ptr) gf←c57372)+138)/* var←c53212 */  ))+142) );
               (void) ( *( (fPt) ((*  (ptr) pd112 ))))(gc←v10392, 12, pd112);
               };
SOURCE(11312, 12)
            return(gc←v10392);
            };
         };
      };
SOURCE(11330, 26)
   {
      word pd113;
      pd113 = (* (( (ptr) (* (( (ptr) gf←c57372)+138)/* var←c53212 */  ))+142) );
      (void) ( *( (fPt) ((*  (ptr) pd113 ))))(gc←v10392, 3, pd113);
      };
SOURCE(11358, 85)
   {
      word pd114;
      pd114 = (* (( (ptr) (* (( (ptr) gf←c57372)+138)/* var←c53212 */  ))+146) );
      (void) ( *( (fPt) ((*  (ptr) pd114 ))))(gc←v10392, (* (( (ptr) screen←v10364)+3) ), (* (( (ptr) screen←v10364)+2) ), pd114)
      ;
      };
SOURCE(11445, 12)
   return(gc←v10392);
   }

static void SetBM←P1800(bmRef←v7292, widget←v7320, immediateRefresh←v7348, retainRefreshs←v7376)
   word bmRef←v7292;
   word widget←v7320;
   word immediateRefresh←v7348;
   word retainRefreshs←v7376;
   {
   W12 var←c57404;
   register ptr gf←c57436 =  (ptr) &globalframe;
   /* declaration of var←c54844 skipped */ 
   word vendor←v10464 = 0;
   word bm←v10492;
   /* SetBM: */ 
SOURCE(11461, 3566)
   {
      word tmpAddr115;
      tmpAddr115 = (word) (( (ptr) &var←c57404)+4)/* var←c54844 */ ;
      (*  (ptr) tmpAddr115 ) = ( ((word)  (fPt) Range←P2592) );
      (* (( (ptr) tmpAddr115) + 1) ) = 1;
      };
SOURCE(11684, 30)
   bm←v10492 = (* (( (ptr) bmRef←v7292)+6) );
SOURCE(11716, 3311)
   if ((bm←v10492 == 0) || ((* (( (ptr) widget←v7320)+38) ) != 0)) {
SOURCE(11756, 18)
      (void) Stop←P1080(bmRef←v7292);
      }
   else {
SOURCE(11774, 3258)
      {
         word sd←v10640 = 0;
         /* declaration of shmP←v10668 skipped */ 
         /* declaration of rsm←v10696 skipped */ 
         word paintProc←v10724 = 0;
         word currentCase←v10752 = 0;
         word w←v10780 = 0;
         W2 origin←v10808;
         W4 clip←v10836;
         W4 restrict←v10864;
         word bpp←v10892;
         word var←c55228;
         word c←v50720;
SOURCE(11794, 31)
         (* (( (ptr) &var←c57404)+6)/* shmP←v10668 */  ) = 0;
SOURCE(11827, 62)
         {
            word pd116;
            pd116 = (* (( (ptr) (* (( (ptr) gf←c57436)+139)/* var←c53276 */  ))+10) );
            (* (( (ptr) &var←c57404)+7)/* rsm←v10696 */  ) = (word) ( *( (fPt) ((*  (ptr) pd116 ))))(bm←v10492, pd116);
            };
SOURCE(11980, 31)
         origin←v10808 = (*  (W2Pt) (( (ptr) bmRef←v7292)+7) );
SOURCE(12013, 165)
         clip←v10836.f0 = (word) Range←P2592(INEG(origin←v10808.f1), (word) (( (bPt) &var←c57404)+16)/* var←c54844 */ );
         clip←v10836.f1 = (word) Range←P2592(INEG(origin←v10808.f0), (word) (( (bPt) &var←c57404)+16)/* var←c54844 */ );
         clip←v10836.f2 = (word) Range←P2592(((* (( (ptr) widget←v7320)+42) ) - origin←v10808.f1), (word) (( (bPt) &var←c57404)+16)
            /* var←c54844 */ );
         clip←v10836.f3 = (word) Range←P2592(((* (( (ptr) widget←v7320)+41) ) - origin←v10808.f0), (word) (( (bPt) &var←c57404)+16)
            /* var←c54844 */ );
SOURCE(12180, 53)
         {
            word pd117;
            pd117 = (* (( (ptr) (* (( (ptr) gf←c57436)+144)/* var←c54716 */  ))+15) );
            (void) ( *( (fPt) ((*  (ptr) pd117 ))))((word) &restrict←v10864, (*  (W4Pt) (( (ptr) bmRef←v7292)+9) ), clip←v10836, pd117)
            ;
            };
SOURCE(12235, 60)
         {
            word map←v50672;
            {
               word pd118;
               pd118 = (* (( (ptr) (* (( (ptr) gf←c57436)+139)/* var←c53276 */  ))+10) );
               map←v50672 = (word) ( *( (fPt) ((*  (ptr) pd118 ))))(bm←v10492, pd118);
               };
            bpp←v10892 = (* (( (ptr) map←v50672)+5) );
            };
SOURCE(12297, 189)
         {
            word var←c54940;
            var←c54940 = bpp←v10892;
            switch (var←c54940) {
               case 1: 
                  break;
               case 8: 
SOURCE(12344, 30)
                  if ((0 == (* (( (ptr) bmRef←v7292)+17) ))) {
SOURCE(12368, 6)
                     return;
                     };
                  break;
               case 4: 
SOURCE(12400, 30)
                  if ((0 == (* (( (ptr) bmRef←v7292)+18) ))) {
SOURCE(12424, 6)
                     return;
                     };
                  break;
               case 2: 
SOURCE(12456, 30)
                  if ((0 == (* (( (ptr) bmRef←v7292)+19) ))) {
SOURCE(12480, 6)
                     return;
                     };
                  break;
               };
            };
SOURCE(12523, 11)
         (void) Stop←P1080(bmRef←v7292);
SOURCE(12536, 25)
         {
            word var←c54972;
            var←c54972 = XR←NewObject(1432, (* (( (ptr) gf←c57436)+21) ));
            (* (( (ptr) var←c54972)+3) ) = 2147483647;
            (* (( (ptr) var←c54972)+4) ) = 2147483647;
            (* (( (ptr) var←c54972)+5) ) = 2147483648;
            (* (( (ptr) var←c54972)+6) ) = 2147483648;
            (* (( (ptr) var←c54972)+8) ) = 7;
            (* (( (ptr) var←c54972)+334) ) = 256;
            w←v10780 = var←c54972;
            };
SOURCE(12563, 23)
         (*  (ptr) w←v10780 ) = (* (( (ptr) widget←v7320)+34) );
SOURCE(12588, 19)
         (* (( (ptr) w←v10780)+350) ) = (* (( (ptr) widget←v7320)+35) );
SOURCE(12609, 9)
         (* (( (ptr) w←v10780)+1) ) = bm←v10492;
SOURCE(12620, 49)
         (* (( (ptr) w←v10780)+353) ) = (* (( (ptr) (* (( (ptr) &var←c57404)+7)/* rsm←v10696 */  ))+8) );
SOURCE(12671, 17)
         (*  (W2Pt) (( (ptr) w←v10780)+351) ) = origin←v10808;
SOURCE(12690, 18)
         sd←v10640 = (* (( (ptr) bmRef←v7292)+20) );
SOURCE(12710, 491)
         if ( (  (  ( (sd←v10640 != 0) ? ((* (( (ptr) sd←v10640)+1) ) == (*  (ptr) w←v10780 )) : 0 )  ? ((* (( (ptr) sd←v10640)+2)
          ) == bm←v10492) : 0 )  ? ((*  (ptr) sd←v10640 ) != 0) : 0 ) ) {
SOURCE(12783, 36)
            (* (( (ptr) &var←c57404)+6)/* shmP←v10668 */  ) = (*  (ptr) sd←v10640 );
            }
         else {
SOURCE(12821, 380)
            {
               word tc119;
               word pd120;
               word pd121;
               pd120 = (* (( (ptr) (* (( (ptr) gf←c57436)+146)/* var←c55004 */  ))+8) );
               if ((0 != (word) ( *( (fPt) ((*  (ptr) pd120 ))))((*  (ptr) (w←v10780) ), pd120))) {
                  pd121 = (* (( (ptr) (* (( (ptr) gf←c57436)+146)/* var←c55004 */  ))+5) );
                  tc119 =  (word) (0 != (word) ( *( (fPt) ((*  (ptr) pd121 ))))((* ((( (ptr) &var←c57404)+7)/* rsm←v10696 */ ) ), pd121));
                  }
               else {
                  tc119 =  (word) 0;
                  };
               if (tc119) {
SOURCE(12919, 108)
SOURCE(12919, 108)
                  {
                     /* declaration of var←c01 skipped */ 
                     /* declaration of var←c02 skipped */ 
                     /* declaration of var←c03 skipped */ 
                     (* (( (ptr) &var←c57404)+8)/* var←c01 */  ) = (*  (ptr) w←v10780 );
                     (* (( (ptr) &var←c57404)+9)/* var←c02 */  ) = (* (( (ptr) w←v10780)+350) );
                     (* (( (ptr) &var←c57404)+10)/* var←c03 */  ) = (* (( (ptr) (* (( (ptr) gf←c57436)+146)/* var←c55004 */  ))+6) );
                     {
                        /* declaration of var←c04 skipped */ 
                        {
                           word var←c05;
                           {
/*1*/   word var←c0420;
/*1*/   var←c0420 = (word) &var←c57404;
/*1*/   var←c05 = (word) XR←Enable(( ((word)  (fPt) NoName←Q4788) ), ( ((word)  (fPt) NoName←Q4968) ), var←c0420);
/*1*/   };
                           if ((var←c05 == 2)) {
/*1*/   goto lab←L100016;
/*1*/   };
                           };
                        (* (( (ptr) &var←c57404)+6)/* shmP←v10668 */  ) = (* (( (ptr) &var←c57404)+11)/* var←c04 */  );
                        };
                     };
                  lab←L100016: ;
SOURCE(13043, 116)
                  if (((* (( (ptr) &var←c57404)+6)/* shmP←v10668 */  ) == 0)) {
SOURCE(13070, 25)
                     (* (( (ptr) bmRef←v7292)+20) ) = 0;
                     }
                  else {
SOURCE(13095, 64)
                     {
                        word var←c55036;
                        var←c55036 = XR←NewObject(12, (* (( (ptr) gf←c57436)+25) ));
                        (*  (ptr) var←c55036 ) = (* (( (ptr) &var←c57404)+6)/* shmP←v10668 */  );
                        (* (( (ptr) var←c55036)+1) ) = (*  (ptr) w←v10780 );
                        (* (( (ptr) var←c55036)+2) ) = bm←v10492;
                        (* (( (ptr) bmRef←v7292)+20) ) = var←c55036;
                        };
                     };
SOURCE(13161, 40)
                  if ((sd←v10640 != 0)) {
SOURCE(13176, 25)
                     (void) DelayedDestroyShmData←P840(sd←v10640);
                     };
                  };
               };
            };
SOURCE(13209, 80)
         {
            W4 var←c55068;
            {
               W4 var←c55100;
               {
                  word pd122;
                  pd122 = (* (( (ptr) (* (( (ptr) gf←c57436)+139)/* var←c53276 */  ))+11) );
                  (void) ( *( (fPt) ((*  (ptr) pd122 ))))((word) &var←c55100, bm←v10492, pd122);
                  };
               {
                  W4 var←c0272;
                  {
                     word pd123;
                     pd123 = (* (( (ptr) (* (( (ptr) gf←c57436)+144)/* var←c54716 */  ))+15) );
                     (void) ( *( (fPt) ((*  (ptr) pd123 ))))((word) &var←c0272, (*  (W4Pt) (( (ptr) gf←c57436)+128)/* var←c52924 */  ), var←c55100, pd123)
                     ;
                     };
                  var←c55068 = var←c0272;
                  };
               };
            {
               W4 var←c0273;
               {
                  word pd124;
                  pd124 = (* (( (ptr) (* (( (ptr) gf←c57436)+144)/* var←c54716 */  ))+15) );
                  (void) ( *( (fPt) ((*  (ptr) pd124 ))))((word) &var←c0273, clip←v10836, var←c55068, pd124);
                  };
               (*  (W4Pt) (( (ptr) w←v10780)+3) ) = var←c0273;
               };
            };
SOURCE(13291, 52)
         (* (( (ptr) w←v10780)+355) ) = IOP2( / ,  (int)(* (( (ptr) (* (( (ptr) &var←c57404)+7)/* rsm←v10696 */  ))+7) ),  (int)8)
         ;
SOURCE(13345, 15)
         (* (( (ptr) w←v10780)+354) ) = (* (( (ptr) bmRef←v7292)+21) );
SOURCE(13362, 920)
         if (((* (( (ptr) &var←c57404)+6)/* shmP←v10668 */  ) == 0)) {
SOURCE(13391, 636)
            {
               word var←c55164;
               {
                  word var←c55132;
                  word map←v50624;
                  map←v50624 = (* (( (ptr) &var←c57404)+7)/* rsm←v10696 */  );
                  var←c55132 = (* (( (ptr) map←v50624)+5) );
                  var←c55164 = var←c55132;
                  };
               switch (var←c55164) {
                  case 1: 
SOURCE(13446, 165)
                     if (((* (( (ptr) (* (( (ptr) widget←v7320)+36) ))+3) ) == 4)) {
SOURCE(13483, 30)
                        paintProc←v10724 = (word) (( (bPt) gf←c57436)+480)/* var←c52764 */ ;
SOURCE(13515, 32)
                        currentCase←v10752 = (* (( (ptr) gf←c57436)+39) );
                        }
                     else {
SOURCE(13556, 24)
                        paintProc←v10724 = (word) (( (bPt) gf←c57436)+472)/* var←c52732 */ ;
SOURCE(13582, 29)
                        currentCase←v10752 = (* (( (ptr) gf←c57436)+40) );
                        };
SOURCE(13614, 23)
                     (* (( (ptr) w←v10780)+8) ) = 88;
                     break;
                  case 8: 
SOURCE(13648, 24)
                     paintProc←v10724 = (word) (( (bPt) gf←c57436)+448)/* var←c52636 */ ;
SOURCE(13674, 21)
                     (* (( (ptr) w←v10780)+8) ) = 16;
SOURCE(13697, 29)
                     currentCase←v10752 = (* (( (ptr) gf←c57436)+41) );
                     break;
                  case 2: 
SOURCE(13739, 24)
                     paintProc←v10724 = (word) (( (bPt) gf←c57436)+464)/* var←c52700 */ ;
SOURCE(13765, 22)
                     (* (( (ptr) w←v10780)+8) ) = 44;
SOURCE(13790, 29)
                     currentCase←v10752 = (* (( (ptr) gf←c57436)+42) );
                     break;
                  case 4: 
SOURCE(13832, 24)
                     paintProc←v10724 = (word) (( (bPt) gf←c57436)+456)/* var←c52668 */ ;
SOURCE(13858, 22)
                     (* (( (ptr) w←v10780)+8) ) = 32;
SOURCE(13883, 29)
                     currentCase←v10752 = (* (( (ptr) gf←c57436)+43) );
                     break;
                  case 24: 
SOURCE(13925, 25)
                     paintProc←v10724 = (word) (( (bPt) gf←c57436)+440)/* var←c52604 */ ;
SOURCE(13952, 20)
                     (* (( (ptr) w←v10780)+8) ) = 4;
SOURCE(13974, 30)
                     currentCase←v10752 = (* (( (ptr) gf←c57436)+44) );
                     break;
                  default: 
SOURCE(14021, 6)
                     return;
                  };
               };
            }
         else {
            {
               word var←c55196;
               word map←v50576;
SOURCE(14039, 16)
               (* (( (ptr) w←v10780)+356) ) = (* (( (ptr) &var←c57404)+6)/* shmP←v10668 */  );
SOURCE(14057, 225)
               map←v50576 = (* (( (ptr) &var←c57404)+7)/* rsm←v10696 */  );
               var←c55196 = (* (( (ptr) map←v50576)+5) );
               if ((var←c55196 == 1)) {
SOURCE(14105, 29)
                  paintProc←v10724 = (word) (( (bPt) gf←c57436)+432)/* var←c52572 */ ;
SOURCE(14136, 22)
                  (* (( (ptr) w←v10780)+8) ) = 40000;
SOURCE(14161, 26)
                  currentCase←v10752 = (* (( (ptr) gf←c57436)+45) );
                  }
               else {
SOURCE(14198, 28)
                  paintProc←v10724 = (word) (( (bPt) gf←c57436)+424)/* var←c52540 */ ;
SOURCE(14228, 22)
                  (* (( (ptr) w←v10780)+8) ) = 20000;
SOURCE(14252, 30)
                  currentCase←v10752 = (* (( (ptr) gf←c57436)+46) );
                  };
               };
            };
SOURCE(14289, 28)
         c←v50720 = (*  (ptr) w←v10780 );
         var←c55228 = (* (( (ptr) c←v50720)+16) );
         vendor←v10464 = (* (( (ptr) var←c55228)+15) );
SOURCE(14319, 174)
         {
            word pd125;
            pd125 = (* (( (ptr) (* (( (ptr) gf←c57436)+145)/* var←c54812 */  ))+8) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd125 ))))(vendor←v10464, (* (( (ptr) gf←c57436)+37) ), 1, pd125))) {
SOURCE(14368, 18)
               (* (( (ptr) w←v10780)+8) ) = 2;
SOURCE(14388, 23)
               (* (( (ptr) w←v10780)+334) ) = 10;
SOURCE(14413, 31)
               paintProc←v10724 = (word) (( (bPt) gf←c57436)+488)/* var←c52796 */ ;
SOURCE(14446, 47)
               {
                  word pd126;
                  pd126 = (* (( (ptr) (* (( (ptr) gf←c57436)+145)/* var←c54812 */  ))+6) );
                  currentCase←v10752 = (word) ( *( (fPt) ((*  (ptr) pd126 ))))(currentCase←v10752, (* (( (ptr) gf←c57436)+47) ), pd126);
                  };
               };
            };
SOURCE(14498, 198)
         {
            word var←c55260;
            {
               word pd127;
               pd127 = (* (( (ptr) (* (( (ptr) gf←c57436)+142)/* var←c54268 */  ))+10) );
               var←c55260 = (word) ( *( (fPt) ((*  (ptr) pd127 ))))(widget←v7320, (* (( (ptr) gf←c57436)+48) ), pd127);
               };
            if ((var←c55260 == 0)) {
               goto lab←L100022;
               };
            if (((* (( (ptr) gf←c57436)+34) ) == XR←GetReferentType(var←c55260))) {
               {
                  word ri←v11048;
                  ri←v11048 = var←c55260;
SOURCE(14573, 20)
                  (* (( (ptr) w←v10780)+8) ) = (*  (ptr) ri←v11048 );
SOURCE(14595, 101)
                  {
                     word var←c55292;
                     {
                        word pd128;
                        pd128 = (* (( (ptr) (* (( (ptr) gf←c57436)+142)/* var←c54268 */  ))+10) );
                        var←c55292 = (word) ( *( (fPt) ((*  (ptr) pd128 ))))(widget←v7320, (* (( (ptr) gf←c57436)+49) ), pd128);
                        };
                     if ((var←c55292 == 0)) {
                        goto lab←L100023;
                        };
                     if (((* (( (ptr) gf←c57436)+34) ) == XR←GetReferentType(var←c55292))) {
                        {
                           word ri←v11104;
                           ri←v11104 = var←c55292;
SOURCE(14672, 24)
                           (* (( (ptr) w←v10780)+334) ) = (*  (ptr) ri←v11104 );
                           };
                        }
                     else {
                        lab←L100023: ;
                        };
                     };
                  };
               }
            else {
               lab←L100022: ;
               };
            };
SOURCE(14731, 31)
         {
            word var←c55324;
            word var←c55356;
            var←c55324 = XR←NewObject(12, (* (( (ptr) gf←c57436)+12) ));
            var←c55356 = var←c55324;
            (*  (ptr) var←c55356 ) = XR←CheckProc(paintProc←v10724);
            (* (( (ptr) var←c55356)+1) ) = w←v10780;
            (* (( (ptr) w←v10780)+2) ) = var←c55324;
            };
SOURCE(14764, 61)
         {
            word pd129;
            pd129 = (* (( (ptr) (* (( (ptr) gf←c57436)+142)/* var←c54268 */  ))+11) );
            (void) ( *( (fPt) ((*  (ptr) pd129 ))))(widget←v7320, (* (( (ptr) gf←c57436)+52) ), currentCase←v10752, pd129);
            };
SOURCE(14827, 19)
         (* (( (ptr) bmRef←v7292)+5) ) = w←v10780;
SOURCE(14848, 179)
         if ((0 != (* (( (ptr) bmRef←v7292)+14) ))) {
SOURCE(14871, 24)
            {
               word pd130;
               pd130 = (* (( (ptr) (* (( (ptr) gf←c57436)+140)/* var←c54044 */  ))+5) );
               (void) ( *( (fPt) ((*  (ptr) pd130 ))))(w←v10780, pd130);
               };
SOURCE(14897, 13)
            (void) Set←P1020(bmRef←v7292, w←v10780);
SOURCE(14912, 25)
            (void) ClearOutsideAreas←P1860(widget←v7320);
SOURCE(14939, 88)
            if (((0 != immediateRefresh←v7348) || (0 != retainRefreshs←v7376))) {
SOURCE(14983, 44)
               {
                  word pd131;
                  pd131 = (* (( (ptr) (* (( (ptr) gf←c57436)+140)/* var←c54044 */  ))+7) );
                  (void) ( *( (fPt) ((*  (ptr) pd131 ))))((* (( (ptr) w←v10780)+7) ), w←v10780, clip←v10836, 0, pd131);
                  };
               };
            };
         };
      };
   }

static word NoName←Q4788(formal←c0405)
   word formal←c0405;
   {
SOURCE(12919, 108)
   {
      word pd132;
      pd132 = (* (( (ptr) formal←c0405)+10) );
      (* (( (ptr) formal←c0405)+11) ) = (word) ( *( (fPt) ((*  (ptr) pd132 ))))((* (( (ptr) formal←c0405)+8) ), (* (( (ptr) formal←c0405)+9)
          ), (* (( (ptr) formal←c0405)+7) ), pd132);
      };
   return(0);
   }

static word Range←P2592(x←v10568, formal←c57468)
   word x←v10568;
   word formal←c57468;
   {
   word var←c10612;
   formal←c57468 = (formal←c57468 - 16);
   /* Range: */ 
SOURCE(11564, 98)
SOURCE(11607, 55)
   {
      word x133;
      return((x133 = (MAX((int)(word), x←v10568, 2147483648)),
         MIN((int)(word), x133, 2147483647)));
      };
   }

static void ClearOutsideAreas←P1860(formal←c0430)
   word formal←c0430;
   {
   W12 var←c57500;
   /* declaration of w←v7448 skipped */ 
   /* declaration of var←c55388 skipped */ 
   /* declaration of var←c55420 skipped */ 
   (* (( (ptr) &var←c57500)+4)/* w←v7448 */  ) = formal←c0430;
   /* ClearOutsideAreas: */ 
SOURCE(15038, 1036)
   {
      word tmpAddr134;
      tmpAddr134 = (word) (( (ptr) &var←c57500)+5)/* var←c55388 */ ;
      (*  (ptr) tmpAddr134 ) = ( ((word)  (fPt) Fill←P2904) );
      (* (( (ptr) tmpAddr134) + 1) ) = 1;
      };
   {
      word tmpAddr135;
      tmpAddr135 = (word) (( (ptr) &var←c57500)+7)/* var←c55420 */ ;
      (*  (ptr) tmpAddr135 ) = ( ((word)  (fPt) Clear←P2844) );
      (* (( (ptr) tmpAddr135) + 1) ) = 1;
      };
SOURCE(15080, 994)
SOURCE(15082, 969)
   {
      /* declaration of bmRef←v11244 skipped */ 
      /* declaration of c←v11272 skipped */ 
      /* declaration of win←v11300 skipped */ 
      word var←c06;
      {
         word var←c0421;
         var←c0421 = (word) &var←c57500;
         var←c06 = (word) XR←Enable(( ((word)  (fPt) NoName←Q4848) ), ( ((word)  (fPt) NoName←Q4908) ), var←c0421);
         };
      if ((var←c06 == 3)) {
         goto lab←L100024;
         }
      else {
         if ((var←c06 == 1)) {
            goto lab←L03;
            };
         };
      };
   goto lab←L100028;
   lab←L100024: ;
   lab←L100028: ;
   lab←L03: ;
   return;
   }

static word NoName←Q4848(formal←c0408)
   word formal←c0408;
   {
   register ptr gf←c0407 =  (ptr) &globalframe;
SOURCE(15107, 13)
   {
      W4 r←v11328;
SOURCE(15323, 33)
      {
         word var←c55452;
         word superClass←v51276;
         superClass←v51276 = (* (( (ptr) gf←c0407)+4)/* bmClass←v3292 */  );
         {
            word idx136;
            word limit137;
            var←c55452 = (* ((( (ptr) (* (( (ptr) formal←c0408)+4) ))+49)+(
                  idx136 = (* (( (ptr) superClass←v51276)+4) ),
                  limit137 = (* (( (ptr) (* (( (ptr) formal←c0408)+4) ))+48) ),
                  BCK(idx136, limit137)
                  )) );
            };
         (* (( (ptr) formal←c0408)+9) ) = XR←Narrow(var←c55452, (* (( (ptr) gf←c0407)+22) ));
         };
SOURCE(15358, 31)
      (* (( (ptr) formal←c0408)+10) ) = (* (( (ptr) (* (( (ptr) formal←c0408)+4) ))+34) );
SOURCE(15391, 25)
      (* (( (ptr) formal←c0408)+11) ) = (* (( (ptr) (* (( (ptr) formal←c0408)+4) ))+35) );
SOURCE(15418, 73)
      {
         W4 var←c0299;
         {
            W2 var←c55484;
            var←c55484.f0 = (* (( (ptr) (* (( (ptr) formal←c0408)+9) ))+8) );
            var←c55484.f1 = (* (( (ptr) (* (( (ptr) formal←c0408)+9) ))+7) );
            {
               word pd138;
               pd138 = (* (( (ptr) (* (( (ptr) gf←c0407)+144)/* var←c54716 */  ))+20) );
               (void) ( *( (fPt) ((*  (ptr) pd138 ))))((word) &var←c0299, (*  (W4Pt) (( (ptr) (* (( (ptr) formal←c0408)+9) ))+9) ), var←c55484, pd138)
               ;
               };
            };
         r←v11328 = var←c0299;
         };
SOURCE(15493, 58)
      if (((* (( (ptr) formal←c0408)+11) ) == 0) || ((* (( (ptr) (* (( (ptr) formal←c0408)+4) ))+37) ) != 0)) {
SOURCE(15545, 6)
         return(1);
         };
SOURCE(15553, 52)
      if (( (int)r←v11328.f1 >  (int)0)) {
SOURCE(15571, 34)
         {
            W2 var←c55516;
            W2 var←c55548;
            var←c55516.f0 = 0;
            var←c55516.f1 = 0;
            var←c55548.f0 = r←v11328.f1;
            var←c55548.f1 = 9999;
            (void) Clear←P2844(var←c55516, var←c55548, (word) (( (bPt) formal←c0408)+28));
            };
         };
SOURCE(15607, 58)
      if (( (int)r←v11328.f0 >  (int)0)) {
SOURCE(15625, 40)
         {
            W2 var←c55580;
            W2 var←c55612;
            var←c55580.f0 = r←v11328.f1;
            var←c55580.f1 = 0;
            var←c55612.f0 = 9999;
            var←c55612.f1 = r←v11328.f0;
            (void) Clear←P2844(var←c55580, var←c55612, (word) (( (bPt) formal←c0408)+28));
            };
         };
SOURCE(15667, 41)
      {
         W2 var←c55644;
         W2 var←c55676;
         var←c55644.f0 = r←v11328.f3;
         var←c55644.f1 = 0;
         var←c55676.f0 = 9999;
         var←c55676.f1 = 9999;
         (void) Clear←P2844(var←c55644, var←c55676, (word) (( (bPt) formal←c0408)+28));
         };
SOURCE(15710, 41)
      {
         W2 var←c55708;
         W2 var←c55740;
         var←c55708.f0 = 0;
         var←c55708.f1 = r←v11328.f2;
         var←c55740.f0 = 9999;
         var←c55740.f1 = 9999;
         (void) Clear←P2844(var←c55708, var←c55740, (word) (( (bPt) formal←c0408)+28));
         };
SOURCE(15753, 298)
      {
         word pd139;
         pd139 = (* (( (ptr) (* (( (ptr) gf←c0407)+142)/* var←c54268 */  ))+10) );
         if (((word) ( *( (fPt) ((*  (ptr) pd139 ))))((* (( (ptr) formal←c0408)+4) ), (* (( (ptr) gf←c0407)+53) ), pd139) != 0)) {
SOURCE(15812, 52)
            {
               W2 var←c55772;
               W2 var←c55804;
               var←c55772.f0 = (r←v11328.f1 - 1);
               var←c55772.f1 = (r←v11328.f0 - 1);
               var←c55804.f0 = 1;
               var←c55804.f1 = ((r←v11328.f2 - r←v11328.f0) + 2);
               (void) Fill←P2904(var←c55772, var←c55804, (word) (( (bPt) formal←c0408)+20));
               };
SOURCE(15876, 50)
            {
               W2 var←c55836;
               W2 var←c55868;
               var←c55836.f0 = r←v11328.f3;
               var←c55836.f1 = (r←v11328.f0 - 1);
               var←c55868.f0 = 1;
               var←c55868.f1 = ((r←v11328.f2 - r←v11328.f0) + 2);
               (void) Fill←P2904(var←c55836, var←c55868, (word) (( (bPt) formal←c0408)+20));
               };
SOURCE(15936, 52)
            {
               W2 var←c55900;
               W2 var←c55932;
               var←c55900.f0 = (r←v11328.f1 - 1);
               var←c55900.f1 = (r←v11328.f0 - 1);
               var←c55932.f0 = ((r←v11328.f3 - r←v11328.f1) + 2);
               var←c55932.f1 = 1;
               (void) Fill←P2904(var←c55900, var←c55932, (word) (( (bPt) formal←c0408)+20));
               };
SOURCE(16001, 50)
            {
               W2 var←c55964;
               W2 var←c55996;
               var←c55964.f0 = (r←v11328.f1 - 1);
               var←c55964.f1 = r←v11328.f2;
               var←c55996.f0 = ((r←v11328.f3 - r←v11328.f1) + 2);
               var←c55996.f1 = 1;
               (void) Fill←P2904(var←c55964, var←c55996, (word) (( (bPt) formal←c0408)+20));
               };
            };
         };
      };
   return(0);
   }

static void Clear←P2844(pos←v11404, size←v11432, formal←c57564)
   W2 pos←v11404;
   W2 size←v11432;
   word formal←c57564;
   {
   register ptr gf←c57532 =  (ptr) &globalframe;
   formal←c57564 = (formal←c57564 - 28);
   /* Clear: */ 
SOURCE(15107, 13)
SOURCE(15148, 48)
   {
      word pd140;
      pd140 = (* (( (ptr) (* (( (ptr) gf←c57532)+138)/* var←c53212 */  ))+166) );
      (void) ( *( (fPt) ((*  (ptr) pd140 ))))((* (( (ptr) formal←c57564)+10) ), (* (( (ptr) formal←c57564)+11) ), pos←v11404, size←v11432, 0, (* (
            ( (ptr) gf←c57532)+5)/* noErrors←v3376 */  ), pd140);
      };
   }

static void Fill←P2904(pos←v11492, size←v11520, formal←c57628)
   W2 pos←v11492;
   W2 size←v11520;
   word formal←c57628;
   {
   register ptr gf←c57596 =  (ptr) &globalframe;
   formal←c57628 = (formal←c57628 - 20);
   /* Fill: */ 
SOURCE(15201, 12)
SOURCE(15241, 55)
   {
      word pd141;
      pd141 = (* (( (ptr) (* (( (ptr) gf←c57596)+138)/* var←c53212 */  ))+169) );
      (void) ( *( (fPt) ((*  (ptr) pd141 ))))((* (( (ptr) formal←c57628)+10) ), (* (( (ptr) formal←c57628)+11) ), (* (( (ptr) (* (
               ( (ptr) formal←c57628)+9) ))+21) ), pos←v11492, size←v11520, (* (( (ptr) gf←c57596)+5)/* noErrors←v3376 */  ), pd141);
      };
   }

static word GetImplData←P1920(widget←v7508)
   word widget←v7508;
   {
   register ptr gf←c57660 =  (ptr) &globalframe;
   word var←c7552;
   word bmRef←v11560;
   /* GetImplData: */ 
SOURCE(16209, 128)
SOURCE(16275, 38)
   {
      word var←c56028;
      word superClass←v51228;
      superClass←v51228 = (* (( (ptr) gf←c57660)+4)/* bmClass←v3292 */  );
      {
         word idx142;
         word limit143;
         var←c56028 = (* ((( (ptr) widget←v7508)+49)+(
               idx142 = (* (( (ptr) superClass←v51228)+4) ),
               limit143 = (* (( (ptr) widget←v7508)+48) ),
               BCK(idx142, limit143)
               )) );
         };
      bmRef←v11560 = XR←Narrow(var←c56028, (* (( (ptr) gf←c57660)+22) ));
      };
SOURCE(16315, 22)
   return((* (( (ptr) bmRef←v11560)+4) ));
   }

static void Wait←P1980(widget←v7624, server←v7652)
   word widget←v7624;
   word server←v7652;
   {
   register ptr gf←c57692 =  (ptr) &globalframe;
   word bmRef←v11616;
   word w←v11644;
   /* Wait: */ 
SOURCE(16344, 382)
SOURCE(16411, 38)
   {
      word var←c56060;
      word superClass←v51180;
      superClass←v51180 = (* (( (ptr) gf←c57692)+4)/* bmClass←v3292 */  );
      {
         word idx144;
         word limit145;
         var←c56060 = (* ((( (ptr) widget←v7624)+49)+(
               idx144 = (* (( (ptr) superClass←v51180)+4) ),
               limit145 = (* (( (ptr) widget←v7624)+48) ),
               BCK(idx144, limit145)
               )) );
         };
      bmRef←v11616 = XR←Narrow(var←c56060, (* (( (ptr) gf←c57692)+22) ));
      };
SOURCE(16451, 35)
   w←v11644 = (* (( (ptr) bmRef←v11616)+4) );
SOURCE(16488, 238)
   if ((w←v11644 != 0)) {
SOURCE(16503, 201)
      {
         word timedOut←v11700;
         word var←c56092;
         word c←v50892;
SOURCE(16505, 55)
         {
            word pd146;
            pd146 = (* (( (ptr) (* (( (ptr) gf←c57692)+140)/* var←c54044 */  ))+9) );
            timedOut←v11700 = (word) ( *( (fPt) ((*  (ptr) pd146 ))))((* (( (ptr) w←v11644)+7) ), w←v11644, pd146);
            };
SOURCE(16562, 85)
         if (((0 != timedOut←v11700) && (0 != server←v7652))) {
SOURCE(16592, 55)
            lab←L100033: ;
            {
               word pd147;
               pd147 = (* (( (ptr) (* (( (ptr) gf←c57692)+140)/* var←c54044 */  ))+9) );
               if ((word) ( *( (fPt) ((*  (ptr) pd147 ))))((* (( (ptr) w←v11644)+7) ), w←v11644, pd147)) {
                  }
               else {
                  goto lab←L100031;
                  };
               };
            goto lab←L100033;
            lab←L100031: ;
            };
SOURCE(16652, 50)
         {
            word tc148;
            if ((0 != server←v7652)) {
               c←v50892 = (*  (ptr) w←v11644 );
               if ((c←v50892 != 0)) {
                  var←c56092 =  (unsigned) (0 != (* (( (ptr) c←v50892)+15) ));
                  }
               else {
                  var←c56092 =  (unsigned) 0;
                  };
               tc148 =  (word) (0 != var←c56092);
               }
            else {
               tc148 =  (word) 0;
               };
            if (tc148) {
SOURCE(16685, 17)
               {
                  word pd149;
                  pd149 = (* (( (ptr) (* (( (ptr) gf←c57692)+138)/* var←c53212 */  ))+44) );
                  (void) ( *( (fPt) ((*  (ptr) pd149 ))))((*  (ptr) w←v11644 ), 0, pd149);
                  };
               };
            };
         };
      }
   else {
SOURCE(16711, 15)
      {
         word pd150;
         pd150 = (* (( (ptr) (* (( (ptr) gf←c57692)+147)/* var←c56124 */  ))+23) );
         (void) ( *( (fPt) ((*  (ptr) pd150 ))))(pd150);
         };
      };
   }

static word CreateContext←P2040(widget←v7712, surfaceUnitsPerPixel←v7740)
   word widget←v7712;
   word surfaceUnitsPerPixel←v7740;
   {
   register ptr gf←c57724 =  (ptr) &globalframe;
   word context←v7784;
   word bmRef←v11744;
   word bm←v11772;
   /* CreateContext: */ 
SOURCE(16797, 280)
SOURCE(16797, 280)
   context←v7784 = 0;
SOURCE(16916, 38)
   {
      word var←c56156;
      word superClass←v51132;
      superClass←v51132 = (* (( (ptr) gf←c57724)+4)/* bmClass←v3292 */  );
      {
         word idx151;
         word limit152;
         var←c56156 = (* ((( (ptr) widget←v7712)+49)+(
               idx151 = (* (( (ptr) superClass←v51132)+4) ),
               limit152 = (* (( (ptr) widget←v7712)+48) ),
               BCK(idx151, limit152)
               )) );
         };
      bmRef←v11744 = XR←Narrow(var←c56156, (* (( (ptr) gf←c57724)+22) ));
      };
SOURCE(16956, 30)
   bm←v11772 = (* (( (ptr) bmRef←v11744)+6) );
SOURCE(16988, 29)
   if ((bm←v11772 == 0)) {
SOURCE(17003, 14)
      bm←v11772 = (* (( (ptr) gf←c57724)+8)/* noWhereBM←v4440 */  );
      };
SOURCE(17019, 58)
   {
      word pd153;
      pd153 = (* (( (ptr) (* (( (ptr) gf←c57724)+139)/* var←c53276 */  ))+12) );
      context←v7784 = (word) ( *( (fPt) ((*  (ptr) pd153 ))))(bm←v11772, surfaceUnitsPerPixel←v7740, pd153);
      };
SOURCE(16797, 280)
   return(context←v7784);
   }

static void CreateAndSetBitmap←P2100(widget←v7844, size←v7872, bpp←v7900, origin←v7928)
   word widget←v7844;
   W2 size←v7872;
   word bpp←v7900;
   W2 origin←v7928;
   {
   register ptr gf←c57756 =  (ptr) &globalframe;
   word bmRef←v11828;
   word bm←v11856 = 0;
   /* CreateAndSetBitmap: */ 
SOURCE(17083, 590)
SOURCE(17197, 38)
   {
      word var←c56188;
      word superClass←v51084;
      superClass←v51084 = (* (( (ptr) gf←c57756)+4)/* bmClass←v3292 */  );
      {
         word idx154;
         word limit155;
         var←c56188 = (* ((( (ptr) widget←v7844)+49)+(
               idx154 = (* (( (ptr) superClass←v51084)+4) ),
               limit155 = (* (( (ptr) widget←v7844)+48) ),
               BCK(idx154, limit155)
               )) );
         };
      bmRef←v11828 = XR←Narrow(var←c56188, (* (( (ptr) gf←c57756)+22) ));
      };
SOURCE(17258, 275)
   if ( ( (bpp←v7900 == 0) ? ((* (( (ptr) widget←v7844)+36) ) != 0) : 0 ) ) {
SOURCE(17301, 232)
      {
         word pd156;
         pd156 = (* (( (ptr) (* (( (ptr) gf←c57756)+143)/* var←c54332 */  ))+6) );
         if (((word) ( *( (fPt) ((*  (ptr) pd156 ))))((* (( (ptr) (* (( (ptr) widget←v7844)+36) ))+1) ), 8, 3, pd156) != 0)) {
SOURCE(17400, 14)
            bpp←v7900 = 8;
            }
         else {
SOURCE(17414, 119)
            {
               word pd157;
               pd157 = (* (( (ptr) (* (( (ptr) gf←c57756)+143)/* var←c54332 */  ))+6) );
               if (((word) ( *( (fPt) ((*  (ptr) pd157 ))))((* (( (ptr) (* (( (ptr) widget←v7844)+36) ))+1) ), 4, 3, pd157) != 0)) {
SOURCE(17513, 13)
                  bpp←v7900 = 4;
                  }
               else {
SOURCE(17526, 7)
                  bpp←v7900 = 1;
                  };
               };
            };
         };
      };
SOURCE(17538, 21)
   if ((bpp←v7900 == 0)) {
SOURCE(17552, 7)
      bpp←v7900 = 1;
      };
SOURCE(17561, 31)
   {
      word pd158;
      pd158 = (* (( (ptr) (* (( (ptr) gf←c57756)+139)/* var←c53276 */  ))+8) );
      bm←v11856 = (word) ( *( (fPt) ((*  (ptr) pd158 ))))(size←v7872, bpp←v7900, 1, pd158);
      };
SOURCE(17594, 53)
   (void) SetBitmap←P1620(widget←v7844, bm←v11856, (*  (W4Pt) (( (ptr) gf←c57756)+132)/* var←c52988 */  ), origin←v7928, 1, 0)
   ;
SOURCE(17649, 24)
   (void) FollowColors←P2160(widget←v7844, bm←v11856);
   }

static void FollowColors←P2160(widget←v7988, bitmap←v8016)
   word widget←v7988;
   word bitmap←v8016;
   {
   register ptr gf←c57788 =  (ptr) &globalframe;
   word bmRef←v11912;
   /* FollowColors: */ 
SOURCE(17679, 176)
SOURCE(17755, 38)
   {
      word var←c56220;
      word superClass←v51036;
      superClass←v51036 = (* (( (ptr) gf←c57788)+4)/* bmClass←v3292 */  );
      {
         word idx159;
         word limit160;
         var←c56220 = (* ((( (ptr) widget←v7988)+49)+(
               idx159 = (* (( (ptr) superClass←v51036)+4) ),
               limit160 = (* (( (ptr) widget←v7988)+48) ),
               BCK(idx159, limit160)
               )) );
         };
      bmRef←v11912 = XR←Narrow(var←c56220, (* (( (ptr) gf←c57788)+22) ));
      };
SOURCE(17795, 26)
   (* (( (ptr) bmRef←v11912)+16) ) = bitmap←v8016;
SOURCE(17823, 32)
   (void) FollowColorsOnce←P2220(widget←v7988, bitmap←v8016);
   }

static void FollowColorsOnce←P2220(widget←v8076, bitmap←v8104)
   word widget←v8076;
   word bitmap←v8104;
   {
   register ptr gf←c57820 =  (ptr) &globalframe;
   word screenDepth←v11968;
   /* FollowColorsOnce: */ 
SOURCE(17861, 853)
SOURCE(17941, 48)
   screenDepth←v11968 = (* (( (ptr) widget←v8076)+36) );
SOURCE(17991, 723)
   if ( ( (bitmap←v8104 != 0) ? (screenDepth←v11968 != 0) : 0 ) ) {
SOURCE(18030, 695)
      {
         word sm←v12012;
         word bbp←v12040;
SOURCE(18032, 57)
         {
            word pd161;
            pd161 = (* (( (ptr) (* (( (ptr) gf←c57820)+139)/* var←c53276 */  ))+10) );
            sm←v12012 = (word) ( *( (fPt) ((*  (ptr) pd161 ))))(bitmap←v8104, pd161);
            };
SOURCE(18091, 44)
         {
            word map←v50528;
            map←v50528 = sm←v12012;
            bbp←v12040 = (* (( (ptr) map←v50528)+5) );
            };
SOURCE(18137, 577)
         if ((bbp←v12040 > 1)) {
SOURCE(18151, 571)
            {
               word cd←v12084;
SOURCE(18153, 103)
               {
                  word pd162;
                  pd162 = (* (( (ptr) (* (( (ptr) gf←c57820)+143)/* var←c54332 */  ))+4) );
                  cd←v12084 = (word) ( *( (fPt) ((*  (ptr) pd162 ))))((* (( (ptr) screenDepth←v11968)+1) ), BCK(bbp←v12040, 256), 3, pd162)
                  ;
                  };
SOURCE(18258, 456)
               if ( ( (cd←v12084 != 0) ? (0 != (*  (ptr) cd←v12084 )) : 0 ) ) {
SOURCE(18292, 40)
                  {
                     word pd163;
                     pd163 = (* (( (ptr) (* (( (ptr) gf←c57820)+139)/* var←c53276 */  ))+9) );
                     (void) ( *( (fPt) ((*  (ptr) pd163 ))))(bitmap←v8104, (* (( (ptr) cd←v12084)+5) ), pd163);
                     };
SOURCE(18334, 380)
                  if ( (  ( (0 != (* (( (ptr) cd←v12084)+1) )) ? ((* (( (ptr) widget←v8076)+28) ) != (* (( (ptr) cd←v12084)+2) )) : 0 )  ? ((* (
                     ( (ptr) widget←v8076)+37) ) == 0) : 0 ) ) {
SOURCE(18439, 277)
                     {
                        W15 attributes←v12128;
SOURCE(18441, 30)
                        (*  (ptr) &attributes←v12128 ) =  (word) -1;
                        (* (( (ptr) &attributes←v12128)+1) ) =  (word) -1;
                        (* (( (ptr) &attributes←v12128)+2) ) =  (word) -1;
                        (* (( (ptr) &attributes←v12128)+3) ) =  (word) -1;
                        (* (( (ptr) &attributes←v12128)+4) ) = 11;
                        (* (( (ptr) &attributes←v12128)+5) ) = 11;
                        (* (( (ptr) &attributes←v12128)+6) ) = 3;
                        (* (( (ptr) &attributes←v12128)+7) ) =  (word) -1;
                        (* (( (ptr) &attributes←v12128)+8) ) =  (word) -1;
                        (* (( (ptr) &attributes←v12128)+9) ) = 2;
                        (* (( (ptr) &attributes←v12128)+10) ) = 2;
                        (* (( (ptr) &attributes←v12128)+11) ) = 0;
                        (* (( (ptr) &attributes←v12128)+12) ) = 0;
                        (* (( (ptr) &attributes←v12128)+13) ) =  (word) -1;
                        (* (( (ptr) &attributes←v12128)+14) ) =  (word) -1;
SOURCE(18473, 62)
                        {
                           word var←c56316;
                           var←c56316 = (* (( (ptr) cd←v12084)+2) );
                           (* (( (ptr) &attributes←v12128)+13) ) = var←c56316;
                           (* (( (ptr) widget←v8076)+28) ) = var←c56316;
                           };
SOURCE(18537, 40)
                        {
                           word pd164;
                           pd164 = (* (( (ptr) (* (( (ptr) gf←c57820)+139)/* var←c53276 */  ))+9) );
                           (void) ( *( (fPt) ((*  (ptr) pd164 ))))(bitmap←v8104, (* (( (ptr) cd←v12084)+5) ), pd164);
                           };
SOURCE(18579, 52)
                        {
                           word pd165;
                           pd165 = (* (( (ptr) (* (( (ptr) gf←c57820)+148)/* var←c56348 */  ))+25) );
                           (void) ( *( (fPt) ((*  (ptr) pd165 ))))(0, widget←v8076, pd165);
                           };
SOURCE(18633, 81)
                        {
                           W18 var←c0363;
                           (*  (ptr) (word) &var←c0363 ) = (* (( (ptr) widget←v8076)+34) );
                           (* (( (ptr) (word) &var←c0363) + 1) ) = (* (( (ptr) widget←v8076)+35) );
                           (*  (W15Pt) (( (ptr) (word) &var←c0363) + 2) ) = attributes←v12128;
                           (* (( (ptr) (word) &var←c0363) + 17) ) = (* (( (ptr) gf←c57820)+5)/* noErrors←v3376 */  );
                           {
/*1*/   word pd166;
/*1*/   pd166 = (* (( (ptr) (* (( (ptr) gf←c57820)+138)/* var←c53212 */  ))+75) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd166 ))))((word) (&var←c0363), pd166);
/*1*/   };
                           };
                        };
                     };
                  };
               };
            };
         };
      };
   }

static void NoName←Q4908(formal←c0368, formal←c200004, formal←c200005, formal←c200006, formal←c200007)
   word formal←c0368;
   word formal←c200004;
   word formal←c200005;
   word formal←c200006;
   word formal←c200007;
   {
SOURCE(15096, 9)
   (*  (ptr) formal←c0368 ) = 2;
   (* (( (ptr) formal←c0368)+1) ) = 3;
   return;
   /* c2c skipped dead code */ 
   }

static void NoName←Q4968(formal←c0374, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
   word formal←c0374;
   word formal←c200000;
   word formal←c200001;
   word formal←c200002;
   word formal←c200003;
   {
   register ptr gf←c0419 =  (ptr) &globalframe;
   if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0419)+138)/* var←c53212 */  ))+4) ))) {
      {
         word err←v47164;
         err←v47164 = (*  (ptr) formal←c200003 );
SOURCE(13007, 20)
         (* (( (ptr) formal←c200000)+6) ) = 0;
SOURCE(13029, 9)
         (*  (ptr) formal←c0374 ) = 2;
         (* (( (ptr) formal←c0374)+1) ) = 2;
         return;
         };
      };
   (*  (ptr) formal←c0374 ) = 0;
   (* (( (ptr) formal←c0374)+1) ) = 0;
   return;
   }

/* file: XTkBitmapWidgetsImpl, module: XTkBitmapWidgetsImpl, compiled at: August 16, 1993 2:17:10 pm PDT */ 
extern void XR←install←XTkBitmapWidgetsImpl() {
   NoName←Q4728();
   }
extern void XR←run←XTkBitmapWidgetsImpl() { XR←Start(&globalframe); }