/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation.  All rights reserved. */
/* time: August 20, 1993 7:12:21 pm PDT */
/* C2C version: April 20, 1993 (sun4) */
/* ref-counting: off */
/* file: GGUserImpl, module: GGUserImpl */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [2639217515,3515089732] GGUserImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef word (*fPt)();
typedef struct {word f0, f1;} W2;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
typedef struct {word f0, f1, f2, f3, f4, f5;} W6;
typedef struct {word f0, f1, f2, f3;} W4;
typedef W2 *W2Pt;
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {W8 f; word r;} W9;
#define SOURCE(p, l) /* source p, l */
static float fc157 = 25.0;
static float fc179 = 2.0;
static float fc187 = 50.0;
#define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i )
static float fc254 = -1.0;
static float fc257 = 72.0;
static void NoName←Q4656();
static void GGUserImpl←P0();
static void WaitExternal←P60();
static void BroadcastExternal←P120();
static void NotifyExternal←P180();
static void EventNotify←P240();
static void UnQueuedEventNotify←P300();
static void PlayAction←P360();
static void InputNotify←P420();
static void notify←P3180();
static void BiScrollerInputNotify←P480();
static void BiScrollerQueue←P3240();
static void ProcessAndQueueEvent←P540();
static void QueueInput←P600();
static word GetAnyArguments←P660();
static void RegisterRawInputHandler←P720();
static word NowInMilliseconds←P780();
static void PrintUserTrace←P840();
static void Dispatch←P900();
static word UpdateCoords←P4020();
static word GetEventClass←P960();
static void NotYetImplementedMessage←P1020();
static word CheckForSelectedRope←P1080();
static word CheckForSelectedRope2←P1140();
static word CheckForSelectedReal←P1200();
static word NoName←Q4716();
static word NoName←Q4776();
static word CheckForSelectedCard←P1260();
static word NoName←Q4836();
static word CheckForSelectedInt←P1320();
static word NoName←Q4896();
static word CheckForActualExt←P1380();
static void RegisterAction←P1440();
static word FetchAction←P1500();
static void LookAtProfile←P1560();
static word NoName←Q4956();
static word NoName←Q5016();
static void SetUserTraceOn←P1620();
static word GetUserTraceOn←P1680();
static void SetDefaultHeuristics←P1740();
static word GetDefaultHeuristics←P1800();
static void SetDefaultGravityExtent←P1860();
static word GetDefaultGravityExtent←P1920();
static void SetDefaultUseLatestIPVersion←P1980();
static word GetDefaultUseLatestIPVersion←P2040();
static void SetDefaultDefaultFont←P2100();
static word GetDefaultDefaultFont←P2160();
static void SetAutoOpenTypescript←P2220();
static word GetAutoOpenTypescript←P2280();
static void SetAutoOpenHistory←P2340();
static word GetAutoOpenHistory←P2400();
static void SetDefaultHistorySize←P2460();
static word GetDefaultHistorySize←P2520();
static void SetAutoScriptingOn←P2580();
static word GetAutoScriptingOn←P2640();
static void SetSeparateControlPanel←P2700();
static word GetSeparateControlPanel←P2760();
static void SetDefaultIncludeIPByValue←P2820();
static word GetDefaultIncludeIPByValue←P2880();
static void SetHoldThatTiger←P2940();
static word GetHoldThatTiger←P3000();
static void SetNewBoxesUnfilled←P3060();
static word GetNewBoxesUnfilled←P3120();
static void NoName←Q5076();
static void NoName←Q5136();
static void NoName←Q5196();
static void NoName←Q5256();
static void NoName←Q5316();
static void NoName←Q5376();
static word NoName←Q5436();
static struct {unsigned f; char r[20];} string1 = {1179668, "\260\006\005\146\151\162\163\164\217\005\004\162\145\163\164\214\217\261\000"};
static struct {unsigned f; char r[4];} string2 = {131074, "\004\003\000"};
static struct {unsigned f; char r[4];} string3 = {131076, "\216\251\000"};
static struct {unsigned f; char r[4];} string4 = {65537, "\001\000\000"};
static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\235\117\103\153\300\321\204\003\104\103\054\000\000"};
static struct {unsigned f; char r[4];} string6 = {65540, "\251\000\000"};
static struct {unsigned f; char r[16];} string7 = {851984, "\257\300\355\324\264\170\300\276\334\312\210\101\004\000\000"};
static struct {unsigned f; char r[4];} string8 = {131074, "\003\001\000"};
static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\235\117\103\153\300\321\204\003\104\103\134\000\000"};
static struct {unsigned f; char r[4];} string10 = {131074, "\004\014\000"};
static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\223\145\303\043\300\372\023\025\003\100\200\000\000"};
static struct {unsigned f; char r[68];} string12 = {4325442, "\006\031\000\001\004\001\010\001\014\001\024\001\030\001\034\001\044\001\050\001\054\001\060\001\064\001\070\001\074\001\100\100\001\100\104\001\100\110\001\100\164\001\100\170\001\100\224\004\017\100\244\004\100\171\100\300\001\100\304\001\100\310\001\100\320\001\000"};
static struct {unsigned f; char r[4];} string13 = {65540, "\241\000\000"};
static struct {unsigned f; char r[4];} string14 = {65540, "\256\000\000"};
static struct {unsigned f; char r[44];} string15 = {2752556, "\260\007\006\154\145\156\147\164\150\210\241\000\200\177\377\005\004\164\145\170\164\254\206\012\011\155\141\170\114\145\156\147\164\150\210\241\000\200\177\377\243\261\000"};
static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\015\104\150\367\300\043\046\347\073\100\164\000\000"};
static struct {unsigned f; char r[44];} string17 = {2752556, "\260\006\005\146\151\162\163\164\257\300\015\277\004\146\300\034\367\146\045\112\114\005\004\162\145\163\164\214\257\300\015\277\004\146\300\034\367\146\045\112\114\261\000"};
static struct {unsigned f; char r[28];} string18 = {1572888, "\006\002\000\007\000\040\016\000\003\001\000\000\000\000\014\014\000\014\014\014\014\000\010\001\000\000\000"};
static struct {unsigned f; char r[16];} string19 = {851984, "\257\300\235\117\103\153\300\321\204\003\104\101\114\000\000"};
static struct {unsigned f; char r[4];} string20 = {65540, "\242\000\000"};
static struct {unsigned f; char r[16];} string21 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[4];} string22 = {65540, "\243\000\000"};
static struct {unsigned f; char r[16];} string23 = {851984, "\257\300\235\117\103\153\300\321\204\003\104\100\200\000\000"};
static struct {unsigned f; char r[16];} string24 = {851984, "\257\300\247\031\224\326\300\123\162\224\023\100\164\000\000"};
static struct {unsigned f; char r[24];} string25 = {1310744, "StuffToTiogaBordered\000\000\000"};
static struct {unsigned f; char r[16];} string26 = {917520, "StuffToFileAlt\000"};
static struct {unsigned f; char r[16];} string27 = {851984, "GrabFromTioga\000\000"};
static struct {unsigned f; char r[16];} string28 = {983056, "StuffToTiogaFit"};
static struct {unsigned f; char r[16];} string29 = {786448, "GetFromTioga\000\000\000"};
static struct {unsigned f; char r[28];} string30 = {1703964, "StuffToTiogaBorderedAndFit\000"};
static struct {unsigned f; char r[20];} string31 = {1114132, "MergeFromGargoyle\000\000"};
static struct {unsigned f; char r[16];} string32 = {983056, "StuffToTiogaAlt"};
static struct {unsigned f; char r[8];} string33 = {327688, "Shift\000\000"};
static struct {unsigned f; char r[16];} string34 = {917520, "MergeFromTioga\000"};
static struct {unsigned f; char r[12];} string35 = {720908, "StuffToFile"};
static struct {unsigned f; char r[16];} string36 = {786448, "StuffToTioga\000\000\000"};
static struct {unsigned f; char r[8];} string37 = {458760, "AddChar"};
static struct {unsigned f; char r[16];} string38 = {786448, "IPToTiogaAlt\000\000\000"};
static struct {unsigned f; char r[24];} string39 = {1507352, "IPToTiogaBorderedAndFit"};
static struct {unsigned f; char r[8];} string40 = {327688, "Start\000\000"};
static struct {unsigned f; char r[12];} string41 = {589836, "OneScroll\000\000"};
static struct {unsigned f; char r[16];} string42 = {786448, "IPToTiogaFit\000\000\000"};
static struct {unsigned f; char r[8];} string43 = {458760, "OneZoom"};
static struct {unsigned f; char r[20];} string44 = {1114132, "IPToTiogaBordered\000\000"};
static struct {unsigned f; char r[4];} string45 = {65540, "?\000\000"};
static struct {unsigned f; char r[4];} string46 = {131076, "%g\000"};
static struct {unsigned f; char r[4];} string47 = {131076, ", \000"};
static struct {unsigned f; char r[12];} string48 = {655372, "Typescript\000"};
static struct {unsigned f; char r[12];} string49 = {589836, "%g.%g[%g]\000\000"};
static struct {unsigned f; char r[12];} string50 = {589836, "IPToTioga\000\000"};
static struct {unsigned f; char r[8];} string51 = {458760, "ToIPLit"};
static struct {unsigned f; char r[12];} string52 = {655372, "ToIPScreen\000"};
static struct {unsigned f; char r[12];} string53 = {720908, "TimeOnQueue"};
static struct {unsigned f; char r[12];} string54 = {524300, "Gargoyle\000\000\000"};
static struct {unsigned f; char r[8];} string55 = {327688, "Again\000\000"};
static struct {unsigned f; char r[12];} string56 = {655372, "AlignFracs\000"};
static struct {unsigned f; char r[8];} string57 = {262152, "ToIP\000\000\000"};
static struct {unsigned f; char r[8];} string58 = {393224, "During\000"};
static struct {unsigned f; char r[8];} string59 = {458760, "GuardUp"};
static struct {unsigned f; char r[8];} string60 = {458760, "MouseUp"};
static struct {unsigned f; char r[8];} string61 = {327688, "AllUp\000\000"};
static struct {unsigned f; char r[20];} string62 = {1179668, "StartSelectWithBox\000"};
static struct {unsigned f; char r[20];} string63 = {1048596, "StartSelectJoint\000\000\000"};
static struct {unsigned f; char r[20];} string64 = {1245204, "StartExtSelectJoint"};
static struct {unsigned f; char r[20];} string65 = {1179668, "StartSelectSegment\000"};
static struct {unsigned f; char r[24];} string66 = {1376280, "StartExtSelectSegment\000\000"};
static struct {unsigned f; char r[24];} string67 = {1376280, "StartSelectTrajectory\000\000"};
static struct {unsigned f; char r[28];} string68 = {1572892, "StartExtSelectTrajectory\000\000\000"};
static struct {unsigned f; char r[20];} string69 = {1245204, "StartSelectTopLevel"};
static struct {unsigned f; char r[24];} string70 = {1441816, "StartExtSelectTopLevel\000"};
static struct {unsigned f; char r[24];} string71 = {1310744, "StartExtendSelection\000\000\000"};
static struct {unsigned f; char r[20];} string72 = {1179668, "StartDeselectJoint\000"};
static struct {unsigned f; char r[24];} string73 = {1310744, "StartDeselectSegment\000\000\000"};
static struct {unsigned f; char r[24];} string74 = {1507352, "StartDeselectTrajectory"};
static struct {unsigned f; char r[24];} string75 = {1376280, "StartDeselectTopLevel\000\000"};
static struct {unsigned f; char r[16];} string76 = {917520, "CycleSelection\000"};
static struct {unsigned f; char r[16];} string77 = {851984, "AreaSelectNew\000\000"};
static struct {unsigned f; char r[24];} string78 = {1441816, "AreaSelectNewAndDelete\000"};
static struct {unsigned f; char r[12];} string79 = {589836, "SelectAll\000\000"};
static struct {unsigned f; char r[24];} string80 = {1310744, "AreaSelectDegenerate\000\000\000"};
static struct {unsigned f; char r[20];} string81 = {1048596, "SelectCoincident\000\000\000"};
static struct {unsigned f; char r[20];} string82 = {1245204, "SelectUnseeableSegs"};
static struct {unsigned f; char r[20];} string83 = {1245204, "SelectUnseeableObjs"};
static struct {unsigned f; char r[16];} string84 = {851984, "StartCaretPos\000\000"};
static struct {unsigned f; char r[12];} string85 = {524300, "StartAdd\000\000\000"};
static struct {unsigned f; char r[12];} string86 = {524300, "StartBox\000\000\000"};
static struct {unsigned f; char r[12];} string87 = {589836, "StartDrag\000\000"};
static struct {unsigned f; char r[20];} string88 = {1048596, "StartCopyAndDrag\000\000\000"};
static struct {unsigned f; char r[16];} string89 = {983056, "StartAddAndDrag"};
static struct {unsigned f; char r[12];} string90 = {720908, "StartRotate"};
static struct {unsigned f; char r[12];} string91 = {655372, "StartScale\000"};
static struct {unsigned f; char r[16];} string92 = {851984, "StartSixPoint\000\000"};
static struct {unsigned f; char r[8];} string93 = {458760, "Warning"};
static struct {unsigned f; char r[12];} string94 = {720908, "User event "};
static struct {unsigned f; char r[24];} string95 = {1507352, " is not yet implemented"};
static struct {unsigned f; char r[8];} string96 = {262152, "Save\000\000\000"};
static struct {unsigned f; char r[8];} string97 = {327688, "Store\000\000"};
static struct {unsigned f; char r[8];} string98 = {458760, "Version"};
static struct {unsigned f; char r[16];} string99 = {917520, "SawMouseFinish\000"};
static struct {unsigned f; char r[16];} string100 = {851984, "SawTextFinish\000\000"};
static struct {unsigned f; char r[20];} string101 = {1245204, "Gargoyle.Heuristics"};
static struct {unsigned f; char r[28];} string102 = {1638428, "Gargoyle.QuickClickEnable\000\000"};
static struct {unsigned f; char r[28];} string103 = {1769500, "Gargoyle.UseLatestIPVersion"};
static struct {unsigned f; char r[28];} string104 = {1769500, "Gargoyle.AutoOpenTypescript"};
static struct {unsigned f; char r[28];} string105 = {1572892, "Gargoyle.AutoOpenHistory\000\000\000"};
static struct {unsigned f; char r[28];} string106 = {1572892, "Gargoyle.AutoScriptingOn\000\000\000"};
static struct {unsigned f; char r[32];} string107 = {1900576, "Gargoyle.SeparateControlPanel\000\000"};
static struct {unsigned f; char r[28];} string108 = {1769500, "Gargoyle.DefaultIncludeIPBy"};
static struct {unsigned f; char r[12];} string109 = {589836, "Reference\000\000"};
static struct {unsigned f; char r[24];} string110 = {1441816, "Gargoyle.HoldThatTiger\000"};
static struct {unsigned f; char r[28];} string111 = {1638428, "Gargoyle.NewBoxesUnfilled\000\000"};
static struct {unsigned f; char r[28];} string112 = {1769500, "Gargoyle.DefaultHistorySize"};
static struct {unsigned f; char r[4];} string113 = {131076, "40\000"};
static struct {unsigned f; char r[24];} string114 = {1441816, "Gargoyle.GravityExtent\000"};
static struct {unsigned f; char r[8];} string115 = {262152, "-1.0\000\000\000"};
static struct {unsigned f; char r[8];} string116 = {327688, "Value\000\000"};
static struct {unsigned f; char r[28];} string117 = {1769500, "Gargoyle.DefaultDefaultFont"};
static struct {unsigned f; char r[68];} string118 = {4194372, "xerox/xc1-2-2/helvetica [r1: 0.0 s: [10.0 10.0] r2: 0.0] 1.0 1.0\000\000\000"};
static struct {unsigned f; char r[16];} string119 = {851984, "\257\300\235\117\103\153\300\321\204\003\104\100\164\000\000"};
static struct {unsigned f; char r[24];} string120 = {1441814, "\006\005\100\100\001\100\104\001\100\114\001\100\120\001\100\264\010\000\004\100\136\001\000"};
static struct {unsigned f; char r[16];} string121 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"};
static struct {unsigned f; char r[16];} string122 = {851984, "\257\300\212\174\364\337\300\361\376\000\156\100\150\000\000"};
static struct {unsigned f; char r[16];} string123 = {851984, "\257\300\345\207\354\240\300\306\063\246\015\100\150\000\000"};
static struct {unsigned f; char r[16];} string124 = {851984, "\257\300\006<7[\300;CV\364@h\000\000"};
static struct {unsigned f; char r[16];} string125 = {851984, "\257\300\255\053\300\023\300\142\135\315\105\100\150\000\000"};
static struct {unsigned f; char r[16];} string126 = {851984, "\257\300\322\334\347\304\300\124\107\000\027\100\150\000\000"};
static struct {unsigned f; char r[16];} string127 = {851984, "\257\300\112\153\254\213\300\072\171\243\243\100\150\000\000"};
static struct {unsigned f; char r[16];} string128 = {851984, "\257\300\231\005\151\136\300\275\231\323\274\100\150\000\000"};
static struct {unsigned f; char r[16];} string129 = {851984, "\257\300\003\033\274\104\300\263\246\312\006\100\150\000\000"};
static struct {unsigned f; char r[16];} string130 = {851984, "\257\300\374\260\327\235\300\333\341\342\010\100\150\000\000"};
static struct {unsigned f; char r[16];} string131 = {851984, "\257\300\374\307\072\057\300\106\155\175\271\100\150\000\000"};
static struct {unsigned f; char r[16];} string132 = {851984, "\257\300U$)\337\300Xo9\243@t\000\000"};
static struct {unsigned f; char r[16];} string133 = {851984, "\257\300\206\055\004\241\300\261\334\001\116\100\150\000\000"};
static struct {unsigned f; char r[16];} string134 = {851984, "\257\300\104\154\010\164\300\126\073\363\036\100\150\000\000"};
static struct {unsigned f; char r[8];} string135 = {1195857267, "erInput"};
static struct {unsigned f; char r[16];} string136 = {851984, "\257\300\355\324\264\170\300\276\334\312\210\100\150\000\000"};
static struct {unsigned f; char r[16];} string137 = {851984, "\257\300\144\143\124\312\300\122\224\357\133\100\150\000\000"};
static struct {unsigned f; char r[16];} string138 = {851984, "\257\300\356\024\243\250\300\175\157\203\227\100\150\000\000"};
static struct {unsigned f; char r[16];} string139 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"};
static struct {unsigned f; char r[16];} string140 = {851984, "\257\300\263\272\165\301\300\364\117\256\374\100\150\000\000"};
static struct {unsigned f; char r[16];} string141 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"};
static struct {unsigned f; char r[16];} string142 = {851984, "\257\300\144\364\322\150\300\206\136\277\046\100\150\000\000"};
static struct {unsigned f; char r[16];} string143 = {851984, "\257\300\240\236\274\315\300\111\163\325\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string144 = {851984, "\257\300\245\247\302\156\300\052\156\325\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string145 = {851984, "\257\300\242\221\264\046\300\105\142\142\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string146 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {unsigned f; char r[16];} string147 = {851984, "\257\300\360\202\255\211\300\267\057\343\102\100\150\000\000"};
static struct {unsigned f; char r[16];} string148 = {851984, "\257\300\134\353\367\206\300\202\044\112\356\100\150\000\000"};
static struct {unsigned f; char r[16];} string149 = {851984, "\257\300\223\145\303\043\300\372\023\025\003\100\150\000\000"};
static struct {unsigned f; char r[28];} string150 = {1572892, "\211\014\013\103\157\156\164\162\157\154\163\117\142\152\300\223\145\303\043\300\372\023\025\003\000\000\000"};
static struct {unsigned f; char r[16];} string151 = {851984, "\257\300\365$\303)\300KDZZ@t\000\000"};
static struct {unsigned f; char r[88];} string152 = {5701719, "\006\041\000\001\004\001\010\001\014\001\020\001\024\001\030\001\034\001\040\001\050\001\054\001\064\001\070\001\074\001\100\100\001\100\104\001\100\110\001\100\114\001\100\120\001\100\124\001\100\130\001\100\140\001\100\150\001\100\160\001\100\164\001\100\174\001\100\200\001\100\204\001\100\210\001\100\214\001\100\220\001\100\224\001\100\230\001"};
static struct {unsigned f; char r[28];} string153 = {1638428, "\211\015\014\105\155\142\145\144\104\141\164\141\117\142\152\300\223\145\303\043\300\372\023\025\003\000\000"};
static struct {unsigned f; char r[16];} string154 = {851984, "\257\300\036\073\304\257\300\266\014\226\240\100\164\000\000"};
static struct {unsigned f; char r[4];} string155 = {131074, "\004,\000"};
static struct {unsigned f; char r[16];} string156 = {851984, "\257\300\037\132\057\032\300\262\356\113\061\100\150\000\000"};
static struct {
   word f0[139]; word f139; word f140; word f141; 
   word f142; word f143; word f144; word f145; 
   word f146; word f147; word f148; word f149; 
   word f150; word f151; word f152; word f153; 
   word f154; word f155; word f156; word f157; 
   word f158; word f159; word f160; word f161; 
   word f162; word f163; word f164; word f165; 
   word f166; word f167; word f168; word f169; 
   word f170; word f171; word f172; word f173; 
   word f174; word f175; word f176; word f177; 
   word f178; word f179; word f180; word f181; 
   word f182; word f183; word f184; word f185; 
   word f186; word f187; word f188; word f189; 
   word f190; word f191; word f192; word f193; 
   word f194; word f195; word f196; word f197; 
   word f198; word f199; word f200; word f201; 
   word f202; word f203; word f204; word f205; 
   word f206; word f207; word f208; word f209; 
   word f210; word f211; word f212; word f213; 
   word f214; word f215; word f216; word f217; 
   word f218; word f219; word f220; word f221; 
   word f222; word f223; word f224; word f225; 
   word f226; word f227; word f228; word f229; 
   word f230; word f231; word f232; word f233; 
   word f234; word f235; word f236; word f237; 
   word f238; word f239; word f240; word f241; 
   word f242; word f243; word f244[30]; 
   } globalframe = {
   {0}, (word) GetNewBoxesUnfilled←P3120, 0, (word) SetNewBoxesUnfilled←P3060, 
   0, (word) GetHoldThatTiger←P3000, 0, (word) SetHoldThatTiger←P2940, 
   0, (word) GetDefaultIncludeIPByValue←P2880, 0, (word) SetDefaultIncludeIPByValue←P2820, 
   0, (word) GetSeparateControlPanel←P2760, 0, (word) SetSeparateControlPanel←P2700, 
   0, (word) GetAutoScriptingOn←P2640, 0, (word) SetAutoScriptingOn←P2580, 
   0, (word) GetDefaultHistorySize←P2520, 0, (word) SetDefaultHistorySize←P2460, 
   0, (word) GetAutoOpenHistory←P2400, 0, (word) SetAutoOpenHistory←P2340, 
   0, (word) GetAutoOpenTypescript←P2280, 0, (word) SetAutoOpenTypescript←P2220, 
   0, (word) GetDefaultDefaultFont←P2160, 0, (word) SetDefaultDefaultFont←P2100, 
   0, (word) GetDefaultUseLatestIPVersion←P2040, 0, (word) SetDefaultUseLatestIPVersion←P1980, 
   0, (word) GetDefaultGravityExtent←P1920, 0, (word) SetDefaultGravityExtent←P1860, 
   0, (word) GetDefaultHeuristics←P1800, 0, (word) SetDefaultHeuristics←P1740, 
   0, (word) GetUserTraceOn←P1680, 0, (word) SetUserTraceOn←P1620, 
   0, (word) LookAtProfile←P1560, 0, (word) FetchAction←P1500, 
   0, (word) RegisterAction←P1440, 0, (word) CheckForActualExt←P1380, 
   0, (word) CheckForSelectedInt←P1320, 0, (word) CheckForSelectedCard←P1260, 
   0, (word) CheckForSelectedReal←P1200, 0, (word) CheckForSelectedRope2←P1140, 
   0, (word) CheckForSelectedRope←P1080, 0, (word) NotYetImplementedMessage←P1020, 
   0, (word) GetEventClass←P960, 0, (word) Dispatch←P900, 
   0, (word) PrintUserTrace←P840, 0, (word) NowInMilliseconds←P780, 
   0, (word) RegisterRawInputHandler←P720, 0, (word) GetAnyArguments←P660, 
   0, (word) QueueInput←P600, 0, (word) ProcessAndQueueEvent←P540, 
   0, (word) BiScrollerInputNotify←P480, 0, (word) InputNotify←P420, 
   0, (word) PlayAction←P360, 0, (word) UnQueuedEventNotify←P300, 
   0, (word) EventNotify←P240, 0, (word) NotifyExternal←P180, 
   0, (word) BroadcastExternal←P120, 0, (word) WaitExternal←P60, 
   0, (word) GGUserImpl←P0, {0}
   };

static void NoName←Q4656()
   {
   register ptr gf←c0432 =  (ptr) &globalframe;
   word var←c51324;
   (* (( (ptr) gf←c0432)+23) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
   (* (( (ptr) gf←c0432)+24) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4);
   (* (( (ptr) gf←c0432)+25) ) = (word) XR←GetTypeIndexS((word) (&string5));
   (* (( (ptr) gf←c0432)+26) ) = (word) XR←GetTypeIndexS((word) (&string6));
   (* (( (ptr) gf←c0432)+27) ) = (word) XR←GetTypeIndex((word) &string7, 0, (word) &string8);
   (* (( (ptr) gf←c0432)+29) ) = (word) XR←GetTypeIndex((word) &string9, 0, (word) &string10);
   (* (( (ptr) gf←c0432)+30) ) = (word) XR←GetTypeIndex((word) &string11, 0, (word) &string12);
   (* (( (ptr) gf←c0432)+31) ) = (word) XR←GetTypeIndexS((word) (&string13));
   (* (( (ptr) gf←c0432)+32) ) = (word) XR←GetTypeIndexS((word) (&string14));
   (* (( (ptr) gf←c0432)+33) ) = (word) XR←GetTypeIndexS((word) (&string15));
   (* (( (ptr) gf←c0432)+34) ) = (word) XR←GetTypeIndexS((word) (&string16));
   (* (( (ptr) gf←c0432)+37) ) = (word) XR←GetTypeIndex((word) &string17, 0, (word) &string18);
   (* (( (ptr) gf←c0432)+38) ) = (word) XR←GetTypeIndexS((word) (&string19));
   (* (( (ptr) gf←c0432)+39) ) = (word) XR←GetTypeIndexS((word) (&string20));
   (* (( (ptr) gf←c0432)+40) ) = (word) XR←GetTypeIndex((word) &string21, 0, (word) &string4);
   (* (( (ptr) gf←c0432)+42) ) = (word) XR←GetTypeIndexS((word) (&string22));
   (* (( (ptr) gf←c0432)+43) ) = (word) XR←GetTypeIndexS((word) (&string23));
   (* (( (ptr) gf←c0432)+44) ) = (word) XR←GetTypeIndexS((word) (&string24));
   (*  (ptr) (( (bPt) gf←c0432)+180) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string25);
   (*  (ptr) (( (bPt) gf←c0432)+184) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string26);
   (*  (ptr) (( (bPt) gf←c0432)+188) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string27);
   (*  (ptr) (( (bPt) gf←c0432)+192) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string28);
   (*  (ptr) (( (bPt) gf←c0432)+196) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string29);
   (*  (ptr) (( (bPt) gf←c0432)+200) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string30);
   (*  (ptr) (( (bPt) gf←c0432)+204) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string31);
   (*  (ptr) (( (bPt) gf←c0432)+208) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string32);
   (*  (ptr) (( (bPt) gf←c0432)+212) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string33);
   (*  (ptr) (( (bPt) gf←c0432)+216) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string34);
   (*  (ptr) (( (bPt) gf←c0432)+220) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string35);
   (*  (ptr) (( (bPt) gf←c0432)+224) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string36);
   (*  (ptr) (( (bPt) gf←c0432)+228) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string37);
   (*  (ptr) (( (bPt) gf←c0432)+232) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string38);
   (*  (ptr) (( (bPt) gf←c0432)+236) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string39);
   (*  (ptr) (( (bPt) gf←c0432)+240) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string40);
   (*  (ptr) (( (bPt) gf←c0432)+244) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string41);
   (*  (ptr) (( (bPt) gf←c0432)+248) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string42);
   (*  (ptr) (( (bPt) gf←c0432)+252) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string43);
   (*  (ptr) (( (bPt) gf←c0432)+256) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string44);
   (*  (ptr) (( (bPt) gf←c0432)+260) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string45);
   (*  (ptr) (( (bPt) gf←c0432)+264) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string46);
   (*  (ptr) (( (bPt) gf←c0432)+268) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string47);
   (*  (ptr) (( (bPt) gf←c0432)+272) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string48);
   (*  (ptr) (( (bPt) gf←c0432)+276) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string49);
   (*  (ptr) (( (bPt) gf←c0432)+280) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string50);
   (*  (ptr) (( (bPt) gf←c0432)+284) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string51);
   (*  (ptr) (( (bPt) gf←c0432)+288) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string52);
   (*  (ptr) (( (bPt) gf←c0432)+292) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string53);
   (*  (ptr) (( (bPt) gf←c0432)+296) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string54);
   (*  (ptr) (( (bPt) gf←c0432)+300) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string55);
   (*  (ptr) (( (bPt) gf←c0432)+304) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string56);
   (*  (ptr) (( (bPt) gf←c0432)+308) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string57);
   (*  (ptr) (( (bPt) gf←c0432)+312) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string58);
   (*  (ptr) (( (bPt) gf←c0432)+316) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string59);
   (*  (ptr) (( (bPt) gf←c0432)+320) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string60);
   (*  (ptr) (( (bPt) gf←c0432)+324) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string61);
   (*  (ptr) (( (bPt) gf←c0432)+328) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string62);
   (*  (ptr) (( (bPt) gf←c0432)+332) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string63);
   (*  (ptr) (( (bPt) gf←c0432)+336) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string64);
   (*  (ptr) (( (bPt) gf←c0432)+340) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string65);
   (*  (ptr) (( (bPt) gf←c0432)+344) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string66);
   (*  (ptr) (( (bPt) gf←c0432)+348) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string67);
   (*  (ptr) (( (bPt) gf←c0432)+352) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string68);
   (*  (ptr) (( (bPt) gf←c0432)+356) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string69);
   (*  (ptr) (( (bPt) gf←c0432)+360) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string70);
   (*  (ptr) (( (bPt) gf←c0432)+364) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string71);
   (*  (ptr) (( (bPt) gf←c0432)+368) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string72);
   (*  (ptr) (( (bPt) gf←c0432)+372) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string73);
   (*  (ptr) (( (bPt) gf←c0432)+376) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string74);
   (*  (ptr) (( (bPt) gf←c0432)+380) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string75);
   (*  (ptr) (( (bPt) gf←c0432)+384) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string76);
   (*  (ptr) (( (bPt) gf←c0432)+388) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string77);
   (*  (ptr) (( (bPt) gf←c0432)+392) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string78);
   (*  (ptr) (( (bPt) gf←c0432)+396) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string79);
   (*  (ptr) (( (bPt) gf←c0432)+400) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string80);
   (*  (ptr) (( (bPt) gf←c0432)+404) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string81);
   (*  (ptr) (( (bPt) gf←c0432)+408) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string82);
   (*  (ptr) (( (bPt) gf←c0432)+412) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string83);
   (*  (ptr) (( (bPt) gf←c0432)+416) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string84);
   (*  (ptr) (( (bPt) gf←c0432)+420) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string85);
   (*  (ptr) (( (bPt) gf←c0432)+424) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string86);
   (*  (ptr) (( (bPt) gf←c0432)+428) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string87);
   (*  (ptr) (( (bPt) gf←c0432)+432) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string88);
   (*  (ptr) (( (bPt) gf←c0432)+436) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string89);
   (*  (ptr) (( (bPt) gf←c0432)+440) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string90);
   (*  (ptr) (( (bPt) gf←c0432)+444) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string91);
   (*  (ptr) (( (bPt) gf←c0432)+448) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string92);
   (*  (ptr) (( (bPt) gf←c0432)+452) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string93);
   (*  (ptr) (( (bPt) gf←c0432)+456) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string94);
   (*  (ptr) (( (bPt) gf←c0432)+460) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string95);
   (*  (ptr) (( (bPt) gf←c0432)+464) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string96);
   (*  (ptr) (( (bPt) gf←c0432)+468) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string97);
   (*  (ptr) (( (bPt) gf←c0432)+472) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string98);
   (*  (ptr) (( (bPt) gf←c0432)+476) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string99);
   (*  (ptr) (( (bPt) gf←c0432)+480) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+24) ), (word) &string100);
   (*  (ptr) (( (bPt) gf←c0432)+484) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string101);
   (*  (ptr) (( (bPt) gf←c0432)+488) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string102);
   (*  (ptr) (( (bPt) gf←c0432)+492) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string103);
   (*  (ptr) (( (bPt) gf←c0432)+496) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string104);
   (*  (ptr) (( (bPt) gf←c0432)+500) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string105);
   (*  (ptr) (( (bPt) gf←c0432)+504) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string106);
   (*  (ptr) (( (bPt) gf←c0432)+508) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string107);
   (*  (ptr) (( (bPt) gf←c0432)+512) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string108);
   (*  (ptr) (( (bPt) gf←c0432)+516) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string109);
   (*  (ptr) (( (bPt) gf←c0432)+520) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string110);
   (*  (ptr) (( (bPt) gf←c0432)+524) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string111);
   (*  (ptr) (( (bPt) gf←c0432)+528) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string112);
   (*  (ptr) (( (bPt) gf←c0432)+532) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string113);
   (*  (ptr) (( (bPt) gf←c0432)+536) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string114);
   (*  (ptr) (( (bPt) gf←c0432)+540) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string115);
   (*  (ptr) (( (bPt) gf←c0432)+544) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string116);
   (*  (ptr) (( (bPt) gf←c0432)+548) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string117);
   (*  (ptr) (( (bPt) gf←c0432)+552) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0432)+40) ), (word) &string118);
   (void) XR←DeclareGlobalFrame((word) "GGUserImpl", &globalframe, (word) XR←GetTypeIndex((word) &string119, 0, (word) &string120)
      , (word) (( (bPt) gf←c0432)+972)/* var←c47036 */ );
   var←c51324 = (word) XR←ImportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string121)), 16);
   (* (( (ptr) gf←c0432)+252)/* var←c47868 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67372289);
   var←c51324 = (word) XR←ImportInterface((word) "BasicTime", (word) XR←GetTypeIndexS((word) (&string122)), 24);
   (* (( (ptr) gf←c0432)+262)/* var←c48700 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67109632);
   (void) XR←ImportProcS(var←c51324, 67372033);
   var←c51324 = (word) XR←ImportInterface((word) "BiScrollers", (word) XR←GetTypeIndexS((word) (&string123)), 30);
   (* (( (ptr) gf←c0432)+250)/* var←c47452 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67373825);
   var←c51324 = (word) XR←ImportInterface((word) "CodeTimer", (word) XR←GetTypeIndexS((word) (&string124)), 21);
   (* (( (ptr) gf←c0432)+264)/* var←c48956 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 1051396);
   var←c51324 = (word) XR←ImportInterface((word) "Convert", (word) XR←GetTypeIndexS((word) (&string125)), 73);
   (* (( (ptr) gf←c0432)+268)/* var←c50044 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67634690);
   (void) XR←ImportProcS(var←c51324, 67373057);
   var←c51324 = (word) XR←ImportInterface((word) "Feedback", (word) XR←GetTypeIndexS((word) (&string126)), 25);
   (* (( (ptr) gf←c0432)+245)/* var←c47068 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 1050628);
   (void) XR←ImportProcS(var←c51324, 1313029);
   var←c51324 = (word) XR←ImportInterface((word) "GGActive", (word) XR←GetTypeIndexS((word) (&string127)), 4);
   (* (( (ptr) gf←c0432)+246)/* var←c47100 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 1049348);
   var←c51324 = (word) XR←ImportInterface((word) "GGCoreOps", (word) XR←GetTypeIndexS((word) (&string128)), 37);
   (* (( (ptr) gf←c0432)+265)/* var←c48988 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 524802);
   (void) XR←ImportProcS(var←c51324, 262401);
   (void) XR←ImportProcS(var←c51324, 67371777);
   var←c51324 = (word) XR←ImportInterface((word) "GGEvent", (word) XR←GetTypeIndexS((word) (&string129)), 38);
   (* (( (ptr) gf←c0432)+259)/* var←c48412 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 531458);
   var←c51324 = (word) XR←ImportInterface((word) "GGFont", (word) XR←GetTypeIndexS((word) (&string130)), 16);
   (* (( (ptr) gf←c0432)+269)/* var←c51196 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 69731594);
   var←c51324 = (word) XR←ImportInterface((word) "GGScrollMonitor", (word) XR←GetTypeIndexS((word) (&string131)), 2);
   (* (( (ptr) gf←c0432)+255)/* var←c48124 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 524546);
   var←c51324 = (word) XR←ImportInterface((word) "GGSlice", (word) XR←GetTypeIndexS((word) (&string132)), 128);
   (* (( (ptr) gf←c0432)+271)/* var←c51260 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67123456);
   (void) XR←ImportProcS(var←c51324, 276481);
   var←c51324 = (word) XR←ImportInterface((word) "GGState", (word) XR←GetTypeIndexS((word) (&string133)), 119);
   (* (( (ptr) gf←c0432)+256)/* var←c48252 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 288513);
   (void) XR←ImportProcS(var←c51324, 134481921);
   (void) XR←ImportProcS(var←c51324, 268698369);
   var←c51324 = (word) XR←ImportInterface((word) "GGTransform", (word) XR←GetTypeIndexS((word) (&string134)), 7);
   (* (( (ptr) gf←c0432)+258)/* var←c48380 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67896066);
   var←c51324 = (word) XR←ImportInterface((word) &string135, (word) XR←GetTypeIndexS((word) (&string136)), 13);
   (* (( (ptr) gf←c0432)+266)/* var←c49052 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67111680);
   var←c51324 = (word) XR←ImportInterface((word) "GGViewerOps", (word) XR←GetTypeIndexS((word) (&string137)), 8);
   (* (( (ptr) gf←c0432)+267)/* var←c49532 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67108864);
   var←c51324 = (word) XR←ImportInterface((word) "GGWindow", (word) XR←GetTypeIndexS((word) (&string138)), 12);
   (* (( (ptr) gf←c0432)+270)/* var←c51228 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 1792);
   var←c51324 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string139)), 55);
   (* (( (ptr) gf←c0432)+254)/* var←c48092 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 135013122);
   (void) XR←ImportProcS(var←c51324, 67634689);
   var←c51324 = (word) XR←ImportInterface((word) "InputFocus", (word) XR←GetTypeIndexS((word) (&string140)), 6);
   (* (( (ptr) gf←c0432)+251)/* var←c47484 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 524546);
   var←c51324 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string141)), 103);
   (* (( (ptr) gf←c0432)+263)/* var←c48764 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67388417);
   (void) XR←ImportProcS(var←c51324, 67640578);
   (void) XR←ImportProcS(var←c51324, 67388673);
   (void) XR←ImportProcS(var←c51324, 67910402);
   var←c51324 = (word) XR←ImportInterface((word) "List", (word) XR←GetTypeIndexS((word) (&string142)), 28);
   (* (( (ptr) gf←c0432)+260)/* var←c48540 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67633666);
   (void) XR←ImportProcS(var←c51324, 67635970);
   (void) XR←ImportProcS(var←c51324, 67636994);
   (void) XR←ImportProcS(var←c51324, 67635714);
   var←c51324 = (word) XR←ImportInterface((word) "Process", (word) XR←GetTypeIndexS((word) (&string143)), 22);
   (* (( (ptr) gf←c0432)+249)/* var←c47388 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 526081);
   var←c51324 = (word) XR←ImportInterface((word) "RealFns", (word) XR←GetTypeIndexS((word) (&string144)), 36);
   (* (( (ptr) gf←c0432)+257)/* var←c48316 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67633922);
   var←c51324 = (word) XR←ImportInterface((word) "RefTab", (word) XR←GetTypeIndexS((word) (&string145)), 16);
   (* (( (ptr) gf←c0432)+248)/* var←c47324 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 134742786);
   (void) XR←ImportProcS(var←c51324, 67896323);
   (void) XR←ImportProcS(var←c51324, 67896835);
   (void) XR←ImportProcS(var←c51324, 67895555);
   var←c51324 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string146)), 43);
   (* (( (ptr) gf←c0432)+253)/* var←c47932 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67903235);
   (void) XR←ImportProcS(var←c51324, 68419845);
   (void) XR←ImportProcS(var←c51324, 67898627);
   (void) XR←ImportProcS(var←c51324, 67896323);
   var←c51324 = (word) XR←ImportInterface((word) "SlackProcess", (word) XR←GetTypeIndexS((word) (&string147)), 26);
   (* (( (ptr) gf←c0432)+261)/* var←c48572 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 1573638);
   var←c51324 = (word) XR←ImportInterface((word) "UserProfile", (word) XR←GetTypeIndexS((word) (&string148)), 11);
   (* (( (ptr) gf←c0432)+247)/* var←c47292 */  ) = var←c51324;
   (void) XR←ImportProcS(var←c51324, 67633666);
   (void) XR←ImportProcS(var←c51324, 67633154);
   (void) XR←ImportProcS(var←c51324, 264193);
   var←c51324 = (word) XR←ExportInterface((word) "GGInterfaceTypes", (word) XR←GetTypeIndexS((word) (&string149)), 6);
   (* (( (ptr) gf←c0432)+272)/* var←c51356 */  ) = var←c51324;
   (void) XR←ExportType((word) "ControlsObj", (word) XR←GetTypeIndexS((word) (&string150)), (word) XR←GetTypeIndex((word) &string151, 0, (word) &string152)
      );
   (void) XR←ExportType((word) "EmbedDataObj", (word) XR←GetTypeIndexS((word) (&string153)), (word) XR←GetTypeIndex((word) &string154, 0, (word) &string155)
      );
   var←c51324 = (word) XR←ExportInterface((word) &string135, (word) XR←GetTypeIndexS((word) (&string136)), 13);
   (* (( (ptr) gf←c0432)+273)/* var←c51388 */  ) = var←c51324;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+916)/* var←c46812 */ , 1310981, (word) "InputNotify");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+908)/* var←c46780 */ , 524802, (word) "BiScrollerInputNotify")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+940)/* var←c46908 */ , 525058, (word) "EventNotify");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+932)/* var←c46876 */ , 525314, (word) "UnQueuedEventNotify");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+924)/* var←c46844 */ , 525570, (word) "PlayAction");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+780)/* var←c46268 */ , 1312261, (word) "RegisterAction");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+964)/* var←c47004 */ , 263937, (word) "WaitExternal");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+956)/* var←c46972 */ , 264193, (word) "BroadcastExternal");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+948)/* var←c46940 */ , 264449, (word) "NotifyExternal");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+756)/* var←c46172 */ , 264705, (word) "SetUserTraceOn");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+748)/* var←c46140 */ , 67111680, (word) "GetUserTraceOn");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+876)/* var←c46652 */ , 265217, (word) "RegisterRawInputHandler")
   ;
   var←c51324 = (word) XR←ExportInterface((word) "GGUserProfile", (word) XR←GetTypeIndexS((word) (&string156)), 25);
   (* (( (ptr) gf←c0432)+273)/* var←c51388 */  ) = var←c51324;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+764)/* var←c46204 */ , 262145, (word) "LookAtProfile");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+740)/* var←c46108 */ , 262401, (word) "SetDefaultHeuristics")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+732)/* var←c46076 */ , 67109376, (word) "GetDefaultHeuristics")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+724)/* var←c46044 */ , 262913, (word) "SetDefaultGravityExtent")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+716)/* var←c46012 */ , 67109888, (word) "GetDefaultGravityExtent")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+708)/* var←c45980 */ , 263425, (word) "SetDefaultUseLatestIPVersion")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+700)/* var←c45948 */ , 67110400, (word) "GetDefaultUseLatestIPVersion")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+692)/* var←c45916 */ , 263937, (word) "SetDefaultDefaultFont")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+684)/* var←c45884 */ , 67110912, (word) "GetDefaultDefaultFont")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+676)/* var←c45852 */ , 264449, (word) "SetAutoOpenTypescript")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+668)/* var←c45820 */ , 67111424, (word) "GetAutoOpenTypescript")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+660)/* var←c45788 */ , 264961, (word) "SetAutoOpenHistory");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+652)/* var←c45756 */ , 67111936, (word) "GetAutoOpenHistory")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+644)/* var←c45724 */ , 265473, (word) "SetDefaultHistorySize")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+636)/* var←c45692 */ , 67112448, (word) "GetDefaultHistorySize")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+628)/* var←c45660 */ , 265985, (word) "SetAutoScriptingOn");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+620)/* var←c45628 */ , 67112960, (word) "GetAutoScriptingOn")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+612)/* var←c45596 */ , 266497, (word) "SetSeparateControlPanel")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+604)/* var←c45564 */ , 67113472, (word) "GetSeparateControlPanel")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+596)/* var←c45532 */ , 267009, (word) "SetDefaultIncludeIPByValue")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+588)/* var←c45500 */ , 67113984, (word) "GetDefaultIncludeIPByValue")
   ;
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+580)/* var←c45468 */ , 267521, (word) "SetHoldThatTiger");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+572)/* var←c45436 */ , 67114496, (word) "GetHoldThatTiger");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+564)/* var←c45404 */ , 268033, (word) "SetNewBoxesUnfilled");
   (void) XR←ExportProcS(var←c51324, (word) (( (bPt) gf←c0432)+556)/* var←c45372 */ , 67115008, (word) "GetNewBoxesUnfilled")
   ;
   }

static void GGUserImpl←P0(formal←c0119, formal←c0113)
   word formal←c0119;
   word formal←c0113;
   {
   register ptr gf←c51420 =  (ptr) &globalframe;
   /* GGUserImpl: */ 
SOURCE(488, 22449)
SOURCE(1837, 24)
   (* (( (ptr) gf←c51420)+8)/* Problem←v4932 */  ) = (*  (ptr) (* (( (ptr) (* (( (ptr) gf←c51420)+245)/* var←c47068 */  ))+28)
    ) );
SOURCE(3555, 79)
   (* (( (ptr) gf←c51420)+15)/* gRawInputHandler←v5156 */  ) = (* (( (ptr) (* (( (ptr) gf←c51420)+246)/* var←c47100 */  ))+7)
    );
SOURCE(4615, 12)
   {
      word var←c47132;
      word var←c47164;
      var←c47132 = XR←NewObject(8, (* (( (ptr) gf←c51420)+23) ));
      var←c47164 = var←c47132;
      (*  (ptr) var←c47164 ) = (* (( (ptr) gf←c51420)+120) );
      (* (( (ptr) gf←c51420)+16)/* finishText←v5240 */  ) = var←c47132;
      };
SOURCE(4667, 13)
   {
      word var←c47196;
      word var←c47228;
      var←c47196 = XR←NewObject(8, (* (( (ptr) gf←c51420)+23) ));
      var←c47228 = var←c47196;
      (*  (ptr) var←c47228 ) = (* (( (ptr) gf←c51420)+119) );
      (* (( (ptr) gf←c51420)+17)/* finishMouse←v5268 */  ) = var←c47196;
      };
SOURCE(22822, 31)
   {
      word var←c47260;
      var←c47260 = XR←NewObject(56, (* (( (ptr) gf←c51420)+29) ));
      (*  (ptr) var←c47260 ) = (*  (ptr) &fc157 );
      (* (( (ptr) var←c47260)+1) ) = 1;
      (* (( (ptr) var←c47260)+4) ) = 1;
      (* (( (ptr) var←c47260)+5) ) = 1;
      (* (( (ptr) var←c47260)+6) ) = 40;
      (* (( (ptr) var←c47260)+7) ) = 1;
      (* (( (ptr) gf←c51420)+19)/* masterData←v6752 */  ) = var←c47260;
      };
SOURCE(22855, 49)
   {
      word pd158;
      pd158 = (* (( (ptr) (* (( (ptr) gf←c51420)+247)/* var←c47292 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd158 ))))((word) ((( (bPt) gf←c51420)+764)/* var←c46204 */ ), pd158);
      };
SOURCE(22906, 31)
   {
      word pd159;
      pd159 = (* (( (ptr) (* (( (ptr) gf←c51420)+248)/* var←c47324 */  ))+5) );
      (* (( (ptr) gf←c51420)+20)/* eventTable←v6780 */  ) = (word) ( *( (fPt) ((*  (ptr) pd159 ))))(255, 0, 0, pd159);
      };
   }

static void WaitExternal←P60(formal←c6992)
   word formal←c6992;
   {
   register ptr gf←c51452 =  (ptr) &globalframe;
   /* WaitExternal: */ 
SOURCE(1922, 62)
   (void) (XR←MonitorEntry((word) (( (bPt) gf←c51452)+16)/* LOCK←v4316 */ ));
SOURCE(1969, 15)
   (void) (XR←Wait((word) (( (bPt) gf←c51452)+16)/* LOCK←v4316 */ , (word) (( (bPt) gf←c51452)+36)/* externalCV←v4960 */ ));
SOURCE(1922, 62)
   (void) (XR←MonitorExit((word) (( (bPt) gf←c51452)+16)/* LOCK←v4316 */ ));
   return;
   }

static void BroadcastExternal←P120(formal←c7052)
   word formal←c7052;
   {
   register ptr gf←c51484 =  (ptr) &globalframe;
   /* BroadcastExternal: */ 
SOURCE(1990, 72)
   (void) (XR←MonitorEntry((word) (( (bPt) gf←c51484)+16)/* LOCK←v4316 */ ));
SOURCE(2042, 20)
   (void) (XR←Broadcast((word) (( (bPt) gf←c51484)+36)/* externalCV←v4960 */ ));
SOURCE(1990, 72)
   (void) (XR←MonitorExit((word) (( (bPt) gf←c51484)+16)/* LOCK←v4316 */ ));
   return;
   }

static void NotifyExternal←P180(formal←c7112)
   word formal←c7112;
   {
   register ptr gf←c51516 =  (ptr) &globalframe;
   /* NotifyExternal: */ 
SOURCE(2068, 66)
   (void) (XR←MonitorEntry((word) (( (bPt) gf←c51516)+16)/* LOCK←v4316 */ ));
SOURCE(2117, 17)
   (void) (XR←Notify((word) (( (bPt) gf←c51516)+36)/* externalCV←v4960 */ ));
SOURCE(2068, 66)
   (void) (XR←MonitorExit((word) (( (bPt) gf←c51516)+16)/* LOCK←v4316 */ ));
   return;
   }

static void EventNotify←P240(clientData←v7172, event←v7200)
   word clientData←v7172;
   word event←v7200;
   {
   register ptr gf←c51548 =  (ptr) &globalframe;
   word ggData←v14096;
   /* EventNotify: */ 
SOURCE(2141, 147)
SOURCE(2216, 35)
   ggData←v14096 = XR←Narrow(clientData←v7172, (* (( (ptr) gf←c51548)+30) ));
SOURCE(2253, 35)
   (void) ProcessAndQueueEvent←P540(event←v7200, ggData←v14096);
   }

static void UnQueuedEventNotify←P300(clientData←v7372, event←v7400)
   word clientData←v7372;
   word event←v7400;
   {
   register ptr gf←c51580 =  (ptr) &globalframe;
   word ggData←v14140;
   word atom←v14168;
   word regEvent←v14196;
   /* UnQueuedEventNotify: */ 
SOURCE(2294, 389)
SOURCE(2377, 35)
   ggData←v14140 = XR←Narrow(clientData←v7372, (* (( (ptr) gf←c51580)+30) ));
SOURCE(2414, 32)
   atom←v14168 = XR←Narrow((*  (ptr) event←v7400 ), (* (( (ptr) gf←c51580)+26) ));
SOURCE(2448, 45)
   regEvent←v14196 = (word) FetchAction←P1500(atom←v14168);
SOURCE(2495, 188)
   if ((regEvent←v14196 == 0)) {
SOURCE(2518, 38)
      (void) NotYetImplementedMessage←P1020(atom←v14168, ggData←v14140);
      }
   else {
SOURCE(2567, 48)
      event←v7400 = (word) GetAnyArguments←P660(event←v7400, regEvent←v14196, ggData←v14140);
SOURCE(2625, 58)
SOURCE(2626, 55)
      {
         W2 var←c47356;
         {
            W2 var←c0133;
            word var←c0132;
            var←c0132 = XR←ExtensionAlloc(6);
            {
               word tmpAddr160;
               tmpAddr160 = (word) var←c0132;
               (*  (ptr) tmpAddr160 ) = ( ((word)  (fPt) NoName←Q5436) );
               (* (( (ptr) tmpAddr160) + 1) ) = 0;
               (* (( (ptr) tmpAddr160) + 2) ) = (*  (ptr) regEvent←v14196 );
               (* (( (ptr) tmpAddr160) + 3) ) = 0;
               (* (( (ptr) tmpAddr160) + 4) ) = ggData←v14140;
               (* (( (ptr) tmpAddr160) + 5) ) = event←v7400;
               };
            (void) XR←Fork((word) &var←c0133, var←c0132);
            var←c47356 = var←c0133;
            };
         {
            word pd161;
            pd161 = (* (( (ptr) (* (( (ptr) gf←c51580)+249)/* var←c47388 */  ))+11) );
            (void) ( *( (fPt) ((*  (ptr) pd161 ))))(var←c47356, pd161);
            };
         };
      };
   }

static void PlayAction←P360(clientData←v7568, event←v7596)
   word clientData←v7568;
   word event←v7596;
   {
   register ptr gf←c51612 =  (ptr) &globalframe;
   word ggData←v14240;
   /* PlayAction: */ 
SOURCE(2693, 856)
SOURCE(2767, 35)
   ggData←v14240 = XR←Narrow(clientData←v7568, (* (( (ptr) gf←c51612)+30) ));
SOURCE(2804, 708)
   if (((((((((((((((((((((((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+118) )) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+117)
    ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+116) ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+77)
    ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+72) ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+71)
    ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+70) ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+64)
    ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+62) ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+59)
    ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+58) ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+56)
    ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+55) ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+54)
    ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+45) ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+46)
    ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+47) ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+48)
    ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+49) ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+50)
    ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+51) ))) || ((*  (ptr) event←v7596 ) == (* (( (ptr) gf←c51612)+52)
    ))) {
SOURCE(3506, 6)
      return;
      };
SOURCE(3514, 35)
   (void) ProcessAndQueueEvent←P540(event←v7596, ggData←v14240);
   }

static void InputNotify←P420(self←v26276, input←v26304, device←v26332, user←v26360, display←v26388)
   word self←v26276;
   word input←v26304;
   word device←v26332;
   word user←v26360;
   word display←v26388;
   {
   W7 var←c51644;
   register ptr gf←c51676 =  (ptr) &globalframe;
   /* declaration of var←c47420 skipped */ 
   /* declaration of ggData←v14284 skipped */ 
   /* InputNotify: */ 
SOURCE(3637, 289)
   {
      word tmpAddr162;
      tmpAddr162 = (word) (( (ptr) &var←c51644)+4)/* var←c47420 */ ;
      (*  (ptr) tmpAddr162 ) = ( ((word)  (fPt) notify←P3180) );
      (* (( (ptr) tmpAddr162) + 1) ) = 1;
      };
SOURCE(3686, 61)
   {
      word pd163;
      pd163 = (* (( (ptr) (* (( (ptr) gf←c51676)+250)/* var←c47452 */  ))+15) );
      var←c51644.f6/* ggData←v14284 */  = XR←Narrow((word) ( *( (fPt) ((*  (ptr) pd163 ))))(self←v26276, pd163), (* (( (ptr) gf←c51676)+30)
          ));
      };
SOURCE(3881, 45)
   {
      word pd164;
      pd164 = (* (( (ptr) gf←c51676)+15)/* gRawInputHandler←v5156 */  );
      (void) ( *( (fPt) ((*  (ptr) pd164 ))))(self←v26276, var←c51644.f6/* ggData←v14284 */ , input←v26304, (word) (( (bPt) &var←c51644)+16)
         /* var←c47420 */ , pd164);
      };
   }

static void notify←P3180(input←v14388, formal←c51740)
   word input←v14388;
   word formal←c51740;
   {
   register ptr gf←c51708 =  (ptr) &globalframe;
   formal←c51740 = (formal←c51740 - 16);
   /* notify: */ 
SOURCE(3749, 127)
SOURCE(3787, 52)
   {
      word pd165;
      pd165 = (* (( (ptr) (* (( (ptr) gf←c51708)+251)/* var←c47484 */  ))+5) );
      (void) ( *( (fPt) ((*  (ptr) pd165 ))))((* (( (ptr) (*  (ptr) (* (( (ptr) formal←c51740)+6) ) ))+5) ), 0, pd165);
      };
SOURCE(3841, 35)
   (void) ProcessAndQueueEvent←P540(input←v14388, (* (( (ptr) formal←c51740)+6) ));
   }

static void BiScrollerInputNotify←P480(ggData←v7764, event←v7792)
   word ggData←v7764;
   word event←v7792;
   {
   W6 var←c51772;
   register ptr gf←c51804 =  (ptr) &globalframe;
   /* declaration of var←c47516 skipped */ 
   word var←c47548;
   /* BiScrollerInputNotify: */ 
SOURCE(3932, 677)
   {
      word tmpAddr166;
      tmpAddr166 = (word) (( (ptr) &var←c51772)+4)/* var←c47516 */ ;
      (*  (ptr) tmpAddr166 ) = ( ((word)  (fPt) BiScrollerQueue←P3240) );
      (* (( (ptr) tmpAddr166) + 1) ) = 1;
      };
SOURCE(4353, 256)
   var←c47548 = (*  (ptr) event←v7792 );
   if ( ( (var←c47548 == 0) ? 1 : ((* (( (ptr) gf←c51804)+23) ) == XR←GetReferentType(var←c47548)) ) ) {
SOURCE(4396, 165)
      {
         register word list←v14836;
         list←v14836 = event←v7792;
         lab←L100003: ;
         if ((list←v14836 != 0)) {
            }
         else {
            goto lab←L100000;
            };
         {
            word sublist←v14976;
SOURCE(4457, 25)
            sublist←v14976 = (*  (ptr) list←v14836 );
SOURCE(4484, 77)
            if ((sublist←v14976 == 0) || ((* (( (ptr) gf←c51804)+23) ) == XR←GetReferentType(sublist←v14976))) {
SOURCE(4521, 40)
               {
                  word var←c47580;
                  var←c47580 = XR←Narrow(sublist←v14976, (* (( (ptr) gf←c51804)+23) ));
                  (void) BiScrollerQueue←P3240(var←c47580, ggData←v7764, (word) (( (bPt) &var←c51772)+16)/* var←c47516 */ );
                  };
               };
            };
         list←v14836 = (* (( (ptr) list←v14836)+1) );
         goto lab←L100003;
         lab←L100000: ;
         };
      }
   else {
SOURCE(4579, 30)
      (void) BiScrollerQueue←P3240(event←v7792, ggData←v7764, (word) (( (bPt) &var←c51772)+16)/* var←c47516 */ );
      };
   }

static void BiScrollerQueue←P3240(event←v14588, ggData←v14616, formal←c51868)
   word event←v14588;
   word ggData←v14616;
   word formal←c51868;
   {
   register ptr gf←c51836 =  (ptr) &globalframe;
   word first←v15128;
   formal←c51868 = (formal←c51868 - 16);
   /* BiScrollerQueue: */ 
SOURCE(4008, 340)
SOURCE(4075, 33)
   first←v15128 = XR←Narrow((*  (ptr) event←v14588 ), (* (( (ptr) gf←c51836)+26) ));
SOURCE(4110, 198)
   if ((first←v15128 == (* (( (ptr) gf←c51836)+53) ))) {
SOURCE(4131, 179)
      {
         word vec←v15172;
         word xVec←v15200;
SOURCE(4133, 39)
         vec←v15172 = XR←Narrow((*  (ptr) (* (( (ptr) event←v14588)+1) ) ), (* (( (ptr) gf←c51836)+44) ));
SOURCE(4190, 44)
         xVec←v15200 = XR←NewObject(8, (* (( (ptr) gf←c51836)+43) ));
         (*  (ptr) xVec←v15200 ) = (*  (ptr) vec←v15172 );
         (* (( (ptr) xVec←v15200)+1) ) = (* (( (ptr) vec←v15172)+1) );
SOURCE(4282, 26)
         {
            word var←c47644;
            word var←c47676;
            var←c47644 = XR←NewObject(8, (* (( (ptr) gf←c51836)+23) ));
            var←c47676 = var←c47644;
            (*  (ptr) var←c47676 ) = (* (( (ptr) gf←c51836)+53) );
            (* (( (ptr) var←c47676)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c51836)+23) ));
            var←c47676 = (* (( (ptr) var←c47676)+1) );
            (*  (ptr) var←c47676 ) = xVec←v15200;
            event←v14588 = var←c47644;
            };
         };
      };
SOURCE(4313, 35)
   (void) ProcessAndQueueEvent←P540(event←v14588, ggData←v14616);
   }

static void ProcessAndQueueEvent←P540(event←v8140, ggData←v8168)
   word event←v8140;
   word ggData←v8168;
   {
   register ptr gf←c51900 =  (ptr) &globalframe;
   /* ProcessAndQueueEvent: */ 
SOURCE(4722, 1874)
SOURCE(4794, 37)
   if ((0 != (* (( (ptr) (* (( (ptr) ggData←v8168)+2) ))+4) ))) {
SOURCE(4825, 6)
      return;
      };
SOURCE(4890, 1647)
   {
      word var←c47708;
      word var←c47740;
      var←c47708 = (*  (ptr) event←v8140 );
      if ((var←c47708 == 0)) {
         goto lab←L100004;
         };
      var←c47740 = XR←GetReferentType(var←c47708);
      if (((* (( (ptr) gf←c51900)+42) ) == var←c47740)) {
         {
            word refChar←v15268;
            refChar←v15268 = var←c47708;
SOURCE(4940, 81)
            {
               word myRefChar←v15324;
SOURCE(4942, 42)
               myRefChar←v15324 = XR←NewObject(4, (* (( (ptr) gf←c51900)+42) ));
               (*  (ptr) myRefChar←v15324 ) = (*  (ptr) refChar←v15268 );
SOURCE(4986, 33)
               {
                  word var←c47804;
                  word var←c47836;
                  var←c47804 = XR←NewObject(8, (* (( (ptr) gf←c51900)+23) ));
                  var←c47836 = var←c47804;
                  (*  (ptr) var←c47836 ) = (* (( (ptr) gf←c51900)+57) );
                  (* (( (ptr) var←c47836)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c51900)+23) ));
                  var←c47836 = (* (( (ptr) var←c47836)+1) );
                  (*  (ptr) var←c47836 ) = myRefChar←v15324;
                  event←v8140 = var←c47804;
                  };
               };
            };
         }
      else {
         if (((* (( (ptr) gf←c51900)+26) ) == var←c47740)) {
            {
               word atom←v15380;
               atom←v15380 = var←c47708;
SOURCE(5038, 1507)
               {
                  word regEvent←v15424;
SOURCE(5040, 45)
                  regEvent←v15424 = (word) FetchAction←P1500(atom←v15380);
SOURCE(5087, 1450)
                  if ((regEvent←v15424 == 0)) {
SOURCE(5108, 44)
                     (void) NotYetImplementedMessage←P1020(atom←v15380, ggData←v8168);
                     }
                  else {
SOURCE(5152, 1390)
                     {
                        word atomName←v15468;
                        word startAction←v15496;
SOURCE(5154, 41)
                        {
                           word pd167;
                           pd167 = (* (( (ptr) (* (( (ptr) gf←c51900)+252)/* var←c47868 */  ))+9) );
                           atomName←v15468 = (word) ( *( (fPt) ((*  (ptr) pd167 ))))(atom←v15380, pd167);
                           };
SOURCE(5197, 74)
                        {
                           word var←c47900;
                           {
/*1*/   word pd168;
/*1*/   pd168 = (* (( (ptr) (* (( (ptr) gf←c51900)+253)/* var←c47932 */  ))+17) );
/*1*/   var←c47900 = (word) ( *( (fPt) ((*  (ptr) pd168 ))))(atomName←v15468, 0, 5, pd168);
/*1*/   };
                           {
/*1*/   word pd169;
/*1*/   pd169 = (* (( (ptr) (* (( (ptr) gf←c51900)+253)/* var←c47932 */  ))+8) );
/*1*/   startAction←v15496 = (word) ( *( (fPt) ((*  (ptr) pd169 ))))(var←c47900, (* (( (ptr) gf←c51900)+60) ), 1, pd169);
/*1*/   };
                           };
SOURCE(5273, 50)
                        if ((0 != startAction←v15496)) {
SOURCE(5293, 30)
                           (void) QueueInput←P600(ggData←v8168, (* (( (ptr) gf←c51900)+16)/* finishText←v5240 */  ), 0);
                           };
SOURCE(5363, 75)
                        if ((0 != (* (( (ptr) regEvent←v15424)+2) ))) {
SOURCE(5407, 31)
                           (void) QueueInput←P600(ggData←v8168, (* (( (ptr) gf←c51900)+17)/* finishMouse←v5268 */  ), 0);
                           };
SOURCE(5440, 48)
                        event←v8140 = (word) GetAnyArguments←P660(event←v8140, regEvent←v15424, ggData←v8168);
SOURCE(5490, 1047)
                        if ((atom←v15380 == (* (( (ptr) gf←c51900)+61) ))) {
SOURCE(5518, 468)
                           if (((* (( (ptr) event←v8140)+1) ) != 0)) {
SOURCE(5543, 443)
SOURCE(5549, 17)
/*1*/   {
/*1*/      word x←v15540 = 0;
/*1*/      word y←v15568 = 0;
SOURCE(5568, 196)
/*1*/      {
/*1*/         word var←c47964;
/*1*/         word var←c47996;
/*1*/         var←c47964 = (*  (ptr) (* (( (ptr) event←v8140)+1) ) );
/*1*/         if ((var←c47964 == 0)) {
/*1*/            goto lab←L100006;
/*1*/            };
/*1*/         var←c47996 = XR←GetReferentType(var←c47964);
/*1*/         if (((* (( (ptr) gf←c51900)+44) ) == var←c47996)) {
/*1*/            {
/*1*/               word change←v15612;
/*1*/               change←v15612 = var←c47964;
SOURCE(5630, 90)
/*1*/               {
/*1*/                  word var←c48028;
/*1*/                  {
/*1*/                     W2 var←c48060;
/*1*/                     var←c48060.f0 = (*  (ptr) change←v15612 );
/*1*/                     var←c48060.f1 = (* (( (ptr) change←v15612)+1) );
/*1*/                     {
/*1*/                        word pd170;
/*1*/                        pd170 = (* (( (ptr) (* (( (ptr) gf←c51900)+254)/* var←c48092 */  ))+10) );
/*1*/                        var←c48028 = (word) ( *( (fPt) ((*  (ptr) pd170 ))))(var←c48060, pd170);
/*1*/                        };
/*1*/                     };
/*1*/                  {
/*1*/                     word pd171;
/*1*/                     pd171 = (* (( (ptr) (* (( (ptr) gf←c51900)+255)/* var←c48124 */  ))+5) );
/*1*/                     (void) ( *( (fPt) ((*  (ptr) pd171 ))))(ggData←v8168, var←c48028, pd171);
/*1*/                     };
/*1*/                  };
SOURCE(5722, 13)
/*1*/               goto lab←L100005;
/*1*/               };
/*1*/            }
/*1*/         else {
/*1*/            if (((* (( (ptr) gf←c51900)+39) ) == var←c47996)) {
/*1*/               {
/*1*/                  word i←v15668;
/*1*/                  i←v15668 = var←c47964;
SOURCE(5758, 6)
/*1*/                  x←v15540 = (*  (ptr) i←v15668 );
/*1*/                  };
/*1*/               }
/*1*/            else {
/*1*/               lab←L100006: ;
/*1*/               };
/*1*/            };
/*1*/         };
SOURCE(5775, 95)
/*1*/      if (((* (( (ptr) (* (( (ptr) event←v8140)+1) ))+1) ) != 0)) {
SOURCE(5807, 63)
/*1*/         {
/*1*/            word var←c48156;
/*1*/            var←c48156 = (*  (ptr) (* (( (ptr) (* (( (ptr) event←v8140)+1) ))+1) ) );
/*1*/            if ((var←c48156 == 0)) {
/*1*/               goto lab←L100007;
/*1*/               };
/*1*/            if (((* (( (ptr) gf←c51900)+39) ) == XR←GetReferentType(var←c48156))) {
/*1*/               {
/*1*/                  word i←v15724;
/*1*/                  i←v15724 = var←c48156;
SOURCE(5864, 6)
/*1*/                  y←v15568 = (*  (ptr) i←v15724 );
/*1*/                  };
/*1*/               }
/*1*/            else {
/*1*/               lab←L100007: ;
/*1*/               };
/*1*/            };
/*1*/         };
SOURCE(5884, 76)
/*1*/      {
/*1*/         word var←c48188;
/*1*/         {
/*1*/            W2 var←c48220;
/*1*/            {
/*1*/               float tf172;
/*1*/               var←c48220.f0 = (
/*1*/                  tf172 = (float)(int)x←v15540,  *(word*)&tf172
/*1*/                  );
/*1*/               };
/*1*/            {
/*1*/               float tf173;
/*1*/               var←c48220.f1 = (
/*1*/                  tf173 = (float)(int)y←v15568,  *(word*)&tf173
/*1*/                  );
/*1*/               };
/*1*/            {
/*1*/               word pd174;
/*1*/               pd174 = (* (( (ptr) (* (( (ptr) gf←c51900)+254)/* var←c48092 */  ))+10) );
/*1*/               var←c48188 = (word) ( *( (fPt) ((*  (ptr) pd174 ))))(var←c48220, pd174);
/*1*/               };
/*1*/            };
/*1*/         {
/*1*/            word pd175;
/*1*/            pd175 = (* (( (ptr) (* (( (ptr) gf←c51900)+255)/* var←c48124 */  ))+5) );
/*1*/            (void) ( *( (fPt) ((*  (ptr) pd175 ))))(ggData←v8168, var←c48188, pd175);
/*1*/            };
/*1*/         };
/*1*/      };
/*1*/   goto lab←L100008;
/*1*/   lab←L100005: ;
/*1*/   lab←L100008: ;
/*1*/   };
                           }
                        else {
SOURCE(5998, 539)
                           if ((atom←v15380 == (* (( (ptr) gf←c51900)+63) ))) {
SOURCE(6022, 517)
/*1*/   {
/*1*/      W2 originViewer←v15780;
/*1*/      word x←v15808 = 0;
/*1*/      word fx←v15836;
/*1*/      word scalar←v15864;
/*1*/      W4 viewport←v15892;
SOURCE(6079, 56)
/*1*/      {
/*1*/         word pd176;
/*1*/         pd176 = (* (( (ptr) (* (( (ptr) gf←c51900)+256)/* var←c48252 */  ))+7) );
/*1*/         (void) ( *( (fPt) ((*  (ptr) pd176 ))))((word) &viewport←v15892, ggData←v8168, pd176);
/*1*/         };
SOURCE(6137, 73)
/*1*/      {
/*1*/         word x177;
/*1*/         word x178;
/*1*/         word x180;
/*1*/         *(float*)&originViewer←v15780.f0 = (
/*1*/            x177 = viewport←v15892.f0,  *(float*)&x177
/*1*/            ) + ((
/*1*/            x178 = viewport←v15892.f2,  *(float*)&x178
/*1*/            ) / (
/*1*/            x180 = (*  (ptr) &fc179 ),  *(float*)&x180
/*1*/            ));
/*1*/         };
/*1*/      {
/*1*/         word x181;
/*1*/         word x182;
/*1*/         word x183;
/*1*/         *(float*)&originViewer←v15780.f1 = (
/*1*/            x181 = viewport←v15892.f1,  *(float*)&x181
/*1*/            ) + ((
/*1*/            x182 = viewport←v15892.f3,  *(float*)&x182
/*1*/            ) / (
/*1*/            x183 = (*  (ptr) &fc179 ),  *(float*)&x183
/*1*/            ));
/*1*/         };
SOURCE(6213, 85)
/*1*/      if (((* (( (ptr) event←v8140)+1) ) != 0)) {
SOURCE(6240, 58)
/*1*/         {
/*1*/            word var←c48284;
/*1*/            var←c48284 = (*  (ptr) (* (( (ptr) event←v8140)+1) ) );
/*1*/            if ((var←c48284 == 0)) {
/*1*/               goto lab←L100009;
/*1*/               };
/*1*/            if (((* (( (ptr) gf←c51900)+39) ) == XR←GetReferentType(var←c48284))) {
/*1*/               {
/*1*/                  word i←v15936;
/*1*/                  i←v15936 = var←c48284;
SOURCE(6292, 6)
/*1*/                  x←v15808 = (*  (ptr) i←v15936 );
/*1*/                  };
/*1*/               }
/*1*/            else {
/*1*/               lab←L100009: ;
/*1*/               };
/*1*/            };
/*1*/         };
SOURCE(6312, 6)
/*1*/      {
/*1*/         float tf184;
/*1*/         fx←v15836 = (
/*1*/            tf184 = (float)(int)x←v15808,  *(word*)&tf184
/*1*/            );
/*1*/         };
SOURCE(6340, 52)
/*1*/      {
/*1*/         word pd185;
/*1*/         word x186;
/*1*/         word x188;
/*1*/         float tf189;
/*1*/         pd185 = (* (( (ptr) (* (( (ptr) gf←c51900)+257)/* var←c48316 */  ))+7) );
/*1*/         scalar←v15864 = (word) ( *( (fPt) ((*  (ptr) pd185 ))))((*  (ptr) &fc179 ), (
/*1*/               tf189 = (
/*1*/                  x186 = fx←v15836,  *(float*)&x186
/*1*/                  ) / (
/*1*/                  x188 = (*  (ptr) &fc187 ),  *(float*)&x188
/*1*/                  ),  *(word*)&tf189
/*1*/               ), pd185);
/*1*/         };
SOURCE(6450, 87)
/*1*/      {
/*1*/         word var←c48348;
/*1*/         {
/*1*/            word pd190;
/*1*/            pd190 = (* (( (ptr) (* (( (ptr) gf←c51900)+258)/* var←c48380 */  ))+7) );
/*1*/            var←c48348 = (word) ( *( (fPt) ((*  (ptr) pd190 ))))(originViewer←v15780, scalar←v15864, pd190);
/*1*/            };
/*1*/         {
/*1*/            word pd191;
/*1*/            pd191 = (* (( (ptr) (* (( (ptr) gf←c51900)+255)/* var←c48124 */  ))+5) );
/*1*/            (void) ( *( (fPt) ((*  (ptr) pd191 ))))(ggData←v8168, var←c48348, pd191);
/*1*/            };
/*1*/         };
/*1*/      };
/*1*/   };
                           };
                        };
                     };
                  };
               };
            }
         else {
            lab←L100004: ;
SOURCE(6559, 5)
            (void) XR←RaiseUnnamedError();
            };
         };
      };
SOURCE(6566, 30)
   (void) QueueInput←P600(ggData←v8168, event←v8140, 0);
   }

static void QueueInput←P600(ggData←v8380, event←v8408, optimizeHint←v8436)
   word ggData←v8380;
   word event←v8408;
   word optimizeHint←v8436;
   {
   register ptr gf←c51932 =  (ptr) &globalframe;
   word handle←v15992;
   /* QueueInput: */ 
SOURCE(6715, 390)
SOURCE(6806, 40)
   handle←v15992 = (* (( (ptr) ggData←v8380)+48) );
SOURCE(6849, 36)
   {
      word pd192;
      pd192 = (* (( (ptr) (* (( (ptr) gf←c51932)+259)/* var←c48412 */  ))+32) );
      (void) ( *( (fPt) ((*  (ptr) pd192 ))))(ggData←v8380, event←v8408, pd192);
      };
SOURCE(6894, 88)
   if ((0 != (* (( (ptr) gf←c51932)+18)/* timeQueue←v5380 */  ))) {
SOURCE(6912, 70)
      {
         word var←c48444;
         {
            word var←c48476;
            word var←c48508;
            var←c48476 = (word) NowInMilliseconds←P780();
            var←c48508 = XR←NewObject(4, (* (( (ptr) gf←c51932)+38) ));
            (*  (ptr) var←c48508 ) = var←c48476;
            var←c48444 = var←c48508;
            };
         {
            word pd193;
            pd193 = (* (( (ptr) (* (( (ptr) gf←c51932)+260)/* var←c48540 */  ))+14) );
            event←v8408 = (word) ( *( (fPt) ((*  (ptr) pd193 ))))(event←v8408, var←c48444, pd193);
            };
         };
      };
SOURCE(7034, 71)
   {
      word pd194;
      pd194 = (* (( (ptr) (* (( (ptr) gf←c51932)+261)/* var←c48572 */  ))+7) );
      (void) ( *( (fPt) ((*  (ptr) pd194 ))))(handle←v15992, (word) (( (bPt) gf←c51932)+852)/* var←c46556 */ , event←v8408, ggData←v8380, optimizeHint←v8436,  (word) -1, pd194)
      ;
      };
   }

static word GetAnyArguments←P660(event←v8604, regEvent←v8632, ggData←v8660)
   word event←v8604;
   word regEvent←v8632;
   word ggData←v8660;
   {
   register ptr gf←c51964 =  (ptr) &globalframe;
   word newEvent←v8800;
   word atom←v16036;
   /* GetAnyArguments: */ 
SOURCE(7111, 549)
SOURCE(7111, 549)
   newEvent←v8800 = 0;
SOURCE(7241, 32)
   atom←v16036 = XR←Narrow((*  (ptr) event←v8604 ), (* (( (ptr) gf←c51964)+26) ));
SOURCE(7275, 385)
   {
      word var←c48604;
      var←c48604 = (* (( (ptr) regEvent←v8632)+1) );
      switch (var←c48604) {
         case 0: 
SOURCE(7312, 16)
            newEvent←v8800 = event←v8604;
            break;
         case 1: 
SOURCE(7338, 44)
            newEvent←v8800 = (word) CheckForSelectedRope←P1080(atom←v16036, event←v8604);
            break;
         case 2: 
SOURCE(7393, 45)
            newEvent←v8800 = (word) CheckForSelectedRope2←P1140(atom←v16036, event←v8604);
            break;
         case 4: 
SOURCE(7451, 44)
            newEvent←v8800 = (word) CheckForSelectedReal←P1200(atom←v16036, event←v8604);
            break;
         case 3: 
SOURCE(7507, 43)
            newEvent←v8800 = (word) CheckForSelectedInt←P1320(atom←v16036, event←v8604);
            break;
         case 5: 
SOURCE(7563, 44)
            newEvent←v8800 = (word) CheckForSelectedCard←P1260(atom←v16036, event←v8604);
            break;
         case 6: 
SOURCE(7619, 41)
            newEvent←v8800 = (word) CheckForActualExt←P1380(atom←v16036, event←v8604);
            break;
         default: 
SOURCE(7673, 5)
            (void) XR←RaiseUnnamedError();
            break;
         };
      };
SOURCE(7111, 549)
   return(newEvent←v8800);
   }

static void RegisterRawInputHandler←P720(rawInputHandler←v8956)
   word rawInputHandler←v8956;
   {
   register ptr gf←c51996 =  (ptr) &globalframe;
   /* RegisterRawInputHandler: */ 
SOURCE(7684, 114)
SOURCE(7764, 34)
   (* (( (ptr) gf←c51996)+15)/* gRawInputHandler←v5156 */  ) = XR←CheckProc(rawInputHandler←v8956);
   }

static word NowInMilliseconds←P780()
   {
   register ptr gf←c52028 =  (ptr) &globalframe;
   word var←c9016;
   /* NowInMilliseconds: */ 
SOURCE(7804, 122)
SOURCE(7849, 77)
   {
      word var←c0504;
      {
         word var←c48668;
         {
            word pd195;
            pd195 = (* (( (ptr) (* (( (ptr) gf←c52028)+262)/* var←c48700 */  ))+7) );
            var←c48668 = (word) ( *( (fPt) ((*  (ptr) pd195 ))))(pd195);
            };
         {
            word pd196;
            pd196 = (* (( (ptr) (* (( (ptr) gf←c52028)+262)/* var←c48700 */  ))+8) );
            var←c0504 = ((word) ((word) ( *( (fPt) ((*  (ptr) pd196 ))))(var←c48668, pd196) + 500) / 1000);
            };
         };
      return(var←c0504);
      };
   }

static void PrintUserTrace←P840(ggData←v9076, eventProc←v9104, event←v9132)
   word ggData←v9076;
   word eventProc←v9104;
   word event←v9132;
   {
   register ptr gf←c52060 =  (ptr) &globalframe;
   word procName←v16080;
   word moduleName←v16108;
   word thisArgName←v16136 = 0;
   word allArgs←v16164 = 0;
   /* PrintUserTrace: */ 
SOURCE(7932, 573)
SOURCE(8053, 25)
   procName←v16080 = (* (( (ptr) gf←c52060)+65) );
SOURCE(8080, 27)
   moduleName←v16108 = (* (( (ptr) gf←c52060)+65) );
SOURCE(8153, 214)
   {
      register word list←v16208;
      list←v16208 = event←v9132;
      lab←L100013: ;
      if ((list←v16208 != 0)) {
         }
      else {
         goto lab←L100010;
         };
SOURCE(8218, 52)
      {
         W2 var←c48732;
         var←c48732.f0 = 10;
         var←c48732.f1 = (*  (ptr) list←v16208 );
         {
            word pd197;
            pd197 = (* (( (ptr) (* (( (ptr) gf←c52060)+263)/* var←c48764 */  ))+63) );
            thisArgName←v16136 = (word) ( *( (fPt) ((*  (ptr) pd197 ))))((* (( (ptr) gf←c52060)+66) ), var←c48732, pd197);
            };
         };
SOURCE(8272, 95)
      if ((allArgs←v16164 == 0)) {
SOURCE(8294, 27)
         allArgs←v16164 = thisArgName←v16136;
         }
      else {
SOURCE(8321, 46)
         {
            word pd198;
            pd198 = (* (( (ptr) (* (( (ptr) gf←c52060)+253)/* var←c47932 */  ))+5) );
            allArgs←v16164 = (word) ( *( (fPt) ((*  (ptr) pd198 ))))(allArgs←v16164, (* (( (ptr) gf←c52060)+67) ), thisArgName←v16136, 0, 0, pd198)
            ;
            };
         };
      list←v16208 = (* (( (ptr) list←v16208)+1) );
      goto lab←L100013;
      lab←L100010: ;
      };
SOURCE(8378, 127)
   {
      word var←c48796;
      {
         word var←c48828;
         word var←c48860;
         var←c48828 = XR←NewObject(12, (* (( (ptr) gf←c52060)+37) ));
         var←c48860 = var←c48828;
         (*  (ptr) var←c48860 ) = 11;
         (* (( (ptr) var←c48860)+1) ) = moduleName←v16108;
         (* (( (ptr) var←c48860)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c52060)+37) ));
         var←c48860 = (* (( (ptr) var←c48860)+2) );
         (*  (ptr) var←c48860 ) = 11;
         (* (( (ptr) var←c48860)+1) ) = procName←v16080;
         (* (( (ptr) var←c48860)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c52060)+37) ));
         var←c48860 = (* (( (ptr) var←c48860)+2) );
         (*  (ptr) var←c48860 ) = 11;
         (* (( (ptr) var←c48860)+1) ) = allArgs←v16164;
         var←c48796 = var←c48828;
         };
      {
         word pd199;
         pd199 = (* (( (ptr) (* (( (ptr) gf←c52060)+245)/* var←c47068 */  ))+13) );
         (void) ( *( (fPt) ((*  (ptr) pd199 ))))((* (( (ptr) ggData←v9076)+3) ), 0, (* (( (ptr) gf←c52060)+68) ), (* (( (ptr) gf←c52060)+69)
             ), var←c48796, pd199);
         };
      };
   }

static void Dispatch←P900(clientData←v9288, inputAction←v9316)
   word clientData←v9288;
   word inputAction←v9316;
   {
   W7 var←c52092;
   register ptr gf←c52124 =  (ptr) &globalframe;
   /* declaration of var←c48892 skipped */ 
   /* declaration of ggData←v16348 skipped */ 
   word atom←v16376 = 0;
   word startTime←v16404;
   word endTime←v16432;
   word startTimeRef←v16460 = 0;
   word regEvent←v16488 = 0;
   word event←v16516;
   /* Dispatch: */ 
SOURCE(8511, 2561)
   {
      word tmpAddr200;
      tmpAddr200 = (word) (( (ptr) &var←c52092)+4)/* var←c48892 */ ;
      (*  (ptr) tmpAddr200 ) = ( ((word)  (fPt) UpdateCoords←P4020) );
      (* (( (ptr) tmpAddr200) + 1) ) = 1;
      };
SOURCE(8570, 35)
   var←c52092.f6/* ggData←v16348 */  = XR←Narrow(clientData←v9288, (* (( (ptr) gf←c52124)+30) ));
SOURCE(8693, 7)
   event←v16516 = XR←Narrow(inputAction←v9316, (* (( (ptr) gf←c52124)+23) ));
SOURCE(9511, 27)
   event←v16516 = (word) UpdateCoords←P4020(event←v16516, (word) (( (bPt) &var←c52092)+16)/* var←c48892 */ );
SOURCE(9577, 299)
   if ((0 != (* (( (ptr) gf←c52124)+18)/* timeQueue←v5380 */  ))) {
SOURCE(9597, 41)
      {
         word pd201;
         pd201 = (* (( (ptr) (* (( (ptr) gf←c52124)+260)/* var←c48540 */  ))+19) );
         startTimeRef←v16460 = (word) ( *( (fPt) ((*  (ptr) pd201 ))))(event←v16516,  (word) -1, pd201);
         };
SOURCE(9640, 236)
      {
         word var←c48924;
         var←c48924 = startTimeRef←v16460;
         if ((var←c48924 == 0)) {
            goto lab←L100014;
            };
         if (((* (( (ptr) gf←c52124)+38) ) == XR←GetReferentType(var←c48924))) {
            {
               word timeStamp←v16992;
               timeStamp←v16992 = var←c48924;
SOURCE(9696, 31)
               startTime←v16404 = (*  (ptr) timeStamp←v16992 );
SOURCE(9729, 41)
               {
                  word pd202;
                  pd202 = (* (( (ptr) (* (( (ptr) gf←c52124)+260)/* var←c48540 */  ))+15) );
                  event←v16516 = (word) ( *( (fPt) ((*  (ptr) pd202 ))))(startTimeRef←v16460, event←v16516, pd202);
                  };
SOURCE(9772, 29)
               endTime←v16432 = (word) NowInMilliseconds←P780();
SOURCE(9803, 73)
               {
                  word pd203;
                  pd203 = (* (( (ptr) (* (( (ptr) gf←c52124)+264)/* var←c48956 */  ))+15) );
                  (void) ( *( (fPt) ((*  (ptr) pd203 ))))((* (( (ptr) gf←c52124)+73) ), startTime←v16404, endTime←v16432, (* (( (ptr) gf←c52124)+74)
                      ), pd203);
                  };
               };
            }
         else {
            lab←L100014: ;
            };
         };
      };
SOURCE(9894, 26)
   atom←v16376 = XR←Narrow((*  (ptr) event←v16516 ), (* (( (ptr) gf←c52124)+26) ));
SOURCE(9922, 28)
   regEvent←v16488 = (word) FetchAction←P1500(atom←v16376);
SOURCE(9952, 1120)
   if ((regEvent←v16488 == 0)) {
SOURCE(9973, 44)
      (void) NotYetImplementedMessage←P1020(atom←v16376, var←c52092.f6/* ggData←v16348 */ );
      }
   else {
SOURCE(10019, 1053)
      if (((*  (ptr) event←v16516 ) == (* (( (ptr) gf←c52124)+75) ))) {
SOURCE(10048, 384)
         {
            word pd204;
            pd204 = (* (( (ptr) (* (( (ptr) gf←c52124)+265)/* var←c48988 */  ))+7) );
            if ((0 == (word) ( *( (fPt) ((*  (ptr) pd204 ))))((* ((( (ptr) var←c52092.f6/* ggData←v16348 */ )+7)) ), pd204))) {
SOURCE(10100, 332)
               {
                  register word list←v17036;
                  list←v17036 = (*  (ptr) (* (( (ptr) var←c52092.f6/* ggData←v16348 */ )+7) ) );
                  lab←L100018: ;
                  if ((list←v17036 != 0)) {
                     }
                  else {
                     goto lab←L100015;
                     };
                  {
                     word thisEvent←v17164;
                     word thisAtom←v17192;
                     word thisRegEvent←v17220;
SOURCE(10180, 11)
                     thisEvent←v17164 = (*  (ptr) list←v17036 );
SOURCE(10221, 40)
                     thisAtom←v17192 = XR←Narrow((*  (ptr) thisEvent←v17164 ), (* (( (ptr) gf←c52124)+26) ));
SOURCE(10263, 53)
                     thisRegEvent←v17220 = (word) FetchAction←P1500(thisAtom←v17192);
SOURCE(10318, 114)
                     if ((thisRegEvent←v17220 == 0)) {
SOURCE(10343, 48)
                        (void) NotYetImplementedMessage←P1020(thisAtom←v17192, var←c52092.f6/* ggData←v16348 */ );
                        }
                     else {
SOURCE(10391, 41)
                        {
                           word pd205;
                           pd205 = (*  (ptr) thisRegEvent←v17220 );
                           (void) ( *( (fPt) ((*  (ptr) pd205 ))))(var←c52092.f6/* ggData←v16348 */ , thisEvent←v17164, pd205);
                           };
                        };
                     };
                  list←v17036 = (* (( (ptr) list←v17036)+1) );
                  goto lab←L100018;
                  lab←L100015: ;
                  };
               };
            };
         }
      else {
SOURCE(10495, 433)
         {
            word var←c49020;
            var←c49020 = (word) GetEventClass←P960(atom←v16376);
            switch (var←c49020) {
               case 0: 
SOURCE(10537, 27)
                  (* (( (ptr) var←c52092.f6/* ggData←v16348 */ )+8) ) = 1;
                  break;
               case 2: 
SOURCE(10578, 105)
                  if ((0 != (* (( (ptr) var←c52092.f6/* ggData←v16348 */ )+8) ))) {
SOURCE(10609, 44)
                     {
                        word pd206;
                        pd206 = (* (( (ptr) (* (( (ptr) gf←c52124)+265)/* var←c48988 */  ))+5) );
                        (void) ( *( (fPt) ((*  (ptr) pd206 ))))((* ((( (ptr) var←c52092.f6/* ggData←v16348 */ )+7)) ), pd206);
                        };
SOURCE(10655, 28)
                     (* (( (ptr) var←c52092.f6/* ggData←v16348 */ )+8) ) = 0;
                     };
SOURCE(10688, 47)
                  {
                     word pd207;
                     pd207 = (* (( (ptr) (* (( (ptr) gf←c52124)+265)/* var←c48988 */  ))+6) );
                     (void) ( *( (fPt) ((*  (ptr) pd207 ))))(event←v16516, (* (( (ptr) var←c52092.f6/* ggData←v16348 */ )+7) ), pd207);
                     };
                  break;
               case 3: 
                  break;
               case 1: 
SOURCE(10793, 135)
                  if ((0 != (* (( (ptr) var←c52092.f6/* ggData←v16348 */ )+8) ))) {
                     }
                  else {
SOURCE(10881, 47)
                     {
                        word pd208;
                        pd208 = (* (( (ptr) (* (( (ptr) gf←c52124)+265)/* var←c48988 */  ))+6) );
                        (void) ( *( (fPt) ((*  (ptr) pd208 ))))(event←v16516, (* (( (ptr) var←c52092.f6/* ggData←v16348 */ )+7) ), pd208);
                        };
                     };
                  break;
               default: 
SOURCE(10944, 5)
                  (void) XR←RaiseUnnamedError();
                  break;
               };
            };
SOURCE(10951, 86)
         {
            word pd209;
            pd209 = (* (( (ptr) (* (( (ptr) gf←c52124)+266)/* var←c49052 */  ))+15) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd209 ))))(pd209))) {
SOURCE(10988, 49)
               (void) PrintUserTrace←P840(var←c52092.f6/* ggData←v16348 */ , (*  (ptr) regEvent←v16488 ), event←v16516);
               };
            };
SOURCE(11039, 33)
         {
            word pd210;
            pd210 = (*  (ptr) regEvent←v16488 );
            (void) ( *( (fPt) ((*  (ptr) pd210 ))))(var←c52092.f6/* ggData←v16348 */ , event←v16516, pd210);
            };
         };
      };
   }

static word UpdateCoords←P4020(input←v16728, formal←c52188)
   word input←v16728;
   word formal←c52188;
   {
   register ptr gf←c52156 =  (ptr) &globalframe;
   word o←v16868;
   register word i←v17360 = 0;
   word l←v17388 = 0;
   word viewerToClient←v17416;
   W2 var←c0246;
   formal←c52188 = (formal←c52188 - 16);
   /* UpdateCoords: */ 
SOURCE(8736, 748)
SOURCE(8736, 748)
   o←v16868 = 0;
SOURCE(8824, 88)
   {
      word pd211;
      pd211 = (* (( (ptr) (* (( (ptr) gf←c52156)+256)/* var←c48252 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd211 ))))((word) &var←c0246, (* (( (ptr) formal←c52188)+6) ), pd211);
      };
   viewerToClient←v17416 = var←c0246.f1;
SOURCE(8914, 104)
   if (((*  (ptr) input←v16728 ) == (* (( (ptr) gf←c52156)+76) )) ||  ( ((* (( (ptr) input←v16728)+1) ) != 0) ? ((*  (ptr) (* (
      ( (ptr) input←v16728)+1) ) ) == (* (( (ptr) gf←c52156)+76) )) : 0 ) ) {
SOURCE(9005, 13)
      return(input←v16728);
      };
SOURCE(9085, 399)
   i←v17360 = input←v16728;
   lab←L100022: ;
   if ((i←v17360 != 0)) {
      }
   else {
      goto lab←L100019;
      };
SOURCE(9124, 75)
   if ((l←v17388 == 0)) {
      {
         word var←c49084;
         var←c49084 = XR←NewObject(8, (* (( (ptr) gf←c52156)+23) ));
         (*  (ptr) var←c49084 ) = (*  (ptr) i←v17360 );
         o←v16868 = var←c49084;
         };
      l←v17388 = o←v16868;
      }
   else {
      {
         word var←c49148;
         {
            word var←c49116;
            var←c49116 = XR←NewObject(8, (* (( (ptr) gf←c52156)+23) ));
            (*  (ptr) var←c49116 ) = (*  (ptr) i←v17360 );
            var←c49148 = var←c49116;
            };
         (* (( (ptr) l←v17388)+1) ) = var←c49148;
         l←v17388 = var←c49148;
         };
      };
SOURCE(9201, 283)
   {
      word var←c49180;
      word var←c49212;
      var←c49180 = (*  (ptr) l←v17388 );
      if ((var←c49180 == 0)) {
         goto lab←L100023;
         };
      var←c49212 = XR←GetReferentType(var←c49180);
      if (((* (( (ptr) gf←c52156)+34) ) == var←c49212)) {
         {
            word z←v17556;
            z←v17556 = var←c49180;
SOURCE(9258, 76)
            {
               word var←c49244;
               {
                  W2 var←c49276;
                  word var←c49340;
                  {
                     W2 var←c0256;
                     {
                        W2 var←c49308;
                        {
                           float tf213;
                           var←c49308.f0 = (
/*1*/   tf213 = (float)(int)(*  (ptr) z←v17556 ),  *(word*)&tf213
/*1*/   );
                           };
                        {
                           float tf214;
                           var←c49308.f1 = (
/*1*/   tf214 = (float)(int)(* (( (ptr) z←v17556)+1) ),  *(word*)&tf214
/*1*/   );
                           };
                        {
                           word pd215;
                           pd215 = (* (( (ptr) (* (( (ptr) gf←c52156)+254)/* var←c48092 */  ))+39) );
                           (void) ( *( (fPt) ((*  (ptr) pd215 ))))((word) &var←c0256, viewerToClient←v17416, var←c49308, pd215);
                           };
                        };
                     var←c49276 = var←c0256;
                     };
                  var←c49340 = XR←NewObject(8, (* (( (ptr) gf←c52156)+44) ));
                  (*  (W2Pt) var←c49340 ) = var←c49276;
                  var←c49244 = var←c49340;
                  };
               (*  (ptr) l←v17388 ) = var←c49244;
               };
            };
         goto endif0212;
         };
      if (((* (( (ptr) gf←c52156)+44) ) == var←c49212)) {
         {
            word v←v17600;
            v←v17600 = var←c49180;
SOURCE(9363, 58)
            {
               word var←c49372;
               {
                  W2 var←c49404;
                  word var←c49436;
                  {
                     word pd216;
                     pd216 = (* (( (ptr) (* (( (ptr) gf←c52156)+254)/* var←c48092 */  ))+39) );
                     (void) ( *( (fPt) ((*  (ptr) pd216 ))))((word) &var←c49404, viewerToClient←v17416, (*  (W2Pt) v←v17600 ), pd216);
                     };
                  var←c49436 = XR←NewObject(8, (* (( (ptr) gf←c52156)+44) ));
                  (*  (W2Pt) var←c49436 ) = var←c49404;
                  var←c49372 = var←c49436;
                  };
               (*  (ptr) l←v17388 ) = var←c49372;
               };
            };
         goto endif0212;
         };
      if (((* (( (ptr) gf←c52156)+43) ) == var←c49212)) {
         {
            word z←v17656;
            z←v17656 = var←c49180;
SOURCE(9443, 41)
            {
               word var←c49468;
               var←c49468 = XR←NewObject(8, (* (( (ptr) gf←c52156)+44) ));
               (*  (ptr) var←c49468 ) = (*  (ptr) z←v17656 );
               (* (( (ptr) var←c49468)+1) ) = (* (( (ptr) z←v17656)+1) );
               (*  (ptr) l←v17388 ) = var←c49468;
               };
            };
         goto endif0212;
         };
      lab←L100023: ;
      goto endif0212;
      endif0212: ;
      };
   i←v17360 = (* (( (ptr) i←v17360)+1) );
   goto lab←L100022;
   lab←L100019: ;
SOURCE(8736, 748)
   return(o←v16868);
   }

static word GetEventClass←P960(atom←v9528)
   word atom←v9528;
   {
   register ptr gf←c52220 =  (ptr) &globalframe;
   word eventClass←v9572;
   /* GetEventClass: */ 
SOURCE(11140, 1276)
SOURCE(11210, 149)
   if ((((((atom←v9528 == (* (( (ptr) gf←c52220)+78) )) || (atom←v9528 == (* (( (ptr) gf←c52220)+79) ))) || (atom←v9528 == (* (
      ( (ptr) gf←c52220)+80) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+81) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+120)
    ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+119) ))) {
SOURCE(11343, 16)
      return(1);
      };
SOURCE(11361, 700)
   if ((((((((((((((((((((((atom←v9528 == (* (( (ptr) gf←c52220)+82) )) || (atom←v9528 == (* (( (ptr) gf←c52220)+83) ))) || (atom←v9528 == (* (
      ( (ptr) gf←c52220)+84) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+85) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+86) ))) || (atom←v9528 == (* (
      ( (ptr) gf←c52220)+87) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+88) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+89) ))) || (atom←v9528 == (* (
      ( (ptr) gf←c52220)+90) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+91) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+92) ))) || (atom←v9528 == (* (
      ( (ptr) gf←c52220)+93) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+94) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+95) ))) || (atom←v9528 == (* (
      ( (ptr) gf←c52220)+96) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+97) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+98) ))) || (atom←v9528 == (* (
      ( (ptr) gf←c52220)+99) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+100) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+101)
    ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+102) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+103) ))) {
SOURCE(12046, 15)
      return(0);
      };
SOURCE(12063, 235)
   if (((((((((atom←v9528 == (* (( (ptr) gf←c52220)+104) )) || (atom←v9528 == (* (( (ptr) gf←c52220)+105) ))) || (atom←v9528 == (* (
      ( (ptr) gf←c52220)+106) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+107) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+108)
    ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+109) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+110) ))) || (atom←v9528 == (* (
      ( (ptr) gf←c52220)+111) ))) || (atom←v9528 == (* (( (ptr) gf←c52220)+112) ))) {
SOURCE(12283, 15)
      return(2);
      };
SOURCE(12300, 66)
   if ((atom←v9528 == (* (( (ptr) gf←c52220)+63) )) || (atom←v9528 == (* (( (ptr) gf←c52220)+61) ))) {
SOURCE(12349, 17)
      return(3);
      };
SOURCE(12401, 15)
   return(2);
   }

static void NotYetImplementedMessage←P1020(atom←v9632, ggData←v9660)
   word atom←v9632;
   word ggData←v9660;
   {
   register ptr gf←c52252 =  (ptr) &globalframe;
   /* NotYetImplementedMessage: */ 
SOURCE(12422, 271)
SOURCE(12486, 62)
   {
      word pd217;
      pd217 = (* (( (ptr) (* (( (ptr) gf←c52252)+245)/* var←c47068 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd217 ))))((* (( (ptr) ggData←v9660)+3) ), 1, (* (( (ptr) gf←c52252)+113) ), (* (( (ptr) gf←c52252)+114)
          ), pd217);
      };
SOURCE(12550, 69)
   {
      word var←c49500;
      {
         word pd218;
         pd218 = (* (( (ptr) (* (( (ptr) gf←c52252)+252)/* var←c47868 */  ))+9) );
         var←c49500 = (word) ( *( (fPt) ((*  (ptr) pd218 ))))(atom←v9632, pd218);
         };
      {
         word pd219;
         pd219 = (* (( (ptr) (* (( (ptr) gf←c52252)+245)/* var←c47068 */  ))+12) );
         (void) ( *( (fPt) ((*  (ptr) pd219 ))))((* (( (ptr) ggData←v9660)+3) ), 2, (* (( (ptr) gf←c52252)+113) ), var←c49500, pd219)
         ;
         };
      };
SOURCE(12621, 72)
   {
      word pd220;
      pd220 = (* (( (ptr) (* (( (ptr) gf←c52252)+245)/* var←c47068 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd220 ))))((* (( (ptr) ggData←v9660)+3) ), 3, (* (( (ptr) gf←c52252)+113) ), (* (( (ptr) gf←c52252)+115)
          ), pd220);
      };
   }

static word CheckForSelectedRope←P1080(atom←v9720, event←v9748)
   word atom←v9720;
   word event←v9748;
   {
   register ptr gf←c52284 =  (ptr) &globalframe;
   word newAction←v9888;
   word var←c49628;
   /* CheckForSelectedRope: */ 
SOURCE(12699, 415)
SOURCE(12699, 415)
   newAction←v9888 = 0;
SOURCE(12804, 310)
   if (((* (( (ptr) event←v9748)+1) ) == 0)) {
SOURCE(12829, 100)
      {
         word r←v17712;
SOURCE(12851, 49)
         {
            word pd221;
            pd221 = (* (( (ptr) (* (( (ptr) gf←c52284)+267)/* var←c49532 */  ))+4) );
            r←v17712 = (word) ( *( (fPt) ((*  (ptr) pd221 ))))(pd221);
            };
SOURCE(12902, 25)
         {
            word var←c49564;
            word var←c49596;
            var←c49564 = XR←NewObject(8, (* (( (ptr) gf←c52284)+23) ));
            var←c49596 = var←c49564;
            (*  (ptr) var←c49596 ) = atom←v9720;
            (* (( (ptr) var←c49596)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c52284)+23) ));
            var←c49596 = (* (( (ptr) var←c49596)+1) );
            (*  (ptr) var←c49596 ) = r←v17712;
            newAction←v9888 = var←c49564;
            };
         };
      }
   else {
SOURCE(12936, 178)
      var←c49628 = (*  (ptr) (* (( (ptr) event←v9748)+1) ) );
      if ( ( (var←c49628 == 0) ? 1 : ((* (( (ptr) gf←c52284)+33) ) == XR←GetReferentType(var←c49628)) ) ) {
SOURCE(12999, 89)
         {
            word var←c49660;
            word var←c49788;
            {
               word var←c49692;
               word var←c49756;
               {
                  word var←c49724;
                  var←c49724 = XR←Narrow((*  (ptr) (* (( (ptr) event←v9748)+1) ) ), (* (( (ptr) gf←c52284)+33) ));
                  {
                     word pd222;
                     pd222 = (* (( (ptr) (* (( (ptr) gf←c52284)+253)/* var←c47932 */  ))+35) );
                     var←c49692 = (word) ( *( (fPt) ((*  (ptr) pd222 ))))(var←c49724, 0, 32767, pd222);
                     };
                  };
               var←c49756 = XR←NewObject(8, (* (( (ptr) gf←c52284)+23) ));
               (*  (ptr) var←c49756 ) = var←c49692;
               (* (( (ptr) var←c49756)+1) ) = (* (( (ptr) (* (( (ptr) event←v9748)+1) ))+1) );
               var←c49660 = var←c49756;
               };
            var←c49788 = XR←NewObject(8, (* (( (ptr) gf←c52284)+23) ));
            (*  (ptr) var←c49788 ) = atom←v9720;
            (* (( (ptr) var←c49788)+1) ) = var←c49660;
            newAction←v9888 = var←c49788;
            };
         }
      else {
SOURCE(13097, 17)
         newAction←v9888 = event←v9748;
         };
      };
SOURCE(12699, 415)
   return(newAction←v9888);
   }

static word CheckForSelectedRope2←P1140(atom←v10044, event←v10072)
   word atom←v10044;
   word event←v10072;
   {
   register ptr gf←c52316 =  (ptr) &globalframe;
   word newAction←v10212;
   /* CheckForSelectedRope2: */ 
SOURCE(13139, 498)
SOURCE(13139, 498)
   newAction←v10212 = 0;
   {
      word var←c49884;
SOURCE(13245, 25)
      if (((* (( (ptr) event←v10072)+1) ) == 0)) {
SOURCE(13270, 5)
         (void) XR←RaiseUnnamedError();
         };
SOURCE(13277, 360)
      if (((* (( (ptr) (* (( (ptr) event←v10072)+1) ))+1) ) == 0)) {
SOURCE(13307, 118)
         {
            word r←v17768;
SOURCE(13329, 49)
            {
               word pd223;
               pd223 = (* (( (ptr) (* (( (ptr) gf←c52316)+267)/* var←c49532 */  ))+4) );
               r←v17768 = (word) ( *( (fPt) ((*  (ptr) pd223 ))))(pd223);
               };
SOURCE(13380, 43)
            {
               word var←c49820;
               word var←c49852;
               var←c49820 = XR←NewObject(8, (* (( (ptr) gf←c52316)+23) ));
               var←c49852 = var←c49820;
               (*  (ptr) var←c49852 ) = atom←v10044;
               (* (( (ptr) var←c49852)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c52316)+23) ));
               var←c49852 = (* (( (ptr) var←c49852)+1) );
               (*  (ptr) var←c49852 ) = (*  (ptr) (* (( (ptr) event←v10072)+1) ) );
               (* (( (ptr) var←c49852)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c52316)+23) ));
               var←c49852 = (* (( (ptr) var←c49852)+1) );
               (*  (ptr) var←c49852 ) = r←v17768;
               newAction←v10212 = var←c49820;
               };
            };
         }
      else {
SOURCE(13432, 205)
         var←c49884 = (*  (ptr) (* (( (ptr) (* (( (ptr) event←v10072)+1) ))+1) ) );
         if ( ( (var←c49884 == 0) ? 1 : ((* (( (ptr) gf←c52316)+33) ) == XR←GetReferentType(var←c49884)) ) ) {
SOURCE(13500, 111)
            {
               word var←c49916;
               word var←c49948;
               var←c49916 = XR←NewObject(8, (* (( (ptr) gf←c52316)+23) ));
               var←c49948 = var←c49916;
               (*  (ptr) var←c49948 ) = atom←v10044;
               (* (( (ptr) var←c49948)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c52316)+23) ));
               var←c49948 = (* (( (ptr) var←c49948)+1) );
               (*  (ptr) var←c49948 ) = (*  (ptr) (* (( (ptr) event←v10072)+1) ) );
               (* (( (ptr) var←c49948)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c52316)+23) ));
               var←c49948 = (* (( (ptr) var←c49948)+1) );
               {
                  word var←c50012;
                  var←c50012 = XR←Narrow((*  (ptr) (* (( (ptr) (* (( (ptr) event←v10072)+1) ))+1) ) ), (* (( (ptr) gf←c52316)+33) ));
                  {
                     word pd224;
                     pd224 = (* (( (ptr) (* (( (ptr) gf←c52316)+253)/* var←c47932 */  ))+35) );
                     (*  (ptr) var←c49948 ) = (word) ( *( (fPt) ((*  (ptr) pd224 ))))(var←c50012, 0, 32767, pd224);
                     };
                  };
               (* (( (ptr) var←c49948)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c52316)+23) ));
               var←c49948 = (* (( (ptr) var←c49948)+1) );
               (*  (ptr) var←c49948 ) = (* (( (ptr) (* (( (ptr) (* (( (ptr) event←v10072)+1) ))+1) ))+1) );
               newAction←v10212 = var←c49916;
               };
            }
         else {
SOURCE(13620, 17)
            newAction←v10212 = event←v10072;
            };
         };
      };
SOURCE(13139, 498)
   return(newAction←v10212);
   }

static word CheckForSelectedReal←P1200(atom←v10368, event←v10396)
   word atom←v10368;
   word event←v10396;
   {
   W8 var←c52348;
   register ptr gf←c52380 =  (ptr) &globalframe;
   word newAction←v10536;
   /* declaration of rope←v17824 skipped */ 
   /* declaration of real←v17852 skipped */ 
   word var←c50204;
   /* CheckForSelectedReal: */ 
SOURCE(13663, 637)
SOURCE(13663, 637)
   newAction←v10536 = 0;
SOURCE(13768, 15)
   var←c52348.f4/* rope←v17824 */  = 0;
SOURCE(13797, 503)
   if (((* (( (ptr) event←v10396)+1) ) == 0)) {
SOURCE(13844, 41)
      {
         word pd225;
         pd225 = (* (( (ptr) (* (( (ptr) gf←c52380)+267)/* var←c49532 */  ))+4) );
         var←c52348.f4/* rope←v17824 */  = (word) ( *( (fPt) ((*  (ptr) pd225 ))))(pd225);
         };
SOURCE(13887, 78)
SOURCE(13887, 78)
      {
         /* declaration of var←c01 skipped */ 
         var←c52348.f6/* var←c01 */  = (* (( (ptr) (* (( (ptr) gf←c52380)+268)/* var←c50044 */  ))+12) );
         {
            /* declaration of var←c02 skipped */ 
            {
               word var←c03;
               {
                  word var←c0505;
                  var←c0505 = (word) &var←c52348;
                  var←c03 = (word) XR←Enable(( ((word)  (fPt) NoName←Q4776) ), ( ((word)  (fPt) NoName←Q5376) ), var←c0505);
                  };
               if ((var←c03 == 2)) {
                  goto lab←L100025;
                  };
               };
            var←c52348.f5/* real←v17852 */  = var←c52348.f7/* var←c02 */ ;
            };
         };
      lab←L100025: ;
SOURCE(13979, 40)
      {
         word var←c50076;
         word var←c50108;
         var←c50076 = XR←NewObject(8, (* (( (ptr) gf←c52380)+23) ));
         var←c50108 = var←c50076;
         (*  (ptr) var←c50108 ) = atom←v10368;
         (* (( (ptr) var←c50108)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c52380)+23) ));
         var←c50108 = (* (( (ptr) var←c50108)+1) );
         {
            word var←c50172;
            var←c50172 = XR←NewObject(4, (* (( (ptr) gf←c52380)+32) ));
            (*  (ptr) var←c50172 ) = var←c52348.f5/* real←v17852 */ ;
            (*  (ptr) var←c50108 ) = var←c50172;
            };
         newAction←v10536 = var←c50076;
         };
      }
   else {
SOURCE(14028, 272)
      var←c50204 = (*  (ptr) (* (( (ptr) event←v10396)+1) ) );
      if ( ( (var←c50204 == 0) ? 1 : ((* (( (ptr) gf←c52380)+33) ) == XR←GetReferentType(var←c50204)) ) ) {
SOURCE(14091, 49)
         {
            word var←c50236;
            var←c50236 = XR←Narrow((*  (ptr) (* (( (ptr) event←v10396)+1) ) ), (* (( (ptr) gf←c52380)+33) ));
            {
               word pd226;
               pd226 = (* (( (ptr) (* (( (ptr) gf←c52380)+253)/* var←c47932 */  ))+35) );
               var←c52348.f4/* rope←v17824 */  = (word) ( *( (fPt) ((*  (ptr) pd226 ))))(var←c50236, 0, 32767, pd226);
               };
            };
SOURCE(14142, 78)
SOURCE(14142, 78)
         {
            /* declaration of var←c04 skipped */ 
            var←c52348.f6/* var←c04 */  = (* (( (ptr) (* (( (ptr) gf←c52380)+268)/* var←c50044 */  ))+12) );
            {
               /* declaration of var←c05 skipped */ 
               {
                  word var←c06;
                  {
                     word var←c0506;
                     var←c0506 = (word) &var←c52348;
                     var←c06 = (word) XR←Enable(( ((word)  (fPt) NoName←Q4716) ), ( ((word)  (fPt) NoName←Q5316) ), var←c0506);
                     };
                  if ((var←c06 == 3)) {
                     goto lab←L100029;
                     };
                  };
               var←c52348.f5/* real←v17852 */  = var←c52348.f7/* var←c05 */ ;
               };
            };
         lab←L100029: ;
SOURCE(14234, 40)
         {
            word var←c50268;
            word var←c50300;
            var←c50268 = XR←NewObject(8, (* (( (ptr) gf←c52380)+23) ));
            var←c50300 = var←c50268;
            (*  (ptr) var←c50300 ) = atom←v10368;
            (* (( (ptr) var←c50300)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c52380)+23) ));
            var←c50300 = (* (( (ptr) var←c50300)+1) );
            {
               word var←c50364;
               var←c50364 = XR←NewObject(4, (* (( (ptr) gf←c52380)+32) ));
               (*  (ptr) var←c50364 ) = var←c52348.f5/* real←v17852 */ ;
               (*  (ptr) var←c50300 ) = var←c50364;
               };
            newAction←v10536 = var←c50268;
            };
         }
      else {
SOURCE(14283, 17)
         newAction←v10536 = event←v10396;
         };
      };
SOURCE(13663, 637)
   return(newAction←v10536);
   }

static word NoName←Q4716(formal←c0460)
   word formal←c0460;
   {
SOURCE(14142, 78)
   {
      word pd227;
      pd227 = (* (( (ptr) formal←c0460)+6) );
      (* (( (ptr) formal←c0460)+7) ) = (word) ( *( (fPt) ((*  (ptr) pd227 ))))((* ((( (ptr) formal←c0460)+4)) ), pd227);
      };
   return(0);
   }

static word NoName←Q4776(formal←c0461)
   word formal←c0461;
   {
SOURCE(13887, 78)
   {
      word pd228;
      pd228 = (* (( (ptr) formal←c0461)+6) );
      (* (( (ptr) formal←c0461)+7) ) = (word) ( *( (fPt) ((*  (ptr) pd228 ))))((* ((( (ptr) formal←c0461)+4)) ), pd228);
      };
   return(0);
   }

static word CheckForSelectedCard←P1260(atom←v10692, event←v10720)
   word atom←v10692;
   word event←v10720;
   {
   W8 var←c52412;
   register ptr gf←c52444 =  (ptr) &globalframe;
   word newAction←v10860;
   word rope←v17908 = 0;
   /* declaration of card←v17936 skipped */ 
   word var←c50556;
   /* CheckForSelectedCard: */ 
SOURCE(14325, 465)
SOURCE(14325, 465)
   newAction←v10860 = 0;
SOURCE(14459, 331)
   if (((* (( (ptr) event←v10720)+1) ) == 0)) {
SOURCE(14506, 41)
      {
         word pd229;
         pd229 = (* (( (ptr) (* (( (ptr) gf←c52444)+267)/* var←c49532 */  ))+4) );
         rope←v17908 = (word) ( *( (fPt) ((*  (ptr) pd229 ))))(pd229);
         };
SOURCE(14549, 79)
SOURCE(14549, 79)
      {
         /* declaration of var←c50396 skipped */ 
         {
            word pd230;
            pd230 = (* (( (ptr) (* (( (ptr) gf←c52444)+263)/* var←c48764 */  ))+33) );
            var←c52412.f5/* var←c50396 */  = (word) ( *( (fPt) ((*  (ptr) pd230 ))))(rope←v17908, 0, pd230);
            };
         {
            /* declaration of var←c07 skipped */ 
            var←c52412.f6/* var←c07 */  = (* (( (ptr) (* (( (ptr) gf←c52444)+263)/* var←c48764 */  ))+73) );
            {
               /* declaration of var←c08 skipped */ 
               {
                  word var←c09;
                  {
                     word var←c0507;
                     var←c0507 = (word) &var←c52412;
                     var←c09 = (word) XR←Enable(( ((word)  (fPt) NoName←Q4836) ), ( ((word)  (fPt) NoName←Q5256) ), var←c0507);
                     };
                  if ((var←c09 == 4)) {
                     goto lab←L100033;
                     };
                  };
               var←c52412.f4/* card←v17936 */  = var←c52412.f7/* var←c08 */ ;
               };
            };
         };
      lab←L100033: ;
SOURCE(14642, 40)
      {
         word var←c50428;
         word var←c50460;
         var←c50428 = XR←NewObject(8, (* (( (ptr) gf←c52444)+23) ));
         var←c50460 = var←c50428;
         (*  (ptr) var←c50460 ) = atom←v10692;
         (* (( (ptr) var←c50460)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c52444)+23) ));
         var←c50460 = (* (( (ptr) var←c50460)+1) );
         {
            word var←c50524;
            var←c50524 = XR←NewObject(4, (* (( (ptr) gf←c52444)+31) ));
            (*  (ptr) var←c50524 ) = var←c52412.f4/* card←v17936 */ ;
            (*  (ptr) var←c50460 ) = var←c50524;
            };
         newAction←v10860 = var←c50428;
         };
      }
   else {
SOURCE(14691, 99)
      var←c50556 = (*  (ptr) (* (( (ptr) event←v10720)+1) ) );
      if ( ( (var←c50556 == 0) ? 1 : ((* (( (ptr) gf←c52444)+31) ) == XR←GetReferentType(var←c50556)) ) ) {
SOURCE(14773, 17)
         newAction←v10860 = event←v10720;
         }
      else {
SOURCE(14799, 5)
         (void) XR←RaiseUnnamedError();
         };
      };
SOURCE(14325, 465)
   return(newAction←v10860);
   }

static word NoName←Q4836(formal←c0463)
   word formal←c0463;
   {
SOURCE(14549, 79)
   {
      word pd231;
      pd231 = (* (( (ptr) formal←c0463)+6) );
      (* (( (ptr) formal←c0463)+7) ) = (word) ( *( (fPt) ((*  (ptr) pd231 ))))((* ((( (ptr) formal←c0463)+5)) ), pd231);
      };
   return(0);
   }

static word CheckForSelectedInt←P1320(atom←v11016, event←v11044)
   word atom←v11016;
   word event←v11044;
   {
   W8 var←c52476;
   register ptr gf←c52508 =  (ptr) &globalframe;
   word newAction←v11184;
   word rope←v17992 = 0;
   /* declaration of int←v18020 skipped */ 
   /* CheckForSelectedInt: */ 
SOURCE(14810, 554)
SOURCE(14810, 554)
   newAction←v11184 = 0;
SOURCE(14941, 423)
   if (((* (( (ptr) event←v11044)+1) ) == 0)) {
SOURCE(14988, 41)
      {
         word pd232;
         pd232 = (* (( (ptr) (* (( (ptr) gf←c52508)+267)/* var←c49532 */  ))+4) );
         rope←v17992 = (word) ( *( (fPt) ((*  (ptr) pd232 ))))(pd232);
         };
SOURCE(15031, 75)
SOURCE(15031, 75)
      {
         /* declaration of var←c50588 skipped */ 
         {
            word pd233;
            pd233 = (* (( (ptr) (* (( (ptr) gf←c52508)+263)/* var←c48764 */  ))+33) );
            var←c52476.f5/* var←c50588 */  = (word) ( *( (fPt) ((*  (ptr) pd233 ))))(rope←v17992, 0, pd233);
            };
         {
            /* declaration of var←c010 skipped */ 
            var←c52476.f6/* var←c010 */  = (* (( (ptr) (* (( (ptr) gf←c52508)+263)/* var←c48764 */  ))+72) );
            {
               /* declaration of var←c011 skipped */ 
               {
                  word var←c012;
                  {
                     word var←c0508;
                     var←c0508 = (word) &var←c52476;
                     var←c012 = (word) XR←Enable(( ((word)  (fPt) NoName←Q4896) ), ( ((word)  (fPt) NoName←Q5196) ), var←c0508);
                     };
                  if ((var←c012 == 5)) {
                     goto lab←L100037;
                     };
                  };
               var←c52476.f4/* int←v18020 */  = var←c52476.f7/* var←c011 */ ;
               };
            };
         };
      lab←L100037: ;
SOURCE(15120, 38)
      {
         word var←c50620;
         word var←c50652;
         var←c50620 = XR←NewObject(8, (* (( (ptr) gf←c52508)+23) ));
         var←c50652 = var←c50620;
         (*  (ptr) var←c50652 ) = atom←v11016;
         (* (( (ptr) var←c50652)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c52508)+23) ));
         var←c50652 = (* (( (ptr) var←c50652)+1) );
         {
            word var←c50716;
            var←c50716 = XR←NewObject(4, (* (( (ptr) gf←c52508)+39) ));
            (*  (ptr) var←c50716 ) = var←c52476.f4/* int←v18020 */ ;
            (*  (ptr) var←c50652 ) = var←c50716;
            };
         newAction←v11184 = var←c50620;
         };
      }
   else {
SOURCE(15170, 194)
      {
         word var←c50748;
         word var←c50780;
         var←c50748 = (*  (ptr) (* (( (ptr) event←v11044)+1) ) );
         if ((var←c50748 == 0)) {
            goto lab←L100040;
            };
         var←c50780 = XR←GetReferentType(var←c50748);
         if (((* (( (ptr) gf←c52508)+39) ) == var←c50780)) {
            {
               word int←v18064;
               int←v18064 = var←c50748;
SOURCE(15220, 17)
               newAction←v11184 = event←v11044;
               };
            }
         else {
            if (((* (( (ptr) gf←c52508)+31) ) == var←c50780)) {
               {
                  word card←v18120;
                  card←v18120 = var←c50748;
SOURCE(15294, 70)
                  {
                     word var←c50812;
                     {
                        word var←c50844;
                        word var←c50876;
                        var←c50844 = XR←NewObject(8, (* (( (ptr) gf←c52508)+23) ));
                        var←c50876 = var←c50844;
                        (*  (ptr) var←c50876 ) = atom←v11016;
                        (* (( (ptr) var←c50876)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c52508)+23) ));
                        var←c50876 = (* (( (ptr) var←c50876)+1) );
                        {
                           word var←c50940;
                           var←c50940 = XR←NewObject(4, (* (( (ptr) gf←c52508)+39) ));
                           {
/*1*/   word idx234;
/*1*/   (*  (ptr) var←c50940 ) = (
/*1*/      idx234 = (*  (ptr) card←v18120 ),
/*1*/      SGNCK(idx234)
/*1*/      );
/*1*/   };
                           (*  (ptr) var←c50876 ) = var←c50940;
                           };
                        var←c50812 = var←c50844;
                        };
                     {
                        word pd235;
                        pd235 = (* (( (ptr) (* (( (ptr) gf←c52508)+260)/* var←c48540 */  ))+6) );
                        newAction←v11184 = (word) ( *( (fPt) ((*  (ptr) pd235 ))))(var←c50812, (* (( (ptr) (* (( (ptr) event←v11044)+1) ))+1) ), pd235)
                        ;
                        };
                     };
                  };
               }
            else {
               lab←L100040: ;
SOURCE(15394, 5)
               (void) XR←RaiseUnnamedError();
               };
            };
         };
      };
SOURCE(14810, 554)
   return(newAction←v11184);
   }

static word NoName←Q4896(formal←c0465)
   word formal←c0465;
   {
SOURCE(15031, 75)
   {
      word pd236;
      pd236 = (* (( (ptr) formal←c0465)+6) );
      (* (( (ptr) formal←c0465)+7) ) = (word) ( *( (fPt) ((*  (ptr) pd236 ))))((* ((( (ptr) formal←c0465)+5)) ), pd236);
      };
   return(0);
   }

static word CheckForActualExt←P1380(atom←v11340, event←v11368)
   word atom←v11340;
   word event←v11368;
   {
   register ptr gf←c52540 =  (ptr) &globalframe;
   word newAction←v11508;
   /* CheckForActualExt: */ 
SOURCE(15408, 210)
SOURCE(15408, 210)
   newAction←v11508 = 0;
   {
      word var←c50972;
SOURCE(15510, 84)
      if (((* (( (ptr) event←v11368)+1) ) == 0)) { goto then0237;};
      var←c50972 = (*  (ptr) (* (( (ptr) event←v11368)+1) ) );
      if ( ( (var←c50972 == 0) ?  ! 1 :  ! ((* (( (ptr) gf←c52540)+27) ) == XR←GetReferentType(var←c50972)) ) ) {
         then0237: ;
SOURCE(15594, 5)
         (void) XR←RaiseUnnamedError();
         };
SOURCE(15601, 17)
      newAction←v11508 = event←v11368;
      };
SOURCE(15408, 210)
   return(newAction←v11508);
   }

static void RegisterAction←P1440(atom←v11776, eventProc←v11804, argType←v11832, causeMouseEventsToComplete←v11860, ensureUnique←v11888)
   word atom←v11776;
   word eventProc←v11804;
   word argType←v11832;
   word causeMouseEventsToComplete←v11860;
   word ensureUnique←v11888;
   {
   register ptr gf←c52572 =  (ptr) &globalframe;
   word regEvent←v18188;
   word justInserted←v18216;
   /* RegisterAction: */ 
SOURCE(15806, 414)
SOURCE(15980, 102)
   regEvent←v18188 = XR←NewObject(12, (* (( (ptr) gf←c52572)+25) ));
   (*  (ptr) regEvent←v18188 ) = XR←CheckProc(eventProc←v11804);
   (* (( (ptr) regEvent←v18188)+1) ) = argType←v11832;
   (* (( (ptr) regEvent←v18188)+2) ) = causeMouseEventsToComplete←v11860;
SOURCE(16084, 62)
   {
      word pd238;
      pd238 = (* (( (ptr) (* (( (ptr) gf←c52572)+248)/* var←c47324 */  ))+10) );
      justInserted←v18216 = (word) ( *( (fPt) ((*  (ptr) pd238 ))))((* (( (ptr) gf←c52572)+20)/* eventTable←v6780 */  ), atom←v11776, regEvent←v18188, pd238)
      ;
      };
SOURCE(16148, 72)
   if ((0 == justInserted←v18216)) {
SOURCE(16173, 47)
      {
         word var←c51036;
         word pd239;
         pd239 = (* (( (ptr) (* (( (ptr) gf←c52572)+248)/* var←c47324 */  ))+8) );
         var←c51036 = (word) ( *( (fPt) ((*  (ptr) pd239 ))))((* (( (ptr) gf←c52572)+20)/* eventTable←v6780 */  ), atom←v11776, regEvent←v18188, pd239)
         ;
         };
      };
   }

static word FetchAction←P1500(atom←v11948)
   word atom←v11948;
   {
   register ptr gf←c52604 =  (ptr) &globalframe;
   word var←c11992;
   /* FetchAction: */ 
SOURCE(16226, 182)
SOURCE(16287, 121)
   {
      word var←c51068;
      W2 var←c0347;
      {
         word pd240;
         pd240 = (* (( (ptr) (* (( (ptr) gf←c52604)+248)/* var←c47324 */  ))+7) );
         (void) ( *( (fPt) ((*  (ptr) pd240 ))))((word) &var←c0347, (* (( (ptr) gf←c52604)+20)/* eventTable←v6780 */  ), atom←v11948, pd240)
         ;
         };
      var←c51068 = var←c0347.f1;
      if ((var←c51068 == 0)) {
         goto lab←L100041;
         };
      if (((* (( (ptr) gf←c52604)+25) ) == XR←GetReferentType(var←c51068))) {
         {
            word regEvent←v18260;
            regEvent←v18260 = var←c51068;
SOURCE(16368, 16)
            return(regEvent←v18260);
            };
         }
      else {
         lab←L100041: ;
SOURCE(16397, 11)
         return(0);
         };
      };
   }

static void LookAtProfile←P1560(reason←v26448)
   word reason←v26448;
   {
   W9 var←c52636;
   register ptr gf←c52668 =  (ptr) &globalframe;
   /* declaration of gravExtent←v18304 skipped */ 
   /* declaration of defaultHistorySize←v18332 skipped */ 
   word heuristics←v18360;
   word quickClickMode←v18388;
   word useLatestIPVersion←v18416;
   word autoOpenTypescript←v18444;
   word autoOpenHistory←v18472;
   word autoScriptingOn←v18500;
   word separateControlPanel←v18528;
   word defaultIncludeIPBy←v18556;
   word holdThatTiger←v18584;
   word newBoxesUnfilled←v18612;
   /* LookAtProfile: */ 
SOURCE(16414, 2695)
SOURCE(16527, 82)
   {
      word pd241;
      pd241 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+4) );
      heuristics←v18360 = (word) ( *( (fPt) ((*  (ptr) pd241 ))))((* (( (ptr) gf←c52668)+121) ), 0, pd241);
      };
SOURCE(16611, 93)
   {
      word pd242;
      pd242 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+4) );
      quickClickMode←v18388 = (word) ( *( (fPt) ((*  (ptr) pd242 ))))((* (( (ptr) gf←c52668)+122) ), 0, pd242);
      };
SOURCE(16706, 98)
   {
      word pd243;
      pd243 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+4) );
      useLatestIPVersion←v18416 = (word) ( *( (fPt) ((*  (ptr) pd243 ))))((* (( (ptr) gf←c52668)+123) ), 0, pd243);
      };
SOURCE(16806, 97)
   {
      word pd244;
      pd244 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+4) );
      autoOpenTypescript←v18444 = (word) ( *( (fPt) ((*  (ptr) pd244 ))))((* (( (ptr) gf←c52668)+124) ), 1, pd244);
      };
SOURCE(16905, 91)
   {
      word pd245;
      pd245 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+4) );
      autoOpenHistory←v18472 = (word) ( *( (fPt) ((*  (ptr) pd245 ))))((* (( (ptr) gf←c52668)+125) ), 1, pd245);
      };
SOURCE(16998, 92)
   {
      word pd246;
      pd246 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+4) );
      autoScriptingOn←v18500 = (word) ( *( (fPt) ((*  (ptr) pd246 ))))((* (( (ptr) gf←c52668)+126) ), 0, pd246);
      };
SOURCE(17092, 102)
   {
      word pd247;
      pd247 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+4) );
      separateControlPanel←v18528 = (word) ( *( (fPt) ((*  (ptr) pd247 ))))((* (( (ptr) gf←c52668)+127) ), 0, pd247);
      };
SOURCE(17196, 107)
   {
      word pd248;
      pd248 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+6) );
      defaultIncludeIPBy←v18556 = (word) ( *( (fPt) ((*  (ptr) pd248 ))))((* (( (ptr) gf←c52668)+128) ), (* (( (ptr) gf←c52668)+129)
          ), pd248);
      };
SOURCE(17305, 88)
   {
      word pd249;
      pd249 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+4) );
      holdThatTiger←v18584 = (word) ( *( (fPt) ((*  (ptr) pd249 ))))((* (( (ptr) gf←c52668)+130) ), 0, pd249);
      };
SOURCE(17395, 94)
   {
      word pd250;
      pd250 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+4) );
      newBoxesUnfilled←v18612 = (word) ( *( (fPt) ((*  (ptr) pd250 ))))((* (( (ptr) gf←c52668)+131) ), 0, pd250);
      };
SOURCE(17491, 177)
SOURCE(17491, 177)
   {
      /* declaration of var←c51100 skipped */ 
      {
         word pd251;
         pd251 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+6) );
         (* (( (ptr) &var←c52636)+6)/* var←c51100 */  ) = (word) ( *( (fPt) ((*  (ptr) pd251 ))))((* (( (ptr) gf←c52668)+132) ), (* (
               ( (ptr) gf←c52668)+133) ), pd251);
         };
      {
         /* declaration of var←c013 skipped */ 
         (* (( (ptr) &var←c52636)+7)/* var←c013 */  ) = (* (( (ptr) (* (( (ptr) gf←c52668)+268)/* var←c50044 */  ))+10) );
         {
            /* declaration of var←c014 skipped */ 
            {
               word var←c015;
               {
                  word var←c0509;
                  var←c0509 = (word) &var←c52636;
                  var←c015 = (word) XR←Enable(( ((word)  (fPt) NoName←Q5016) ), ( ((word)  (fPt) NoName←Q5136) ), var←c0509);
                  };
               if ((var←c015 == 6)) {
                  goto lab←L100043;
                  };
               };
            (* (( (ptr) &var←c52636)+5)/* defaultHistorySize←v18332 */  ) = (* (( (ptr) &var←c52636)+8)/* var←c014 */  );
            };
         };
      };
   lab←L100043: ;
SOURCE(17695, 161)
SOURCE(17695, 161)
   {
      /* declaration of var←c51132 skipped */ 
      {
         word pd252;
         pd252 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+6) );
         (* (( (ptr) &var←c52636)+6)/* var←c51132 */  ) = (word) ( *( (fPt) ((*  (ptr) pd252 ))))((* (( (ptr) gf←c52668)+134) ), (* (
               ( (ptr) gf←c52668)+135) ), pd252);
         };
      {
         /* declaration of var←c016 skipped */ 
         (* (( (ptr) &var←c52636)+7)/* var←c016 */  ) = (* (( (ptr) (* (( (ptr) gf←c52668)+268)/* var←c50044 */  ))+12) );
         {
            /* declaration of var←c017 skipped */ 
            {
               word var←c018;
               {
                  word var←c0510;
                  var←c0510 = (word) &var←c52636;
                  var←c018 = (word) XR←Enable(( ((word)  (fPt) NoName←Q4956) ), ( ((word)  (fPt) NoName←Q5076) ), var←c0510);
                  };
               if ((var←c018 == 7)) {
                  goto lab←L100047;
                  };
               };
            (* (( (ptr) &var←c52636)+4)/* gravExtent←v18304 */  ) = (* (( (ptr) &var←c52636)+8)/* var←c017 */  );
            };
         };
      };
   lab←L100047: ;
SOURCE(17883, 46)
   {
      word x253;
      word x255;
      if (((
         x253 = (* (( (ptr) &var←c52636)+4)/* gravExtent←v18304 */  ),  *(float*)&x253
         ) == (
         x255 = (*  (ptr) &fc254 ),  *(float*)&x255
         ))) {
SOURCE(17907, 22)
         {
            word x256;
            word x258;
            *(float*)(( (ptr) &var←c52636)+4)/* gravExtent←v18304 */  = (
               x256 = (*  (ptr) &fc157 ),  *(float*)&x256
               ) / (
               x258 = (*  (ptr) &fc257 ),  *(float*)&x258
               );
            };
         };
      };
SOURCE(17931, 88)
   if (( (int)(* (( (ptr) &var←c52636)+5)/* defaultHistorySize←v18332 */  ) <  (int)1)) {
SOURCE(17960, 59)
      if (( (int)(* (( (ptr) &var←c52636)+5)/* defaultHistorySize←v18332 */  ) ==  (int)0)) {
         (* (( (ptr) &var←c52636)+5)/* defaultHistorySize←v18332 */  ) = 1;
         }
      else {
         (* (( (ptr) &var←c52636)+5)/* defaultHistorySize←v18332 */  ) = 40;
         };
      };
SOURCE(18021, 36)
   (void) SetDefaultHeuristics←P1740(heuristics←v18360);
SOURCE(18059, 43)
   (void) SetDefaultGravityExtent←P1860((* ((( (ptr) &var←c52636)+4)/* gravExtent←v18304 */ ) ));
SOURCE(18104, 41)
   {
      word pd259;
      pd259 = (* (( (ptr) (* (( (ptr) gf←c52668)+256)/* var←c48252 */  ))+107) );
      (void) ( *( (fPt) ((*  (ptr) pd259 ))))(quickClickMode←v18388, pd259);
      };
SOURCE(18147, 48)
   (void) SetDefaultUseLatestIPVersion←P1980(useLatestIPVersion←v18416);
SOURCE(18197, 41)
   (void) SetAutoOpenTypescript←P2220(autoOpenTypescript←v18444);
SOURCE(18240, 35)
   (void) SetAutoOpenHistory←P2340(autoOpenHistory←v18472);
SOURCE(18277, 41)
   (void) SetDefaultHistorySize←P2460((* ((( (ptr) &var←c52636)+5)/* defaultHistorySize←v18332 */ ) ));
SOURCE(18320, 35)
   (void) SetAutoScriptingOn←P2580(autoScriptingOn←v18500);
SOURCE(18357, 45)
   (void) SetSeparateControlPanel←P2700(separateControlPanel←v18528);
SOURCE(18404, 31)
   (void) SetHoldThatTiger←P2940(holdThatTiger←v18584);
SOURCE(18437, 37)
   (void) SetNewBoxesUnfilled←P3060(newBoxesUnfilled←v18612);
SOURCE(18476, 74)
   {
      word var←c51164;
      {
         word pd260;
         pd260 = (* (( (ptr) (* (( (ptr) gf←c52668)+253)/* var←c47932 */  ))+8) );
         var←c51164 = (word) ( *( (fPt) ((*  (ptr) pd260 ))))(defaultIncludeIPBy←v18556, (* (( (ptr) gf←c52668)+136) ), 0, pd260);
         };
      (void) SetDefaultIncludeIPByValue←P2820(var←c51164);
      };
SOURCE(18552, 507)
   {
      word description←v18656;
      word descriptionStream←v18684 = 0;
      word defaultFont←v18712 = 0;
SOURCE(18590, 92)
      {
         word pd261;
         pd261 = (* (( (ptr) (* (( (ptr) gf←c52668)+247)/* var←c47292 */  ))+6) );
         description←v18656 = (word) ( *( (fPt) ((*  (ptr) pd261 ))))((* (( (ptr) gf←c52668)+137) ), 0, pd261);
         };
SOURCE(18737, 106)
      if ((description←v18656 == 0)) {
SOURCE(18763, 80)
         description←v18656 = (* (( (ptr) gf←c52668)+138) );
         };
SOURCE(18845, 39)
      {
         word pd262;
         pd262 = (* (( (ptr) (* (( (ptr) gf←c52668)+263)/* var←c48764 */  ))+33) );
         descriptionStream←v18684 = (word) ( *( (fPt) ((*  (ptr) pd262 ))))(description←v18656, 0, pd262);
         };
SOURCE(18886, 135)
      {
         word pd263;
         pd263 = (* (( (ptr) (* (( (ptr) gf←c52668)+269)/* var←c51196 */  ))+9) );
         defaultFont←v18712 = (word) ( *( (fPt) ((*  (ptr) pd263 ))))(0, descriptionStream←v18684, 1, 0, 0, 0
            , 1, 0, 1, 1, pd263);
         };
SOURCE(19023, 34)
      (void) SetDefaultDefaultFont←P2100(defaultFont←v18712);
      };
SOURCE(19064, 45)
   if ((reason←v26448 != 0)) {
SOURCE(19089, 20)
      {
         word pd264;
         pd264 = (* (( (ptr) (* (( (ptr) gf←c52668)+270)/* var←c51228 */  ))+11) );
         (void) ( *( (fPt) ((*  (ptr) pd264 ))))(pd264);
         };
      };
   }

static word NoName←Q4956(formal←c0470)
   word formal←c0470;
   {
SOURCE(17695, 161)
   {
      word pd265;
      pd265 = (* (( (ptr) formal←c0470)+7) );
      (* (( (ptr) formal←c0470)+8) ) = (word) ( *( (fPt) ((*  (ptr) pd265 ))))((* ((( (ptr) formal←c0470)+6)) ), pd265);
      };
   return(0);
   }

static word NoName←Q5016(formal←c0471)
   word formal←c0471;
   {
SOURCE(17491, 177)
   {
      word pd266;
      pd266 = (* (( (ptr) formal←c0471)+7) );
      (* (( (ptr) formal←c0471)+8) ) = (word) ( *( (fPt) ((*  (ptr) pd266 ))))((* (( (ptr) formal←c0471)+6) ), 8, pd266);
      };
   return(0);
   }

static void SetUserTraceOn←P1620(on←v12568)
   word on←v12568;
   {
   register ptr gf←c52700 =  (ptr) &globalframe;
   /* SetUserTraceOn: */ 
SOURCE(19744, 70)
SOURCE(19787, 27)
   (* (( (ptr) (* (( (ptr) gf←c52700)+19)/* masterData←v6752 */  ))+13) ) = on←v12568;
   }

static word GetUserTraceOn←P1680()
   {
   register ptr gf←c52732 =  (ptr) &globalframe;
   word on←v12628;
   /* GetUserTraceOn: */ 
SOURCE(19820, 78)
SOURCE(19871, 27)
   on←v12628 = (* (( (ptr) (* (( (ptr) gf←c52732)+19)/* masterData←v6752 */  ))+13) );
SOURCE(19820, 78)
   return(on←v12628);
   }

static void SetDefaultHeuristics←P1740(on←v12688)
   word on←v12688;
   {
   register ptr gf←c52764 =  (ptr) &globalframe;
   /* SetDefaultHeuristics: */ 
SOURCE(19904, 82)
SOURCE(19953, 33)
   (* (( (ptr) (* (( (ptr) gf←c52764)+19)/* masterData←v6752 */  ))+1) ) = on←v12688;
   }

static word GetDefaultHeuristics←P1800()
   {
   register ptr gf←c52796 =  (ptr) &globalframe;
   word on←v12748;
   /* GetDefaultHeuristics: */ 
SOURCE(19992, 90)
SOURCE(20049, 33)
   on←v12748 = (* (( (ptr) (* (( (ptr) gf←c52796)+19)/* masterData←v6752 */  ))+1) );
SOURCE(19992, 90)
   return(on←v12748);
   }

static void SetDefaultGravityExtent←P1860(inches←v12808)
   word inches←v12808;
   {
   register ptr gf←c52828 =  (ptr) &globalframe;
   /* SetDefaultGravityExtent: */ 
SOURCE(20087, 101)
SOURCE(20143, 45)
   {
      word x267;
      word x268;
      *(float*)(* (( (ptr) gf←c52828)+19)/* masterData←v6752 */  ) = (
         x267 = inches←v12808,  *(float*)&x267
         ) * (
         x268 = (*  (ptr) &fc257 ),  *(float*)&x268
         );
      };
   }

static word GetDefaultGravityExtent←P1920()
   {
   register ptr gf←c52860 =  (ptr) &globalframe;
   word screenDots←v12868;
   /* GetDefaultGravityExtent: */ 
SOURCE(20194, 112)
SOURCE(20262, 44)
   screenDots←v12868 = (*  (ptr) (* (( (ptr) gf←c52860)+19)/* masterData←v6752 */  ) );
SOURCE(20194, 112)
   return(screenDots←v12868);
   }

static void SetDefaultUseLatestIPVersion←P1980(useLatestIPVersion←v12928)
   word useLatestIPVersion←v12928;
   {
   register ptr gf←c52892 =  (ptr) &globalframe;
   /* SetDefaultUseLatestIPVersion: */ 
SOURCE(20312, 129)
SOURCE(20385, 56)
   {
      word pd269;
      pd269 = (* (( (ptr) (* (( (ptr) gf←c52892)+271)/* var←c51260 */  ))+60) );
      (void) ( *( (fPt) ((*  (ptr) pd269 ))))(useLatestIPVersion←v12928, pd269);
      };
   }

static word GetDefaultUseLatestIPVersion←P2040()
   {
   register ptr gf←c52924 =  (ptr) &globalframe;
   word useLatestIPVersion←v12988;
   /* GetDefaultUseLatestIPVersion: */ 
SOURCE(20447, 130)
SOURCE(20531, 46)
   {
      word pd270;
      pd270 = (* (( (ptr) (* (( (ptr) gf←c52924)+271)/* var←c51260 */  ))+61) );
      return((word) ( *( (fPt) ((*  (ptr) pd270 ))))(pd270));
      };
   }

static void SetDefaultDefaultFont←P2100(font←v13048)
   word font←v13048;
   {
   register ptr gf←c52956 =  (ptr) &globalframe;
   /* SetDefaultDefaultFont: */ 
SOURCE(20582, 92)
SOURCE(20638, 36)
   (* (( (ptr) (* (( (ptr) gf←c52956)+19)/* masterData←v6752 */  ))+3) ) = font←v13048;
   }

static word GetDefaultDefaultFont←P2160()
   {
   register ptr gf←c52988 =  (ptr) &globalframe;
   word font←v13108;
   /* GetDefaultDefaultFont: */ 
SOURCE(20680, 100)
SOURCE(20680, 100)
   font←v13108 = 0;
SOURCE(20744, 36)
   font←v13108 = (* (( (ptr) (* (( (ptr) gf←c52988)+19)/* masterData←v6752 */  ))+3) );
SOURCE(20680, 100)
   return(font←v13108);
   }

static void SetAutoOpenTypescript←P2220(autoOpenTypescript←v13168)
   word autoOpenTypescript←v13168;
   {
   register ptr gf←c53020 =  (ptr) &globalframe;
   /* SetAutoOpenTypescript: */ 
SOURCE(20786, 116)
SOURCE(20852, 50)
   (* (( (ptr) (* (( (ptr) gf←c53020)+19)/* masterData←v6752 */  ))+4) ) = autoOpenTypescript←v13168;
   }

static word GetAutoOpenTypescript←P2280()
   {
   register ptr gf←c53052 =  (ptr) &globalframe;
   word autoOpenTypescript←v13228;
   /* GetAutoOpenTypescript: */ 
SOURCE(20908, 127)
SOURCE(20985, 50)
   autoOpenTypescript←v13228 = (* (( (ptr) (* (( (ptr) gf←c53052)+19)/* masterData←v6752 */  ))+4) );
SOURCE(20908, 127)
   return(autoOpenTypescript←v13228);
   }

static void SetAutoOpenHistory←P2340(autoOpenHistory←v13288)
   word autoOpenHistory←v13288;
   {
   register ptr gf←c53084 =  (ptr) &globalframe;
   /* SetAutoOpenHistory: */ 
SOURCE(21041, 104)
SOURCE(21101, 44)
   (* (( (ptr) (* (( (ptr) gf←c53084)+19)/* masterData←v6752 */  ))+5) ) = autoOpenHistory←v13288;
   }

static word GetAutoOpenHistory←P2400()
   {
   register ptr gf←c53116 =  (ptr) &globalframe;
   word autoOpenHistory←v13348;
   /* GetAutoOpenHistory: */ 
SOURCE(21151, 115)
SOURCE(21222, 44)
   autoOpenHistory←v13348 = (* (( (ptr) (* (( (ptr) gf←c53116)+19)/* masterData←v6752 */  ))+5) );
SOURCE(21151, 115)
   return(autoOpenHistory←v13348);
   }

static void SetDefaultHistorySize←P2460(defaultHistorySize←v13408)
   word defaultHistorySize←v13408;
   {
   register ptr gf←c53148 =  (ptr) &globalframe;
   /* SetDefaultHistorySize: */ 
SOURCE(21272, 115)
SOURCE(21337, 50)
   (* (( (ptr) (* (( (ptr) gf←c53148)+19)/* masterData←v6752 */  ))+6) ) = defaultHistorySize←v13408;
   }

static word GetDefaultHistorySize←P2520()
   {
   register ptr gf←c53180 =  (ptr) &globalframe;
   word defaultHistorySize←v13468;
   /* GetDefaultHistorySize: */ 
SOURCE(21393, 123)
SOURCE(21466, 50)
   defaultHistorySize←v13468 = (* (( (ptr) (* (( (ptr) gf←c53180)+19)/* masterData←v6752 */  ))+6) );
SOURCE(21393, 123)
   return(defaultHistorySize←v13468);
   }

static void SetAutoScriptingOn←P2580(autoScriptingOn←v13528)
   word autoScriptingOn←v13528;
   {
   register ptr gf←c53212 =  (ptr) &globalframe;
   /* SetAutoScriptingOn: */ 
SOURCE(21522, 104)
SOURCE(21582, 44)
   (* (( (ptr) (* (( (ptr) gf←c53212)+19)/* masterData←v6752 */  ))+7) ) = autoScriptingOn←v13528;
   }

static word GetAutoScriptingOn←P2640()
   {
   register ptr gf←c53244 =  (ptr) &globalframe;
   word autoScriptingOn←v13588;
   /* GetAutoScriptingOn: */ 
SOURCE(21632, 115)
SOURCE(21703, 44)
   autoScriptingOn←v13588 = (* (( (ptr) (* (( (ptr) gf←c53244)+19)/* masterData←v6752 */  ))+7) );
SOURCE(21632, 115)
   return(autoScriptingOn←v13588);
   }

static void SetSeparateControlPanel←P2700(separateControlPanel←v13648)
   word separateControlPanel←v13648;
   {
   register ptr gf←c53276 =  (ptr) &globalframe;
   /* SetSeparateControlPanel: */ 
SOURCE(21753, 124)
SOURCE(21823, 54)
   (* (( (ptr) (* (( (ptr) gf←c53276)+19)/* masterData←v6752 */  ))+8) ) = separateControlPanel←v13648;
   }

static word GetSeparateControlPanel←P2760()
   {
   register ptr gf←c53308 =  (ptr) &globalframe;
   word separateControlPanel←v13708;
   /* GetSeparateControlPanel: */ 
SOURCE(21883, 135)
SOURCE(21964, 54)
   separateControlPanel←v13708 = (* (( (ptr) (* (( (ptr) gf←c53308)+19)/* masterData←v6752 */  ))+8) );
SOURCE(21883, 135)
   return(separateControlPanel←v13708);
   }

static void SetDefaultIncludeIPByValue←P2820(defaultIncludeIPByValue←v13768)
   word defaultIncludeIPByValue←v13768;
   {
   register ptr gf←c53340 =  (ptr) &globalframe;
   /* SetDefaultIncludeIPByValue: */ 
SOURCE(22024, 136)
SOURCE(22100, 60)
   (* (( (ptr) (* (( (ptr) gf←c53340)+19)/* masterData←v6752 */  ))+9) ) = defaultIncludeIPByValue←v13768;
   }

static word GetDefaultIncludeIPByValue←P2880()
   {
   register ptr gf←c53372 =  (ptr) &globalframe;
   word defaultIncludeIPByValue←v13828;
   /* GetDefaultIncludeIPByValue: */ 
SOURCE(22166, 147)
SOURCE(22253, 60)
   defaultIncludeIPByValue←v13828 = (* (( (ptr) (* (( (ptr) gf←c53372)+19)/* masterData←v6752 */  ))+9) );
SOURCE(22166, 147)
   return(defaultIncludeIPByValue←v13828);
   }

static void SetHoldThatTiger←P2940(holdThatTiger←v13888)
   word holdThatTiger←v13888;
   {
   register ptr gf←c53404 =  (ptr) &globalframe;
   /* SetHoldThatTiger: */ 
SOURCE(22319, 96)
SOURCE(22375, 40)
   (* (( (ptr) (* (( (ptr) gf←c53404)+19)/* masterData←v6752 */  ))+10) ) = holdThatTiger←v13888;
   }

static word GetHoldThatTiger←P3000()
   {
   register ptr gf←c53436 =  (ptr) &globalframe;
   word holdThatTiger←v13948;
   /* GetHoldThatTiger: */ 
SOURCE(22421, 107)
SOURCE(22488, 40)
   holdThatTiger←v13948 = (* (( (ptr) (* (( (ptr) gf←c53436)+19)/* masterData←v6752 */  ))+10) );
SOURCE(22421, 107)
   return(holdThatTiger←v13948);
   }

static void SetNewBoxesUnfilled←P3060(newBoxesUnfilled←v14008)
   word newBoxesUnfilled←v14008;
   {
   register ptr gf←c53468 =  (ptr) &globalframe;
   /* SetNewBoxesUnfilled: */ 
SOURCE(22534, 108)
SOURCE(22596, 46)
   (* (( (ptr) (* (( (ptr) gf←c53468)+19)/* masterData←v6752 */  ))+11) ) = newBoxesUnfilled←v14008;
   }

static word GetNewBoxesUnfilled←P3120()
   {
   register ptr gf←c53500 =  (ptr) &globalframe;
   word newBoxesUnfilled←v14068;
   /* GetNewBoxesUnfilled: */ 
SOURCE(22648, 119)
SOURCE(22721, 46)
   newBoxesUnfilled←v14068 = (* (( (ptr) (* (( (ptr) gf←c53500)+19)/* masterData←v6752 */  ))+11) );
SOURCE(22648, 119)
   return(newBoxesUnfilled←v14068);
   }

static void NoName←Q5076(formal←c0400, formal←c200020, formal←c200021, formal←c200022, formal←c200023)
   word formal←c0400;
   word formal←c200020;
   word formal←c200021;
   word formal←c200022;
   word formal←c200023;
   {
   register ptr gf←c0498 =  (ptr) &globalframe;
   if ((formal←c200021 == (* (( (ptr) (* (( (ptr) gf←c0498)+268)/* var←c50044 */  ))+7) ))) {
      {
         word reason←v44344;
         word index←v44372;
         reason←v44344 = (*  (ptr) formal←c200023 );
         index←v44372 = (* (( (ptr) formal←c200023)+1) );
SOURCE(17814, 42)
         if ((reason←v44344 == 0)) {
SOURCE(17839, 17)
            (* (( (ptr) formal←c200020)+4) ) = (*  (ptr) &fc254 );
SOURCE(17858, 8)
            (*  (ptr) formal←c0400 ) = 2;
            (* (( (ptr) formal←c0400)+1) ) = 7;
            return;
            }
         else {
            /* removed tail goto */ 
            };
         };
      };
   (*  (ptr) formal←c0400 ) = 0;
   (* (( (ptr) formal←c0400)+1) ) = 0;
   return;
   }

static void NoName←Q5136(formal←c0407, formal←c200016, formal←c200017, formal←c200018, formal←c200019)
   word formal←c0407;
   word formal←c200016;
   word formal←c200017;
   word formal←c200018;
   word formal←c200019;
   {
   register ptr gf←c0499 =  (ptr) &globalframe;
   if ((formal←c200017 == (* (( (ptr) (* (( (ptr) gf←c0499)+268)/* var←c50044 */  ))+7) ))) {
      {
         word reason←v44224;
         word index←v44252;
         reason←v44224 = (*  (ptr) formal←c200019 );
         index←v44252 = (* (( (ptr) formal←c200019)+1) );
SOURCE(17620, 48)
         if ((reason←v44224 == 0)) {
SOURCE(17645, 23)
            (* (( (ptr) formal←c200016)+5) ) =  (word) -1;
SOURCE(17670, 8)
            (*  (ptr) formal←c0407 ) = 2;
            (* (( (ptr) formal←c0407)+1) ) = 6;
            return;
            }
         else {
            /* removed tail goto */ 
            };
         };
      };
   (*  (ptr) formal←c0407 ) = 0;
   (* (( (ptr) formal←c0407)+1) ) = 0;
   return;
   }

static void NoName←Q5196(formal←c0412, formal←c200012, formal←c200013, formal←c200014, formal←c200015)
   word formal←c0412;
   word formal←c200012;
   word formal←c200013;
   word formal←c200014;
   word formal←c200015;
   {
   register ptr gf←c0500 =  (ptr) &globalframe;
   if ((formal←c200013 == (* (( (ptr) (* (( (ptr) gf←c0500)+263)/* var←c48764 */  ))+4) )) || (formal←c200013 == (* (( (ptr) (* (
         ( (ptr) gf←c0500)+263)/* var←c48764 */  ))+5) ))) {
SOURCE(15091, 15)
      (* (( (ptr) formal←c200012)+4) ) = 2147483647;
SOURCE(15108, 8)
      (*  (ptr) formal←c0412 ) = 2;
      (* (( (ptr) formal←c0412)+1) ) = 5;
      return;
      };
   (*  (ptr) formal←c0412 ) = 0;
   (* (( (ptr) formal←c0412)+1) ) = 0;
   return;
   }

static void NoName←Q5256(formal←c0417, formal←c200008, formal←c200009, formal←c200010, formal←c200011)
   word formal←c0417;
   word formal←c200008;
   word formal←c200009;
   word formal←c200010;
   word formal←c200011;
   {
   register ptr gf←c0501 =  (ptr) &globalframe;
   if ((formal←c200009 == (* (( (ptr) (* (( (ptr) gf←c0501)+263)/* var←c48764 */  ))+4) )) || (formal←c200009 == (* (( (ptr) (* (
         ( (ptr) gf←c0501)+263)/* var←c48764 */  ))+5) ))) {
SOURCE(14611, 17)
      (* (( (ptr) formal←c200008)+4) ) =  (word) -1;
SOURCE(14630, 8)
      (*  (ptr) formal←c0417 ) = 2;
      (* (( (ptr) formal←c0417)+1) ) = 4;
      return;
      };
   (*  (ptr) formal←c0417 ) = 0;
   (* (( (ptr) formal←c0417)+1) ) = 0;
   return;
   }

static void NoName←Q5316(formal←c0424, formal←c200004, formal←c200005, formal←c200006, formal←c200007)
   word formal←c0424;
   word formal←c200004;
   word formal←c200005;
   word formal←c200006;
   word formal←c200007;
   {
   register ptr gf←c0502 =  (ptr) &globalframe;
   if ((formal←c200005 == (* (( (ptr) (* (( (ptr) gf←c0502)+268)/* var←c50044 */  ))+7) ))) {
      {
         word reason←v41804;
         word index←v41832;
         reason←v41804 = (*  (ptr) formal←c200007 );
         index←v41832 = (* (( (ptr) formal←c200007)+1) );
SOURCE(14195, 25)
         (* (( (ptr) formal←c200004)+5) ) = 2139095039;
SOURCE(14222, 8)
         (*  (ptr) formal←c0424 ) = 2;
         (* (( (ptr) formal←c0424)+1) ) = 3;
         return;
         };
      };
   (*  (ptr) formal←c0424 ) = 0;
   (* (( (ptr) formal←c0424)+1) ) = 0;
   return;
   }

static void NoName←Q5376(formal←c0431, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
   word formal←c0431;
   word formal←c200000;
   word formal←c200001;
   word formal←c200002;
   word formal←c200003;
   {
   register ptr gf←c0503 =  (ptr) &globalframe;
   if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0503)+268)/* var←c50044 */  ))+7) ))) {
      {
         word reason←v41672;
         word index←v41700;
         reason←v41672 = (*  (ptr) formal←c200003 );
         index←v41700 = (* (( (ptr) formal←c200003)+1) );
SOURCE(13940, 25)
         (* (( (ptr) formal←c200000)+5) ) = 2139095039;
SOURCE(13967, 8)
         (*  (ptr) formal←c0431 ) = 2;
         (* (( (ptr) formal←c0431)+1) ) = 2;
         return;
         };
      };
   (*  (ptr) formal←c0431 ) = 0;
   (* (( (ptr) formal←c0431)+1) ) = 0;
   return;
   }

static word NoName←Q5436(formal←c0134)
   word formal←c0134;
   {
   W2 var←c0136;
   word var←c0135;
   /* intermediary proc for a FORK, nArgs: 2, nRets: 0 */ 
   var←c0136 = (*  (W2Pt) (( (ptr) formal←c0134)+4) );
   var←c0135 = (* (( (ptr) formal←c0134)+2) );
   formal←c0134 = XR←ExtensionFree(formal←c0134);
   (void) ( *( (fPt) ((*  (ptr) var←c0135 ))))(var←c0136.f0, var←c0136.f1, var←c0135);
   return(0);
   }

/* file: GGUserImpl, module: GGUserImpl, compiled at: August 20, 1993 7:12:19 pm PDT */ 
extern void XR←install←GGUserImpl() {
   NoName←Q4656();
   }
extern void XR←run←GGUserImpl() { XR←Start(&globalframe); }