/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation.  All rights reserved. */
/* time: March 26, 1993 4:07:39 pm PST */
/* C2C version: February 24, 1993 (sun4) */
/* ref-counting: off */
/* file: TEditDocumentsImpl, module: TEditDocumentsImpl */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [3293704217,1476768017] TEditDocumentsImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef word (*fPt)();
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {W8 f; W8 r;} W16;
typedef struct {W16 f; W16 r;} W32;
typedef struct {word f0, f1, f2;} W3;
typedef struct {W32 f; W3 r;} W35;
typedef struct {word f0, f1, f2, f3;} W4;
typedef struct {W8 f; W4 r;} W12;
typedef struct {W16 f; W12 r;} W28;
typedef struct {W8 f; W3 r;} W11;
typedef struct {W16 f; W11 r;} W27;
typedef W27 *W27Pt;
typedef W28 *W28Pt;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
typedef struct {W8 f; word r;} W9;
typedef W9 *W9Pt;
typedef W4 *W4Pt;
typedef struct {word f0, f1, f2, f3, f4, f5;} W6;
typedef struct {word f0, f1;} W2;
typedef W2 *W2Pt;
typedef struct {word f0, f1, f2, f3, f4;} W5;
typedef W3 *W3Pt;
#define SOURCE(p, l) /* source p, l */
#define MAX(cast, x, y)  ( ( cast x) > ( cast y) ? (x) : (y) )
#define IOP2(op, x, y)  ( (word) ((x) op (y)) )
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
#define MIN(cast, x, y)  ( ( cast x) < ( cast y) ? (x) : (y) )
static void NoName←Q3984();
static void TEditDocumentsImpl←P0();
static void InitTEditDocument←P60();
static word DocumentFromRope←P120();
static void InitViewerDoc←P180();
static void InitViewerDocInternal←P240();
static word NoName←Q4044();
static void SaveTEditDocument←P360();
static word NoName←Q4104();
static word FileIsMoreRecent←P420();
static void SetTEditDocument←P480();
static word GetTEditDocument←P540();
static void DoSelChars←P2772();
static word SelConcat←P2880();
static void DoSelPos←P2988();
static void DestroyTEditDocument←P600();
static void CleanupAfterDestroy←P660();
static void ChangeMenu←P720();
static word Priority←P3348();
static void LevelMenu←P780();
static void FindMenu←P840();
static word SpinAndLock←P900();
static word NoName←Q4164();
static void Unlock←P960();
static word NoName←Q4224();
static word SystemTip←P1020();
static void ReloadTipTable←P1080();
static void ReloadReadonlyTipTable←P1140();
static void ChangeTipTables←P1200();
static void WithViewerTreeLocked←P3456();
static word changeTip←P3516();
static word ReloadTable←P1260();
static void AddTable←P3624();
static word NoName←Q4284();
static word LocalAdjust←P1320();
static void CreateTiogaMenu←P1380();
static void Append←P3828();
static void StyleKindClick←P1440();
static void StyleKindScreenOp←P1500();
static void StyleKindPrintOp←P1560();
static void NoName←Q4344();
static void NoName←Q4404();
static void NoName←Q4464();
static void NoName←Q4524();
static void NoName←Q4584();
static word NoName←Q4644();
static word NoName←Q4704();
static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\304\121\360\031\300\130\005\261\021\100\200\000\000"};
static struct {unsigned f; char r[12];} string2 = {524296, "\011\000\014\040\040\000\010\001\000\000\000"};
static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\113\175\243\331\300\252\247\212\133\100\200\000\000"};
static struct {unsigned f; char r[12];} string4 = {720907, "\006\004\000\0018\001<\001@L\001"};
static struct {unsigned f; char r[4];} string5 = {131076, "\216\251\000"};
static struct {unsigned f; char r[4];} string6 = {65537, "\001\000\000"};
static struct {unsigned f; char r[88];} string7 = {5505112, "\262\260\007\006\160\141\162\145\156\164\216\257\300\113\175\243\331\300\252\247\212\133\100\164\013\012\143\154\151\145\156\164\104\141\164\141\217\014\013\155\157\165\163\145\102\165\164\164\157\156\257\300\113\175\243\331\300\252\247\212\133\102\044\006\005\163\150\151\146\164\232\010\007\143\157\156\164\162\157\154\232\261\260\261\000\000\000"};
static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\045\005\337\143\300\252\356\334\244\100\244\000\000"};
static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\045\005\337\143\300\252\356\334\244\101\034\000\000"};
static struct {unsigned f; char r[4];} string10 = {131074, "\004\003\000"};
static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\104\304\000\000"};
static struct {unsigned f; char r[24];} string12 = {1376277, "\007\000\001\002\007\020\001\002\000\007\036\002\004\003\002\004\014\016\015\003\001\000\000"};
static struct {unsigned f; char r[16];} string13 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\343\357\262\137\300\144\166\356\317\100\164\000\000"};
static struct {unsigned f; char r[16];} string15 = {851981, "\006\005\000\001\004\001\054\001\070\001\100\114\001\000\000"};
static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\343\357\262\137\300\144\166\356\317\100\230\000\000"};
static struct {unsigned f; char r[12];} string17 = {589833, "\011\000\044\100\100\040\000\014\001\000\000"};
static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\302\136\246\312\300\076\314\360\376\100\164\000\000"};
static struct {unsigned f; char r[4];} string19 = {196611, "\004A\377"};
static struct {unsigned f; char r[44];} string20 = {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[4];} string21 = {4, "\000\000\000"};
static struct {unsigned f; char r[20];} string22 = {1179668, "OpenFirstLevelOnly\000"};
static struct {unsigned f; char r[52];} string23 = {3211316, "TEditDocumentsImpl: Error in Tioga formatting of \000\000"};
static struct {unsigned f; char r[24];} string24 = {1310744, "TEditDocumentsImpl: \000\000\000"};
static struct {unsigned f; char r[8];} string25 = {458760, "*ERROR*"};
static struct {unsigned f; char r[16];} string26 = {851984, "InitViewerDoc\000\000"};
static struct {unsigned f; char r[8];} string27 = {262152, "Open\000\000\000"};
static struct {unsigned f; char r[16];} string28 = {851984, "no file name!\000\000"};
static struct {unsigned f; char r[16];} string29 = {851984, "SaveAllEdits-\000\000"};
static struct {unsigned f; char r[8];} string30 = {393224, ".tioga\000"};
static struct {unsigned f; char r[20];} string31 = {1245204, "read only document!"};
static struct {unsigned f; char r[20];} string32 = {1114132, "SaveTEditDocument\000\000"};
static struct {unsigned f; char r[12];} string33 = {524300, "IO.Error\000\000\000"};
static struct {unsigned f; char r[16];} string34 = {851984, "TiogaContents\000\000"};
static struct {unsigned f; char r[16];} string35 = {851984, "TiogaDocument\000\000"};
static struct {unsigned f; char r[20];} string36 = {1179668, "KeepRootStyleProps\000"};
static struct {unsigned f; char r[20];} string37 = {1048596, "SetTEditDocument\000\000\000"};
static struct {unsigned f; char r[4];} string38 = {196612, "New"};
static struct {unsigned f; char r[8];} string39 = {393224, "Prefix\000"};
static struct {unsigned f; char r[8];} string40 = {458760, "Postfix"};
static struct {unsigned f; char r[8];} string41 = {262152, "Text\000\000\000"};
static struct {unsigned f; char r[8];} string42 = {393224, "SelPos\000"};
static struct {unsigned f; char r[16];} string43 = {983056, "StyleKindScreen"};
static struct {unsigned f; char r[12];} string44 = {524300, "ReadOnly\000\000\000"};
static struct {unsigned f; char r[12];} string45 = {589836, "ReadWrite\000\000"};
static struct {unsigned f; char r[12];} string46 = {524300, "SelChars\000\000\000"};
static struct {unsigned f; char r[24];} string47 = {1310744, "DestroyTEditDocument\000\000\000"};
static struct {unsigned f; char r[8];} string48 = {262152, "Find\000\000\000"};
static struct {unsigned f; char r[16];} string49 = {917520, "FirstLevelOnly\000"};
static struct {unsigned f; char r[16];} string50 = {917520, "StyleKindPrint\000"};
static struct {unsigned f; char r[8];} string51 = {262152, ".tip\000\000\000"};
static struct {unsigned f; char r[12];} string52 = {524300, "TiogaTIP\000\000\000"};
static struct {unsigned f; char r[8];} string53 = {327688, "Tioga\000\000"};
static struct {unsigned f; char r[20];} string54 = {1048596, "ReadonlyTiogaTIP\000\000\000"};
static struct {unsigned f; char r[16];} string55 = {851984, "ReadonlyTioga\000\000"};
static struct {unsigned f; char r[12];} string56 = {655372, "Typescript\000"};
static struct {unsigned f; char r[8];} string57 = {458760, "default"};
static struct {unsigned f; char r[32];} string58 = {1835040, "Cannot read TIP table file: \000\000\000"};
static struct {unsigned f; char r[36];} string59 = {2228260, "Error(s) saved on TIP.Errors for: \000"};
static struct {unsigned f; char r[36];} string60 = {2293796, "Loop in TIP table layers caused by "};
static struct {unsigned f; char r[12];} string61 = {589836, "StyleKind\000\000"};
static struct {unsigned f; char r[8];} string62 = {327688, "Print\000\000"};
static struct {unsigned f; char r[16];} string63 = {851984, "\257\300\304\121\360\031\300\130\005\261\021\100\164\000\000"};
static struct {unsigned f; char r[44];} string64 = {2818091, "\006\015\040\001\050\001\100\104\001\100\110\001\100\114\001\100\124\001\100\130\001\100\134\001\100\140\001\100\144\001\100\150\001\100\154\001\100\320\010\000\004\052\001"};
static struct {unsigned f; char r[16];} string65 = {851984, "\257\300\271\262\125\170\300\162\064\273\376\100\150\000\000"};
static struct {unsigned f; char r[16];} string66 = {851984, "\257\300\255\053\300\023\300\142\135\315\105\100\150\000\000"};
static struct {unsigned f; char r[12];} string67 = {720908, "\257\300\036\351\345\237\244\150\210\100\150"};
static struct {unsigned f; char r[16];} string68 = {851984, "\257\300\355\261\315\203\300\373\164\347\341\100\150\000\000"};
static struct {unsigned f; char r[16];} string69 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"};
static struct {unsigned f; char r[16];} string70 = {851984, "\257\300\317\042\141\053\300\247\142\073\274\100\150\000\000"};
static struct {unsigned f; char r[16];} string71 = {851984, "\257\300\074\270\063\045\300\023\342\016\224\100\150\000\000"};
static struct {unsigned f; char r[16];} string72 = {851984, "\257\300\234\060\361\073\300\103\025\207\123\100\150\000\000"};
static struct {unsigned f; char r[16];} string73 = {851984, "\257\300\141\260\110\353\300\162\250\066\353\100\150\000\000"};
static struct {unsigned f; char r[16];} string74 = {851984, "\257\300\263\221\075\070\300\264\022\010\174\100\164\000\000"};
static struct {unsigned f; char r[16];} string75 = {851984, "\257\300\240\236\274\315\300\111\163\325\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string76 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {unsigned f; char r[12];} string77 = {1413833833, "tDocument"};
static struct {unsigned f; char r[16];} string78 = {851984, "\257\300\343\357\262\137\300\144\166\356\317\100\150\000\000"};
static struct {unsigned f; char r[20];} string79 = {1413833833, "tDocumentPrivate"};
static struct {unsigned f; char r[16];} string80 = {851984, "\257\300\165\053\345\211\300\333\235\216\021\100\150\000\000"};
static struct {unsigned f; char r[16];} string81 = {851984, "\257\300\013\141\323\354\300\341\005\243\127\100\150\000\000"};
static struct {unsigned f; char r[16];} string82 = {851984, "\257\300\146\107\314\260\300\352\117\305\000\100\150\000\000"};
static struct {unsigned f; char r[16];} string83 = {851984, "\257\300\241\200\031\316\300\154\273\372\020\100\150\000\000"};
static struct {unsigned f; char r[12];} string84 = {1413833833, "tPrivate"};
static struct {unsigned f; char r[16];} string85 = {851984, "\257\300\016\126\010\321\300\354\015\363\112\100\150\000\000"};
static struct {unsigned f; char r[16];} string86 = {851984, "\257\300R-\356\251\300YX]$@h\000\000"};
static struct {unsigned f; char r[16];} string87 = {851984, "\257\300\071\221\120\257\300\230\321\322\204\100\150\000\000"};
static struct {unsigned f; char r[16];} string88 = {851984, "\257\300\255\037\131\057\300\313\250\372\104\100\150\000\000"};
static struct {unsigned f; char r[16];} string89 = {851984, "\257\300\343\112\327\166\300\041\341\335\211\100\150\000\000"};
static struct {unsigned f; char r[16];} string90 = {851984, "\257\300\174\107\267\236\300\027\127\205\140\100\150\000\000"};
static struct {unsigned f; char r[16];} string91 = {851984, "\257\300\261\010\310\246\300\337\340\027\051\100\150\000\000"};
static struct {unsigned f; char r[16];} string92 = {851984, "\257\3004+\202s\300vm?\203@h\000\000"};
static struct {unsigned f; char r[16];} string93 = {851984, "\257\300\042\224\360\026\300\243\254\175\360\100\150\000\000"};
static struct {unsigned f; char r[16];} string94 = {851984, "\257\300\233\251\177\064\300\273\157\236\236\100\150\000\000"};
static struct {unsigned f; char r[16];} string95 = {851984, "\257\300\266\221\365\225\300\245\125\334\113\100\150\000\000"};
static struct {unsigned f; char r[16];} string96 = {851984, "\257\300\026\052\121\143\300\234\275\317\206\100\150\000\000"};
static struct {unsigned f; char r[16];} string97 = {851984, "\257\300\216\247\314\015\300\233\126\240\162\100\150\000\000"};
static struct {unsigned f; char r[16];} string98 = {851984, "\257\300\113\175\243\331\300\252\247\212\133\100\150\000\000"};
static struct {unsigned f; char r[16];} string99 = {851984, "\257\300\312\253\314\243\300\267\126\271\104\100\150\000\000"};
static struct {unsigned f; char r[16];} string100 = {851984, "\257\300\254\253\350\355\300\233\126\335\104\100\150\000\000"};
static struct {unsigned f; char r[16];} string101 = {851984, "\257\300\354\332\367\333\300\361\203\205\173\100\150\000\000"};
static struct {unsigned f; char r[16];} string102 = {851984, "\257\300\045\005\337\143\300\252\356\334\244\100\150\000\000"};
static struct {unsigned f; char r[16];} string103 = {851984, "\257\300\054\221\365\223\300\171\063\250\230\100\150\000\000"};
static struct {unsigned f; char r[8];} string238 = {327688, "Clear\000\000"};
static struct {unsigned f; char r[8];} string239 = {327688, "Reset\000\000"};
static struct {unsigned f; char r[4];} string240 = {196612, "Get"};
static struct {unsigned f; char r[8];} string241 = {458760, "GetImpl"};
static struct {unsigned f; char r[12];} string242 = {524300, "PrevFile\000\000\000"};
static struct {unsigned f; char r[8];} string243 = {327688, "Store\000\000"};
static struct {unsigned f; char r[8];} string244 = {262152, "Save\000\000\000"};
static struct {unsigned f; char r[8];} string245 = {262152, "Time\000\000\000"};
static struct {unsigned f; char r[8];} string246 = {327688, "Split\000\000"};
static struct {unsigned f; char r[8];} string247 = {393224, "Places\000"};
static struct {unsigned f; char r[8];} string248 = {393224, "Levels\000"};
static struct {unsigned f; char r[8];} string249 = {262152, "Word\000\000\000"};
static struct {unsigned f; char r[4];} string250 = {196612, "Def"};
static struct {unsigned f; char r[12];} string251 = {524300, "Position\000\000\000"};
static struct {unsigned f; char r[12];} string252 = {589836, "Normalize\000\000"};
static struct {unsigned f; char r[12];} string253 = {589836, "PrevPlace\000\000"};
static struct {unsigned f; char r[12];} string254 = {524300, "Reselect\000\000\000"};
static struct {unsigned f; char r[12];} string255 = {655372, "MoreLevels\000"};
static struct {unsigned f; char r[12];} string256 = {720908, "FewerLevels"};
static struct {unsigned f; char r[12];} string257 = {589836, "AllLevels\000\000"};
static struct {
   word f0[95]; word f95; word f96; word f97; 
   word f98; word f99; word f100; word f101; 
   word f102; word f103; word f104; word f105; 
   word f106; word f107; word f108; word f109; 
   word f110; word f111; word f112; word f113; 
   word f114; word f115; word f116; word f117; 
   word f118; word f119; word f120; word f121; 
   word f122; word f123; word f124; word f125; 
   word f126; word f127; word f128; word f129; 
   word f130; word f131; word f132; word f133; 
   word f134; word f135; word f136; word f137; 
   word f138; word f139; word f140; word f141; 
   word f142; word f143; word f144; word f145; 
   word f146[37]; 
   } globalframe = {
   {0}, (word) StyleKindPrintOp←P1560, 0, (word) StyleKindScreenOp←P1500, 
   0, (word) StyleKindClick←P1440, 0, (word) CreateTiogaMenu←P1380, 
   0, (word) LocalAdjust←P1320, 0, (word) ReloadTable←P1260, 
   0, (word) ChangeTipTables←P1200, 0, (word) ReloadReadonlyTipTable←P1140, 
   0, (word) ReloadTipTable←P1080, 0, (word) SystemTip←P1020, 
   0, (word) Unlock←P960, 0, (word) SpinAndLock←P900, 
   0, (word) FindMenu←P840, 0, (word) LevelMenu←P780, 
   0, (word) ChangeMenu←P720, 0, (word) CleanupAfterDestroy←P660, 
   0, (word) DestroyTEditDocument←P600, 0, (word) GetTEditDocument←P540, 
   0, (word) SetTEditDocument←P480, 0, (word) FileIsMoreRecent←P420, 
   0, (word) SaveTEditDocument←P360, 0, (word) InitViewerDocInternal←P240, 
   0, (word) InitViewerDoc←P180, 0, (word) DocumentFromRope←P120, 
   0, (word) InitTEditDocument←P60, 0, (word) TEditDocumentsImpl←P0, 
   {0}
   };

static void NoName←Q3984()
   {
   register ptr gf←c0391 =  (ptr) &globalframe;
   word var←c50732;
   (* (( (ptr) gf←c0391)+28) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
   (* (( (ptr) gf←c0391)+30) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4);
   (* (( (ptr) gf←c0391)+31) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6);
   (* (( (ptr) gf←c0391)+35) ) = (word) XR←GetTypeIndexS((word) (&string7));
   (* (( (ptr) gf←c0391)+39) ) = (word) XR←GetTypeIndexS((word) (&string8));
   (* (( (ptr) gf←c0391)+40) ) = (word) XR←GetTypeIndex((word) &string9, 0, (word) &string10);
   (* (( (ptr) gf←c0391)+41) ) = (word) XR←GetTypeIndex((word) &string11, 0, (word) &string12);
   (* (( (ptr) gf←c0391)+42) ) = (word) XR←GetTypeIndex((word) &string13, 0, (word) &string6);
   (* (( (ptr) gf←c0391)+45) ) = (word) XR←GetTypeIndex((word) &string14, 0, (word) &string15);
   (* (( (ptr) gf←c0391)+46) ) = (word) XR←GetTypeIndex((word) &string16, 0, (word) &string17);
   (* (( (ptr) gf←c0391)+47) ) = (word) XR←GetTypeIndex((word) &string18, 0, (word) &string19);
   (* (( (ptr) gf←c0391)+48) ) = (word) XR←GetTypeIndexS((word) (&string20));
   (*  (ptr) (( (bPt) gf←c0391)+208) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string21);
   (*  (ptr) (( (bPt) gf←c0391)+212) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string22);
   (*  (ptr) (( (bPt) gf←c0391)+216) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string23);
   (*  (ptr) (( (bPt) gf←c0391)+220) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string24);
   (*  (ptr) (( (bPt) gf←c0391)+224) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string25);
   (*  (ptr) (( (bPt) gf←c0391)+228) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string26);
   (*  (ptr) (( (bPt) gf←c0391)+232) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string27);
   (*  (ptr) (( (bPt) gf←c0391)+236) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string28);
   (*  (ptr) (( (bPt) gf←c0391)+240) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string29);
   (*  (ptr) (( (bPt) gf←c0391)+244) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string30);
   (*  (ptr) (( (bPt) gf←c0391)+248) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string31);
   (*  (ptr) (( (bPt) gf←c0391)+252) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string32);
   (*  (ptr) (( (bPt) gf←c0391)+256) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string33);
   (*  (ptr) (( (bPt) gf←c0391)+260) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string34);
   (*  (ptr) (( (bPt) gf←c0391)+264) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string35);
   (*  (ptr) (( (bPt) gf←c0391)+268) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string36);
   (*  (ptr) (( (bPt) gf←c0391)+272) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string37);
   (*  (ptr) (( (bPt) gf←c0391)+276) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string38);
   (*  (ptr) (( (bPt) gf←c0391)+280) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string39);
   (*  (ptr) (( (bPt) gf←c0391)+284) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string40);
   (*  (ptr) (( (bPt) gf←c0391)+288) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string41);
   (*  (ptr) (( (bPt) gf←c0391)+292) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string42);
   (*  (ptr) (( (bPt) gf←c0391)+296) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string43);
   (*  (ptr) (( (bPt) gf←c0391)+300) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string44);
   (*  (ptr) (( (bPt) gf←c0391)+304) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string45);
   (*  (ptr) (( (bPt) gf←c0391)+308) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string46);
   (*  (ptr) (( (bPt) gf←c0391)+312) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string47);
   (*  (ptr) (( (bPt) gf←c0391)+316) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string48);
   (*  (ptr) (( (bPt) gf←c0391)+320) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string49);
   (*  (ptr) (( (bPt) gf←c0391)+324) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string50);
   (*  (ptr) (( (bPt) gf←c0391)+328) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string51);
   (*  (ptr) (( (bPt) gf←c0391)+332) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string52);
   (*  (ptr) (( (bPt) gf←c0391)+336) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string53);
   (*  (ptr) (( (bPt) gf←c0391)+340) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string54);
   (*  (ptr) (( (bPt) gf←c0391)+344) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string55);
   (*  (ptr) (( (bPt) gf←c0391)+348) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string56);
   (*  (ptr) (( (bPt) gf←c0391)+352) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string57);
   (*  (ptr) (( (bPt) gf←c0391)+356) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string58);
   (*  (ptr) (( (bPt) gf←c0391)+360) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string59);
   (*  (ptr) (( (bPt) gf←c0391)+364) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+42) ), (word) &string60);
   (*  (ptr) (( (bPt) gf←c0391)+368) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string61);
   (*  (ptr) (( (bPt) gf←c0391)+372) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0391)+31) ), (word) &string62);
   (void) XR←DeclareGlobalFrame((word) "TEditDocumentsImpl", &globalframe, (word) XR←GetTypeIndex((word) &string63, 0, (word) &string64)
      , (word) (( (bPt) gf←c0391)+580)/* var←c46828 */ );
   var←c50732 = (word) XR←ImportInterface((word) "Buttons", (word) XR←GetTypeIndexS((word) (&string65)), 4);
   (* (( (ptr) gf←c0391)+155)/* var←c47308 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 76283912);
   var←c50732 = (word) XR←ImportInterface((word) "Convert", (word) XR←GetTypeIndexS((word) (&string66)), 73);
   (* (( (ptr) gf←c0391)+164)/* var←c48396 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 67901187);
   var←c50732 = (word) XR←ImportInterface((word) "ConvertUnsafe", (word) XR←GetTypeIndexS((word) (&string67)), 8);
   (* (( (ptr) gf←c0391)+181)/* var←c50636 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 67372289);
   var←c50732 = (word) XR←ImportInterface((word) "EditSpanSupport", (word) XR←GetTypeIndexS((word) (&string68)), 27);
   (* (( (ptr) gf←c0391)+172)/* var←c49484 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 1316354);
   var←c50732 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string69)), 103);
   (* (( (ptr) gf←c0391)+166)/* var←c48524 */  ) = var←c50732;
   var←c50732 = (word) XR←ImportInterface((word) "Menus", (word) XR←GetTypeIndexS((word) (&string70)), 21);
   (* (( (ptr) gf←c0391)+175)/* var←c49804 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 788483);
   (void) XR←ImportProcS(var←c50732, 68682246);
   (void) XR←ImportProcS(var←c50732, 528642);
   (void) XR←ImportProcS(var←c50732, 67371009);
   (void) XR←ImportProcS(var←c50732, 791299);
   (void) XR←ImportProcS(var←c50732, 67638274);
   (void) XR←ImportProcS(var←c50732, 67375617);
   var←c50732 = (word) XR←ImportInterface((word) "MessageWindow", (word) XR←GetTypeIndexS((word) (&string71)), 7);
   (* (( (ptr) gf←c0391)+158)/* var←c47916 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 0);
   (void) XR←ImportProcS(var←c50732, 512);
   (void) XR←ImportProcS(var←c50732, 524546);
   var←c50732 = (word) XR←ImportInterface((word) "NodeProps", (word) XR←GetTypeIndexS((word) (&string72)), 28);
   (* (( (ptr) gf←c0391)+159)/* var←c48076 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 786435);
   (void) XR←ImportProcS(var←c50732, 67633410);
   var←c50732 = (word) XR←ImportInterface((word) "PFS", (word) XR←GetTypeIndexS((word) (&string73)), 40);
   (* (( (ptr) gf←c0391)+148)/* var←c46956 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 604247809);
   (void) XR←ImportProcS(var←c50732, 67371265);
   (void) XR←ImportProcS(var←c50732, 67109632);
   (void) XR←ImportProcS(var←c50732, 67633154);
   var←c50732 = (word) XR←ImportInterface((word) "PFSNames", (word) XR←GetTypeIndexS((word) (&string74)), 39);
   (* (( (ptr) gf←c0391)+167)/* var←c48588 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 67376129);
   var←c50732 = (word) XR←ImportInterface((word) "Process", (word) XR←GetTypeIndexS((word) (&string75)), 22);
   (* (( (ptr) gf←c0391)+174)/* var←c49708 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 134219776);
   (void) XR←ImportProcS(var←c50732, 526081);
   var←c50732 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string76)), 43);
   (* (( (ptr) gf←c0391)+157)/* var←c47852 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 67896323);
   (void) XR←ImportProcS(var←c50732, 67898627);
   (void) XR←ImportProcS(var←c50732, 68419845);
   (void) XR←ImportProcS(var←c50732, 67901955);
   (void) XR←ImportProcS(var←c50732, 67373569);
   (void) XR←ImportProcS(var←c50732, 67633666);
   (void) XR←ImportProcS(var←c50732, 67903235);
   var←c50732 = (word) XR←ImportInterface((word) &string77, (word) XR←GetTypeIndexS((word) (&string78)), 6);
   (* (( (ptr) gf←c0391)+161)/* var←c48236 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 263169);
   (void) XR←ImportProcS(var←c50732, 525058);
   var←c50732 = (word) XR←ImportInterface((word) &string79, (word) XR←GetTypeIndexS((word) (&string80)), 67);
   (* (( (ptr) gf←c0391)+152)/* var←c47148 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 1327365);
   (void) XR←ImportProcS(var←c50732, 1326853);
   (void) XR←ImportProcS(var←c50732, 1327109);
   (void) XR←ImportProcS(var←c50732, 1327621);
   (void) XR←ImportProcS(var←c50732, 1312005);
   (void) XR←ImportProcS(var←c50732, 1312261);
   (void) XR←ImportProcS(var←c50732, 1325061);
   (void) XR←ImportProcS(var←c50732, 1325317);
   (void) XR←ImportProcS(var←c50732, 1325829);
   (void) XR←ImportProcS(var←c50732, 1326085);
   (void) XR←ImportProcS(var←c50732, 1325573);
   (void) XR←ImportProcS(var←c50732, 1326597);
   (void) XR←ImportProcS(var←c50732, 1326341);
   (void) XR←ImportProcS(var←c50732, 1321477);
   (void) XR←ImportProcS(var←c50732, 1322501);
   (void) XR←ImportProcS(var←c50732, 1323013);
   (void) XR←ImportProcS(var←c50732, 1323525);
   (void) XR←ImportProcS(var←c50732, 1324037);
   (void) XR←ImportProcS(var←c50732, 1321221);
   (void) XR←ImportProcS(var←c50732, 1321989);
   (void) XR←ImportProcS(var←c50732, 524290);
   (void) XR←ImportProcS(var←c50732, 262657);
   (void) XR←ImportProcS(var←c50732, 1324805);
   (void) XR←ImportProcS(var←c50732, 1322245);
   (void) XR←ImportProcS(var←c50732, 1318661);
   (void) XR←ImportProcS(var←c50732, 1320965);
   var←c50732 = (word) XR←ImportInterface((word) "TEditInput", (word) XR←GetTypeIndexS((word) (&string81)), 44);
   (* (( (ptr) gf←c0391)+153)/* var←c47212 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 530690);
   (void) XR←ImportProcS(var←c50732, 269825);
   (void) XR←ImportProcS(var←c50732, 789507);
   var←c50732 = (word) XR←ImportInterface((word) "TEditInputOps", (word) XR←GetTypeIndexS((word) (&string82)), 66);
   (* (( (ptr) gf←c0391)+171)/* var←c49356 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 524290);
   var←c50732 = (word) XR←ImportInterface((word) "TEditLocks", (word) XR←GetTypeIndexS((word) (&string83)), 7);
   (* (( (ptr) gf←c0391)+165)/* var←c48460 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 263425);
   (void) XR←ImportProcS(var←c50732, 68420613);
   (void) XR←ImportProcS(var←c50732, 262913);
   (void) XR←ImportProcS(var←c50732, 67895299);
   var←c50732 = (word) XR←ImportInterface((word) &string84, (word) XR←GetTypeIndexS((word) (&string85)), 12);
   (* (( (ptr) gf←c0391)+149)/* var←c47020 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 68157956);
   (void) XR←ImportProcS(var←c50732, 1311493);
   var←c50732 = (word) XR←ImportInterface((word) "TEditProfile", (word) XR←GetTypeIndexS((word) (&string86)), 19);
   (* (( (ptr) gf←c0391)+178)/* var←c50380 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 791043);
   var←c50732 = (word) XR←ImportInterface((word) "TEditRefresh", (word) XR←GetTypeIndexS((word) (&string87)), 3);
   (* (( (ptr) gf←c0391)+170)/* var←c49100 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 786947);
   var←c50732 = (word) XR←ImportInterface((word) "TEditScrolling", (word) XR←GetTypeIndexS((word) (&string88)), 3);
   (* (( (ptr) gf←c0391)+151)/* var←c47084 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 135528453);
   var←c50732 = (word) XR←ImportInterface((word) "TEditSelection", (word) XR←GetTypeIndexS((word) (&string89)), 68);
   (* (( (ptr) gf←c0391)+150)/* var←c47052 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 263937);
   (void) XR←ImportProcS(var←c50732, 1316101);
   (void) XR←ImportProcS(var←c50732, 67110400);
   (void) XR←ImportProcS(var←c50732, 535298);
   var←c50732 = (word) XR←ImportInterface((word) "TEditTouchup", (word) XR←GetTypeIndexS((word) (&string90)), 6);
   (* (( (ptr) gf←c0391)+168)/* var←c48972 */  ) = var←c50732;
   var←c50732 = (word) XR←ImportInterface((word) "TextEdit", (word) XR←GetTypeIndexS((word) (&string91)), 39);
   (* (( (ptr) gf←c0391)+147)/* var←c46892 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 67380481);
   (void) XR←ImportProcS(var←c50732, 67373313);
   var←c50732 = (word) XR←ImportInterface((word) "TextEditBogus", (word) XR←GetTypeIndexS((word) (&string92)), 1);
   (* (( (ptr) gf←c0391)+173)/* var←c49548 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 67371009);
   var←c50732 = (word) XR←ImportInterface((word) "TextNode", (word) XR←GetTypeIndexS((word) (&string93)), 34);
   (* (( (ptr) gf←c0391)+160)/* var←c48140 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 68162307);
   (void) XR←ImportProcS(var←c50732, 135532292);
   (void) XR←ImportProcS(var←c50732, 135270404);
   (void) XR←ImportProcS(var←c50732, 68686084);
   (void) XR←ImportProcS(var←c50732, 134485761);
   (void) XR←ImportProcS(var←c50732, 67377153);
   var←c50732 = (word) XR←ImportInterface((word) "TiogaIO", (word) XR←GetTypeIndexS((word) (&string94)), 17);
   (* (( (ptr) gf←c0391)+156)/* var←c47468 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 134482433);
   (void) XR←ImportProcS(var←c50732, 67637250);
   (void) XR←ImportProcS(var←c50732, 67635457);
   (void) XR←ImportProcS(var←c50732, 403180546);
   (void) XR←ImportProcS(var←c50732, 403966722);
   (void) XR←ImportProcS(var←c50732, 67372289);
   var←c50732 = (word) XR←ImportInterface((word) "TIPLinking", (word) XR←GetTypeIndexS((word) (&string95)), 1);
   (* (( (ptr) gf←c0391)+180)/* var←c50476 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 67633154);
   var←c50732 = (word) XR←ImportInterface((word) "TIPUser", (word) XR←GetTypeIndexS((word) (&string96)), 4);
   (* (( (ptr) gf←c0391)+179)/* var←c50444 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 67371009);
   var←c50732 = (word) XR←ImportInterface((word) "ViewerBLT", (word) XR←GetTypeIndexS((word) (&string97)), 3);
   (* (( (ptr) gf←c0391)+176)/* var←c49996 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 524546);
   var←c50732 = (word) XR←ImportInterface((word) "ViewerClasses", (word) XR←GetTypeIndexS((word) (&string98)), 1);
   (* (( (ptr) gf←c0391)+163)/* var←c48300 */  ) = var←c50732;
   var←c50732 = (word) XR←ImportInterface((word) "ViewerForkers", (word) XR←GetTypeIndexS((word) (&string99)), 2);
   (* (( (ptr) gf←c0391)+169)/* var←c49004 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 1310725);
   var←c50732 = (word) XR←ImportInterface((word) "ViewerLocks", (word) XR←GetTypeIndexS((word) (&string100)), 9);
   (* (( (ptr) gf←c0391)+177)/* var←c50252 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 263681);
   var←c50732 = (word) XR←ImportInterface((word) "ViewerOps", (word) XR←GetTypeIndexS((word) (&string101)), 43);
   (* (( (ptr) gf←c0391)+154)/* var←c47244 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 1051652);
   (void) XR←ImportProcS(var←c50732, 792579);
   (void) XR←ImportProcS(var←c50732, 67639554);
   (void) XR←ImportProcS(var←c50732, 529922);
   (void) XR←ImportProcS(var←c50732, 267521);
   (void) XR←ImportProcS(var←c50732, 67371265);
   (void) XR←ImportProcS(var←c50732, 793603);
   (void) XR←ImportProcS(var←c50732, 524290);
   var←c50732 = (word) XR←ImportInterface((word) "ViewerTools", (word) XR←GetTypeIndexS((word) (&string102)), 12);
   (* (( (ptr) gf←c0391)+162)/* var←c48268 */  ) = var←c50732;
   (void) XR←ImportProcS(var←c50732, 264961);
   var←c50732 = (word) XR←ExportInterface((word) &string77, (word) XR←GetTypeIndexS((word) (&string78)), 6);
   (* (( (ptr) gf←c0391)+182)/* var←c50764 */  ) = var←c50732;
   (void) XR←ExportVar(var←c50732, 0, (word) (( (bPt) gf←c0391)+376)/* var←c45996 */ );
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+468)/* var←c46380 */ , 68157700);
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+460)/* var←c46348 */ , 262657);
   var←c50732 = (word) XR←ExportInterface((word) &string79, (word) XR←GetTypeIndexS((word) (&string80)), 67);
   (* (( (ptr) gf←c0391)+182)/* var←c50764 */  ) = var←c50732;
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+532)/* var←c46636 */ , 67634178);
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+556)/* var←c46732 */ , 526082);
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+548)/* var←c46700 */ , 788483);
   (void) XR←ExportVar(var←c50732, 36, (word) (( (bPt) gf←c0391)+92)/* findMenu←v5492 */ );
   (void) XR←ExportVar(var←c50732, 37, (word) (( (bPt) gf←c0391)+96)/* levelMenu←v5520 */ );
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+476)/* var←c46412 */ , 1320453);
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+484)/* var←c46444 */ , 1320709);
   var←c50732 = (word) XR←ExportInterface((word) &string84, (word) XR←GetTypeIndexS((word) (&string85)), 12);
   (* (( (ptr) gf←c0391)+182)/* var←c50764 */  ) = var←c50732;
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+540)/* var←c46668 */ , 524290);
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+572)/* var←c46796 */ , 262401);
   (void) XR←ExportVar(var←c50732, 6, (word) (( (bPt) gf←c0391)+76)/* tiogaTIP←v5296 */ );
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+444)/* var←c46284 */ , 1792);
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+436)/* var←c46252 */ , 2048);
   (void) XR←ExportProcS(var←c50732, (word) (( (bPt) gf←c0391)+420)/* var←c46188 */ , 67898115);
   var←c50732 = (word) XR←ExportInterface((word) "TiogaMenuOps", (word) XR←GetTypeIndexS((word) (&string103)), 25);
   (* (( (ptr) gf←c0391)+182)/* var←c50764 */  ) = var←c50732;
   (void) XR←ExportVar(var←c50732, 24, (word) (( (bPt) gf←c0391)+88)/* tiogaMenu←v5464 */ );
   }

static void TEditDocumentsImpl←P0(formal←c0102, formal←c090)
   word formal←c0102;
   word formal←c090;
   {
   register ptr gf←c50796 =  (ptr) &globalframe;
   /* TEditDocumentsImpl: */ 
SOURCE(2304, 20950)
SOURCE(3052, 33)
   {
      word var←c46860;
      var←c46860 = XR←NewObject(248, (* (( (ptr) gf←c50796)+28) ));
      (* (( (ptr) var←c46860)+1) ) = 20;
      (* (( (ptr) gf←c50796)+8)/* stats←v4568 */  ) = var←c46860;
      };
SOURCE(8311, 55)
   {
      word pd104;
      pd104 = (* (( (ptr) (* (( (ptr) gf←c50796)+147)/* var←c46892 */  ))+13) );
      (* (( (ptr) gf←c50796)+10)/* nullNode←v4848 */  ) = (word) ( *( (fPt) ((*  (ptr) pd104 ))))(0, pd104);
      };
SOURCE(16682, 49)
   {
      word var←c46924;
      {
         word pd105;
         pd105 = (* (( (ptr) (* (( (ptr) gf←c50796)+148)/* var←c46956 */  ))+7) );
         var←c46924 = (word) ( *( (fPt) ((*  (ptr) pd105 ))))(pd105);
         };
      {
         word pd106;
         pd106 = (* (( (ptr) (* (( (ptr) gf←c50796)+148)/* var←c46956 */  ))+4) );
         (* (( (ptr) gf←c50796)+17)/* systemDir←v5156 */  ) = (word) ( *( (fPt) ((*  (ptr) pd106 ))))(var←c46924, 0, pd106);
         };
      };
SOURCE(19595, 507)
   {
      word var←c46988;
      var←c46988 = XR←NewObject(80, (* (( (ptr) gf←c50796)+30) ));
      (* (( (ptr) var←c46988)+1) ) = (* (( (ptr) (* (( (ptr) gf←c50796)+149)/* var←c47020 */  ))+7) );
      (* (( (ptr) var←c46988)+2) ) = (* (( (ptr) (* (( (ptr) gf←c50796)+149)/* var←c47020 */  ))+6) );
      (* (( (ptr) var←c46988)+3) ) = (* (( (ptr) (* (( (ptr) gf←c50796)+150)/* var←c47052 */  ))+47) );
      (* (( (ptr) var←c46988)+4) ) = (word) (( (bPt) gf←c50796)+508)/* var←c46540 */ ;
      (* (( (ptr) var←c46988)+5) ) = XR←CheckProc(0);
      (* (( (ptr) var←c46988)+6) ) = (word) (( (bPt) gf←c50796)+524)/* var←c46604 */ ;
      (* (( (ptr) var←c46988)+7) ) = (word) (( (bPt) gf←c50796)+516)/* var←c46572 */ ;
      (* (( (ptr) var←c46988)+8) ) = (word) (( (bPt) gf←c50796)+572)/* var←c46796 */ ;
      (* (( (ptr) var←c46988)+9) ) = (word) (( (bPt) gf←c50796)+540)/* var←c46668 */ ;
      (* (( (ptr) var←c46988)+10) ) = (* (( (ptr) (* (( (ptr) gf←c50796)+151)/* var←c47084 */  ))+4) );
      (* (( (ptr) var←c46988)+11) ) = XR←CheckProc(0);
      (* (( (ptr) var←c46988)+12) ) = XR←CheckProc(0);
      (* (( (ptr) var←c46988)+13) ) = (word) (( (bPt) gf←c50796)+412)/* var←c46156 */ ;
      {
         word tadr107;
         tadr107 = (word) (( (ptr) var←c46988) + 16);
         (*  (ptr) tadr107 ) = ((*  (ptr) tadr107 ) & 3758096384) | 1;
         };
      (* (( (ptr) var←c46988)+18) ) = 26;
      (* (( (ptr) gf←c50796)+21)/* tiogaClass←v5436 */  ) = var←c46988;
      };
SOURCE(20204, 84)
   {
      word var←c47116;
      var←c47116 = XR←NewObject(4, (* (( (ptr) gf←c50796)+35) ));
      (*  (ptr) var←c47116 ) = (* (( (ptr) (* (( (ptr) gf←c50796)+152)/* var←c47148 */  ))+44) );
      (* (( (ptr) gf←c50796)+26)/* preReset←v5576 */  ) = var←c47116;
      };
SOURCE(20290, 84)
   {
      word var←c47180;
      var←c47180 = XR←NewObject(4, (* (( (ptr) gf←c50796)+35) ));
      (*  (ptr) var←c47180 ) = (* (( (ptr) (* (( (ptr) gf←c50796)+152)/* var←c47148 */  ))+35) );
      (* (( (ptr) gf←c50796)+27)/* preStore←v5604 */  ) = var←c47180;
      };
SOURCE(22854, 54)
   {
      word pd108;
      pd108 = (* (( (ptr) (* (( (ptr) gf←c50796)+153)/* var←c47212 */  ))+16) );
      (void) ( *( (fPt) ((*  (ptr) pd108 ))))((* (( (ptr) gf←c50796)+81) ), (word) (( (bPt) gf←c50796)+380)/* var←c46028 */ , 1, pd108)
      ;
      };
SOURCE(22910, 56)
   {
      word pd109;
      pd109 = (* (( (ptr) (* (( (ptr) gf←c50796)+153)/* var←c47212 */  ))+16) );
      (void) ( *( (fPt) ((*  (ptr) pd109 ))))((* (( (ptr) gf←c50796)+74) ), (word) (( (bPt) gf←c50796)+388)/* var←c46060 */ , 1, pd109)
      ;
      };
SOURCE(22968, 17)
   (void) CreateTiogaMenu←P1380();
SOURCE(22987, 16)
   (void) ReloadTipTable←P1080();
SOURCE(23005, 24)
   (void) ReloadReadonlyTipTable←P1140();
SOURCE(23031, 48)
   {
      word pd110;
      pd110 = (* (( (ptr) (* (( (ptr) gf←c50796)+154)/* var←c47244 */  ))+4) );
      (void) ( *( (fPt) ((*  (ptr) pd110 ))))((* (( (ptr) gf←c50796)+72) ), (* (( (ptr) gf←c50796)+21)/* tiogaClass←v5436 */  ), pd110)
      ;
      };
SOURCE(23081, 91)
   {
      word var←c47340;
      {
         W28 var←c47276;
         W35 var←c098;
         XR←FillWords(&(* (W27Pt) (&var←c47276)), 27, 0);
         (* (( (ptr) &var←c47276)+13) ) = (* (( (ptr) gf←c50796)+69) );
         (* (( (ptr) &var←c47276)+17) ) =  (word) -1;
         (* (( (ptr) &var←c47276)+18) ) = 1;
         (* (( (ptr) &var←c47276)+19) ) = 1493172224;
         (* (( (ptr) &var←c47276)+27) ) = 27;
         (*  (W28Pt) (word) &var←c098 ) = var←c47276;
         (* (( (ptr) (word) &var←c098) + 28) ) = (* (( (ptr) (* (( (ptr) gf←c50796)+152)/* var←c47148 */  ))+49) );
         (* (( (ptr) (word) &var←c098) + 29) ) = 0;
         (* (( (ptr) (word) &var←c098) + 30) ) = 0;
         (* (( (ptr) (word) &var←c098) + 31) ) = 0;
         (* (( (ptr) (word) &var←c098) + 32) ) = 0;
         (* (( (ptr) (word) &var←c098) + 33) ) = 0;
         (* (( (ptr) (word) &var←c098) + 34) ) = 1;
         {
            word pd111;
            pd111 = (* (( (ptr) (* (( (ptr) gf←c50796)+155)/* var←c47308 */  ))+4) );
            var←c47340 = (word) ( *( (fPt) ((*  (ptr) pd111 ))))((word) (&var←c098), pd111);
            };
         };
      };
SOURCE(23174, 80)
   {
      word var←c47404;
      {
         W28 var←c47372;
         W35 var←c0101;
         XR←FillWords(&(* (W27Pt) (&var←c47372)), 27, 0);
         (* (( (ptr) &var←c47372)+13) ) = (* (( (ptr) gf←c50796)+58) );
         (* (( (ptr) &var←c47372)+17) ) =  (word) -1;
         (* (( (ptr) &var←c47372)+18) ) = 1;
         (* (( (ptr) &var←c47372)+19) ) = 1493172224;
         (* (( (ptr) &var←c47372)+27) ) = 27;
         (*  (W28Pt) (word) &var←c0101 ) = var←c47372;
         (* (( (ptr) (word) &var←c0101) + 28) ) = (* (( (ptr) (* (( (ptr) gf←c50796)+152)/* var←c47148 */  ))+59) );
         (* (( (ptr) (word) &var←c0101) + 29) ) = 0;
         (* (( (ptr) (word) &var←c0101) + 30) ) = 1;
         (* (( (ptr) (word) &var←c0101) + 31) ) = 0;
         (* (( (ptr) (word) &var←c0101) + 32) ) = 0;
         (* (( (ptr) (word) &var←c0101) + 33) ) = 0;
         (* (( (ptr) (word) &var←c0101) + 34) ) = 1;
         {
            word pd112;
            pd112 = (* (( (ptr) (* (( (ptr) gf←c50796)+155)/* var←c47308 */  ))+4) );
            var←c47404 = (word) ( *( (fPt) ((*  (ptr) pd112 ))))((word) (&var←c0101), pd112);
            };
         };
      };
   }

static void InitTEditDocument←P60(self←v32944)
   word self←v32944;
   {
   word data←v7488;
   /* InitTEditDocument: */ 
SOURCE(3175, 124)
SOURCE(3228, 25)
   data←v7488 = (* (( (ptr) self←v32944)+26) );
SOURCE(3255, 15)
   (* (( (ptr) self←v32944)+26) ) = 0;
SOURCE(3272, 27)
   (void) InitViewerDoc←P180(self←v32944, data←v7488);
   }

static word DocumentFromRope←P120(rope←v6044, topLevel←v6072)
   word rope←v6044;
   word topLevel←v6072;
   {
   register ptr gf←c50828 =  (ptr) &globalframe;
   word var←c6116;
   /* DocumentFromRope: */ 
SOURCE(3303, 15271)
SOURCE(3382, 15192)
   {
      word pd113;
      pd113 = (* (( (ptr) (* (( (ptr) gf←c50828)+156)/* var←c47468 */  ))+9) );
      return((word) ( *( (fPt) ((*  (ptr) pd113 ))))(rope←v6044, pd113));
      };
   }

static void InitViewerDoc←P180(self←v6176, data←v6204)
   word self←v6176;
   word data←v6204;
   {
   /* InitViewerDoc: */ 
SOURCE(3427, 144)
SOURCE(3502, 69)
   (void) InitViewerDocInternal←P240(self←v6176, 0, data←v6204);
   }

static void InitViewerDocInternal←P240(formal←c0474, formal←c0475, data←v6336)
   word formal←c0474;
   word formal←c0475;
   word data←v6336;
   {
   W7 var←c50860;
   /* declaration of self←v6280 skipped */ 
   /* declaration of file←v6308 skipped */ 
   register ptr gf←c50892 =  (ptr) &globalframe;
   /* declaration of tdd←v7544 skipped */ 
   word needInitTddText←v7572 = 0;
   var←c50860.f4/* self←v6280 */  = formal←c0474;
   var←c50860.f5/* file←v6308 */  = formal←c0475;
   /* InitViewerDocInternal: */ 
SOURCE(3577, 14997)
SOURCE(3680, 56)
   var←c50860.f6/* tdd←v7544 */  = XR←Narrow((* (( (ptr) var←c50860.f4/* self←v6280 */ )+26) ), (* (( (ptr) gf←c50892)+45) ))
   ;
SOURCE(3769, 14805)
   if (((* (( (ptr) var←c50860.f4/* self←v6280 */ )+21) ) != 0)) {
SOURCE(3793, 46)
      if ((var←c50860.f6/* tdd←v7544 */  == 0)) {
SOURCE(3809, 30)
         {
            word var←c47500;
            var←c47500 = XR←Narrow(data←v6336, (* (( (ptr) gf←c50892)+45) ));
            var←c50860.f6/* tdd←v7544 */  = var←c47500;
            (* (( (ptr) var←c50860.f4/* self←v6280 */ )+26) ) = var←c47500;
            };
         };
      }
   else {
SOURCE(3929, 14645)
      {
         word var←c47532;
         var←c47532 = data←v6336;
         if ((var←c47532 == 0)) {
            goto lab←L100000;
            };
         if (((* (( (ptr) gf←c50892)+45) ) == XR←GetReferentType(var←c47532))) {
            {
               word d←v7616;
               d←v7616 = var←c47532;
SOURCE(3991, 20)
               (* (( (ptr) var←c50860.f4/* self←v6280 */ )+26) ) = d←v7616;
               var←c50860.f6/* tdd←v7544 */  = d←v7616;
               };
            }
         else {
            lab←L100000: ;
SOURCE(4025, 14549)
            if ((var←c50860.f6/* tdd←v7544 */  == 0)) {
SOURCE(4043, 14531)
               {
                  word var←c47596;
                  word tdd←v45824;
                  word self←v45856;
                  self←v45856 = var←c50860.f4/* self←v6280 */ ;
SOURCE(6174, 551)
                  tdd←v45824 = 0;
SOURCE(6292, 45)
                  {
                     word var←c47628;
                     var←c47628 = XR←NewObject(80, (* (( (ptr) gf←c50892)+45) ));
                     (* (( (ptr) var←c47628)+2) ) = 1023;
                     tdd←v45824 = var←c47628;
                     };
                  {
                     word maxLines←v8124;
                     word lineTable←v8152;
                     {
                        word x114;
                        maxLines←v8124 = (x114 = (IOP2( / ,  (int)(* (( (ptr) self←v45856)+8) ),  (int)8) + 1),
                           MAX((int)(word), 2, x114));
                        };
                     {
                        word var←c47660;
                        word var←c47692;
                        var←c47660 = ((word) maxLines←v8124 * 36);
                        var←c47692 = XR←NewObject((12 + var←c47660), (* (( (ptr) gf←c50892)+46) ));
                        (* (( (ptr) var←c47692)+2) ) = maxLines←v8124;
                        lineTable←v8152 = var←c47692;
                        };
SOURCE(6545, 22)
                     (*  (ptr) lineTable←v8152 ) = 0;
SOURCE(6569, 19)
                     (* (( (ptr) lineTable←v8152)+1) ) = 0;
SOURCE(6590, 25)
                     (* (( (ptr) tdd←v45824)+1) ) = lineTable←v8152;
                     };
SOURCE(6620, 88)
                  if ( ( ((* (( (ptr) self←v45856)+18) ) != 0) ? ((* (( (ptr) self←v45856)+22) ) == 0) : 0 ) ) {
SOURCE(6667, 41)
                     {
                        word pd115;
                        pd115 = (* (( (ptr) (* (( (ptr) gf←c50892)+154)/* var←c47244 */  ))+32) );
                        (void) ( *( (fPt) ((*  (ptr) pd115 ))))(self←v45856, (* (( (ptr) gf←c50892)+22)/* tiogaMenu←v5464 */  ), 0, pd115);
                        };
                     };
SOURCE(6710, 15)
                  (* (( (ptr) self←v45856)+26) ) = tdd←v45824;
SOURCE(6174, 551)
                  var←c47596 = tdd←v45824;
                  var←c50860.f6/* tdd←v7544 */  = var←c47596;
                  };
               };
            };
         };
      };
SOURCE(4086, 14488)
   {
      word var←c47724;
      var←c47724 = (word) SpinAndLock←P900(var←c50860.f6/* tdd←v7544 */ , (* (( (ptr) gf←c50892)+57) ), 0, 0);
      };
SOURCE(4126, 14448)
   if (((* (( (ptr) var←c50860.f4/* self←v6280 */ )+21) ) != 0)) {
SOURCE(4148, 313)
      {
         word otherInit←v7660 = 0;
SOURCE(4189, 103)
         {
            register word v←v7704;
            v←v7704 = (* (( (ptr) var←c50860.f4/* self←v6280 */ )+21) );
            lab←L100005: ;
            if ((v←v7704 != var←c50860.f4/* self←v6280 */ )) {
               }
            else {
               goto lab←L100002;
               };
SOURCE(4253, 39)
            if ( ! ((* (( (bPt) v←v7704)+76) ) & 04)) {
SOURCE(4279, 13)
               otherInit←v7660 = v←v7704;
SOURCE(4294, 4)
               goto lab←L100003;
               };
            v←v7704 = (* (( (ptr) v←v7704)+21) );
            goto lab←L100005;
            lab←L100002: ;
            lab←L100003: ;
            };
SOURCE(4310, 146)
         if ((otherInit←v7660 == 0)) {
SOURCE(4333, 22)
            needInitTddText←v7572 = 1;
            }
         else {
SOURCE(4362, 96)
            {
               word otherTdd←v7748;
SOURCE(4364, 66)
               otherTdd←v7748 = XR←Narrow((* (( (ptr) otherInit←v7660)+26) ), (* (( (ptr) gf←c50892)+45) ));
SOURCE(4432, 24)
               (*  (ptr) var←c50860.f6/* tdd←v7544 */  ) = (*  (ptr) otherTdd←v7748 );
               };
            };
         };
      }
   else {
SOURCE(4470, 14104)
      {
         word var←c47756;
         word var←c47788;
         var←c47756 = data←v6336;
         if ((var←c47756 == 0)) {
            goto lab←L100006;
            };
         var←c47788 = XR←GetReferentType(var←c47756);
         {
            word tc117;
            if (((* (( (ptr) gf←c50892)+45) ) == var←c47788)) {
               {
                  word d←v7792;
                  d←v7792 = var←c47756;
SOURCE(4532, 23)
                  needInitTddText←v7572 = 1;
                  };
               goto endif0116;
               };
            if (((* (( (ptr) gf←c50892)+47) ) == var←c47788)) {
               {
                  word root←v7836;
                  root←v7836 = var←c47756;
SOURCE(4590, 16)
                  (*  (ptr) var←c50860.f6/* tdd←v7544 */  ) = root←v7836;
                  };
               goto endif0116;
               };
            if (((* (( (ptr) gf←c50892)+41) ) == var←c47788)) {
               tc117 =  (word) ( (unsigned) (*(int*)var←c47756<0) == 0);
               }
            else {
               tc117 =  (word) 0;
               };
            if (tc117) {
               {
                  word r←v7880;
                  r←v7880 = var←c47756;
SOURCE(4627, 13947)
                  (*  (ptr) var←c50860.f6/* tdd←v7544 */  ) = (word) DocumentFromRope←P120(r←v7880,  (unsigned) ((* (( (ptr) var←c50860.f4/* self←v6280 */ )+22)
                      ) == 0));
                  };
               goto endif0116;
               };
            if (((* (( (ptr) gf←c50892)+48) ) == var←c47788)) {
               {
                  word t←v7924;
                  t←v7924 = var←c47756;
SOURCE(4695, 13879)
                  {
                     word var←c47820;
                     {
                        word pd118;
                        pd118 = (* (( (ptr) (* (( (ptr) gf←c50892)+157)/* var←c47852 */  ))+35) );
                        var←c47820 = (word) ( *( (fPt) ((*  (ptr) pd118 ))))(t←v7924, 0, 32767, pd118);
                        };
                     (*  (ptr) var←c50860.f6/* tdd←v7544 */  ) = (word) DocumentFromRope←P120(var←c47820,  (unsigned) ((* (( (ptr) var←c50860.f4/* self←v6280 */ )+22)
                         ) == 0));
                     };
                  };
               goto endif0116;
               };
            lab←L100006: ;
SOURCE(4777, 13797)
            if ((data←v6336 == 0)) {
SOURCE(4798, 23)
               needInitTddText←v7572 = 1;
               }
            else {
SOURCE(4842, 13732)
               {
                  word pd119;
                  pd119 = (* (( (ptr) (* (( (ptr) gf←c50892)+156)/* var←c47468 */  ))+9) );
                  (*  (ptr) var←c50860.f6/* tdd←v7544 */  ) = (word) ( *( (fPt) ((*  (ptr) pd119 ))))((* ((( (ptr) gf←c50892)+56)) ), pd119)
                  ;
                  };
               };
            goto endif0116;
            endif0116: ;
            };
         };
      };
SOURCE(4898, 13676)
   if ((0 != needInitTddText←v7572)) {
SOURCE(4924, 13650)
SOURCE(4924, 13650)
      {
         word var←c01;
         {
            word var←c0445;
            var←c0445 = (word) &var←c50860;
            var←c01 = (word) XR←Enable(( ((word)  (fPt) NoName←Q4044) ), ( ((word)  (fPt) NoName←Q4584) ), var←c0445);
            };
         /* removed trivial cond node */ 
         };
      };
SOURCE(5833, 12741)
   if (((*  (ptr) var←c50860.f6/* tdd←v7544 */  ) == 0)) {
SOURCE(5854, 12720)
      (*  (ptr) var←c50860.f6/* tdd←v7544 */  ) = (word) DocumentFromRope←P120((* (( (ptr) gf←c50892)+52) ),  (unsigned) ((* (( (ptr) var←c50860.f4/* self←v6280 */ )+22)
          ) == 0));
      };
SOURCE(5904, 12670)
   {
      word pd120;
      pd120 = (* (( (ptr) (* (( (ptr) gf←c50892)+159)/* var←c48076 */  ))+5) );
      if (((word) ( *( (fPt) ((*  (ptr) pd120 ))))((*  (ptr) var←c50860.f6/* tdd←v7544 */  ), (* (( (ptr) gf←c50892)+53) ), pd120)
       != 0)) {
SOURCE(5965, 17)
         (* (( (ptr) var←c50860.f6/* tdd←v7544 */ )+2) ) = 1;
         };
      };
SOURCE(5984, 26)
   (*  (ptr) (* (( (ptr) var←c50860.f6/* tdd←v7544 */ )+1) ) ) = 0;
SOURCE(6012, 12562)
   {
      word var←c48108;
      {
         word pd121;
         pd121 = (* (( (ptr) (* (( (ptr) gf←c50892)+160)/* var←c48140 */  ))+28) );
         var←c48108 = (word) ( *( (fPt) ((*  (ptr) pd121 ))))((*  (ptr) (var←c50860.f6/* tdd←v7544 */ ) ), pd121);
         };
      {
         word var←c48204;
         word var←c48172;
         {
            word limit122;
            var←c48172 = (* (( (ptr) var←c50860.f6/* tdd←v7544 */ )+1) );
            var←c48204 = (word) (( (W9Pt) (( (bPt) var←c48172)+12))+(
                  limit122 = (* (( (ptr) var←c48172)+2) ),
                  BCK(0, limit122)
                  ));
            };
         (*  (ptr) var←c48204 ) = var←c48108;
         (* (( (ptr) var←c48204)+1) ) = 0;
         };
      };
SOURCE(6071, 49)
   {
      word pd123;
      pd123 = (* (( (ptr) (* (( (ptr) gf←c50892)+161)/* var←c48236 */  ))+7) );
      (void) ( *( (fPt) ((*  (ptr) pd123 ))))(var←c50860.f4/* self←v6280 */ , (*  (ptr) var←c50860.f6/* tdd←v7544 */  ), pd123)
      ;
      };
SOURCE(6122, 33)
   {
      word pd124;
      pd124 = (* (( (ptr) (* (( (ptr) gf←c50892)+162)/* var←c48268 */  ))+15) );
      (void) ( *( (fPt) ((*  (ptr) pd124 ))))(var←c50860.f4/* self←v6280 */ , pd124);
      };
SOURCE(6157, 11)
   (void) Unlock←P960(var←c50860.f6/* tdd←v7544 */ );
   }

static word NoName←Q4044(formal←c0396)
   word formal←c0396;
   {
   register ptr gf←c0395 =  (ptr) &globalframe;
SOURCE(5268, 24)
   {
      word fileName←v7980 = 0;
      W4 wantedUniqueID←v8008;
SOURCE(5294, 47)
      wantedUniqueID←v8008.f0 = 2147483647;
      wantedUniqueID←v8008.f1 = 0;
      wantedUniqueID←v8008.f2 = 0;
      wantedUniqueID←v8008.f3 = 0;
SOURCE(5343, 71)
      if (((*  (ptr) (* (( (ptr) formal←c0396)+6) ) ) != 0)) {
SOURCE(5368, 29)
         {
            word pd125;
            pd125 = (* (( (ptr) (* (( (ptr) gf←c0395)+153)/* var←c47212 */  ))+34) );
            (void) ( *( (fPt) ((*  (ptr) pd125 ))))((*  (ptr) ((* (( (ptr) formal←c0396)+6) )) ), pd125);
            };
SOURCE(5399, 15)
         (*  (ptr) (* (( (ptr) formal←c0396)+6) ) ) = 0;
         };
SOURCE(5417, 13157)
      if (((* (( (ptr) formal←c0396)+5) ) == 0)) {
SOURCE(5449, 13125)
         if (((* (( (ptr) (* (( (ptr) formal←c0396)+4) ))+14) ) != 0)) {
SOURCE(5471, 13103)
            {
               word pd126;
               pd126 = (* (( (ptr) (* (( (ptr) gf←c0395)+148)/* var←c46956 */  ))+5) );
               fileName←v7980 = (word) ( *( (fPt) ((*  (ptr) pd126 ))))((* ((( (ptr) (* (( (ptr) formal←c0396)+4) ))+14)) ), pd126);
               };
            };
         }
      else {
SOURCE(5517, 13057)
         {
            W9 var←c47980;
            {
               word pd127;
               pd127 = (* (( (ptr) (* (( (ptr) gf←c0395)+148)/* var←c46956 */  ))+27) );
               (void) ( *( (fPt) ((*  (ptr) pd127 ))))((word) &var←c47980, (* (( (ptr) formal←c0396)+5) ), pd127);
               };
            wantedUniqueID←v8008 = (*  (W4Pt) (( (ptr) &var←c47980)+2) );
            fileName←v7980 = (*  (ptr) &var←c47980 );
            };
         };
SOURCE(5586, 12988)
      if ((fileName←v7980 != 0)) {
SOURCE(5607, 220)
         {
            word fullFName←v8052 = 0;
            W4 uniqueID←v8080;
SOURCE(5630, 22)
            uniqueID←v8080.f0 = 2147483647;
            uniqueID←v8080.f1 = 0;
            uniqueID←v8080.f2 = 0;
            uniqueID←v8080.f3 = 0;
SOURCE(5654, 12920)
            {
               W6 var←c48044;
               {
                  word pd128;
                  pd128 = (* (( (ptr) (* (( (ptr) gf←c0395)+156)/* var←c47468 */  ))+15) );
                  (void) ( *( (fPt) ((*  (ptr) pd128 ))))((word) &var←c48044, fileName←v7980, wantedUniqueID←v8008, pd128);
                  };
               (*  (ptr) (* (( (ptr) formal←c0396)+6) ) ) = var←c48044.f5;
               uniqueID←v8080 = (*  (W4Pt) (( (ptr) &var←c48044)+1) );
               fullFName←v8052 = var←c48044.f0;
               };
SOURCE(5786, 12788)
            {
               word pd129;
               pd129 = (* (( (ptr) (* (( (ptr) gf←c0395)+148)/* var←c46956 */  ))+4) );
               (* (( (ptr) (* (( (ptr) formal←c0396)+4) ))+14) ) = (word) ( *( (fPt) ((*  (ptr) pd129 ))))(fullFName←v8052, 0, pd129);
               };
            };
         };
      };
   return(0);
   }

static void SaveTEditDocument←P360(formal←c0476, force←v33032)
   word formal←c0476;
   word force←v33032;
   {
   W8 var←c50924;
   /* declaration of self←v33004 skipped */ 
   register ptr gf←c50956 =  (ptr) &globalframe;
   word tdd←v8180;
   /* declaration of root←v8208 skipped */ 
   /* declaration of name←v8236 skipped */ 
   /* declaration of errorMessage←v8264 skipped */ 
   var←c50924.f4/* self←v33004 */  = formal←c0476;
   /* SaveTEditDocument: */ 
SOURCE(6748, 11826)
SOURCE(6801, 56)
   tdd←v8180 = XR←Narrow((* (( (ptr) var←c50924.f4/* self←v33004 */ )+26) ), (* (( (ptr) gf←c50956)+45) ));
SOURCE(6859, 18)
   var←c50924.f5/* root←v8208 */  = 0;
SOURCE(6879, 22)
   var←c50924.f6/* name←v8236 */  = (* (( (ptr) var←c50924.f4/* self←v33004 */ )+14) );
SOURCE(6903, 24)
   var←c50924.f7/* errorMessage←v8264 */  = 0;
SOURCE(6930, 11644)
   {
      word pd130;
      pd130 = (* (( (ptr) (* (( (ptr) gf←c50956)+157)/* var←c47852 */  ))+14) );
      if (( (int)(word) ( *( (fPt) ((*  (ptr) pd130 ))))(var←c50924.f6/* name←v8236 */ , pd130) ==  (int)0)) {
SOURCE(6956, 11618)
         if ((0 == force←v33032)) {
SOURCE(6971, 11603)
            {
               word var←c0155;
               var←c0155 = (* (( (ptr) gf←c50956)+59) );
               (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c50956)+163)/* var←c48300 */  ))+4) ), (word) &var←c0155);
               };
            };
SOURCE(7021, 11553)
         {
            word var←c48332;
            {
               word var←c48364;
               (* (( (ptr) gf←c50956)+9)/* number←v4764 */  ) = ((* (( (ptr) gf←c50956)+9)/* number←v4764 */  ) + 1);
               {
                  word pd131;
                  pd131 = (* (( (ptr) (* (( (ptr) gf←c50956)+164)/* var←c48396 */  ))+27) );
                  var←c48364 = (word) ( *( (fPt) ((*  (ptr) pd131 ))))((* (( (ptr) gf←c50956)+9)/* number←v4764 */  ), 8, 1, pd131);
                  };
               {
                  word pd132;
                  pd132 = (* (( (ptr) (* (( (ptr) gf←c50956)+157)/* var←c47852 */  ))+5) );
                  var←c48332 = (word) ( *( (fPt) ((*  (ptr) pd132 ))))((* (( (ptr) gf←c50956)+60) ), var←c48364, (* (( (ptr) gf←c50956)+61)
                      ), 0, 0, pd132);
                  };
               };
            {
               word pd133;
               pd133 = (* (( (ptr) (* (( (ptr) gf←c50956)+157)/* var←c47852 */  ))+30) );
               var←c50924.f6/* name←v8236 */  = (word) ( *( (fPt) ((*  (ptr) pd133 ))))(var←c48332, 0, 2147483647, pd133);
               };
            };
         };
      };
SOURCE(7127, 11447)
   if ((0 != (* (( (ptr) tdd←v8180)+6) ))) {
SOURCE(7148, 11426)
      {
         word var←c0158;
         var←c0158 = (* (( (ptr) gf←c50956)+62) );
         (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c50956)+163)/* var←c48300 */  ))+4) ), (word) &var←c0158);
         };
      };
SOURCE(7205, 11369)
   if ((0 == force←v33032)) {
SOURCE(7222, 21)
      {
         word pd134;
         pd134 = (* (( (ptr) (* (( (ptr) gf←c50956)+158)/* var←c47916 */  ))+4) );
         (void) ( *( (fPt) ((*  (ptr) pd134 ))))(pd134);
         };
SOURCE(7245, 41)
      {
         word pd135;
         pd135 = (* (( (ptr) (* (( (ptr) gf←c50956)+152)/* var←c47148 */  ))+6) );
         (void) ( *( (fPt) ((*  (ptr) pd135 ))))(var←c50924.f4/* self←v33004 */ , pd135);
         };
SOURCE(7288, 11286)
      {
         word var←c48428;
         var←c48428 = (word) SpinAndLock←P900(tdd←v8180, (* (( (ptr) gf←c50956)+63) ), 0, 0);
         };
SOURCE(7372, 15)
      var←c50924.f5/* root←v8208 */  = (*  (ptr) tdd←v8180 );
SOURCE(7389, 11)
      (void) Unlock←P960(tdd←v8180);
SOURCE(7456, 11118)
      {
         word var←c48492;
         word pd136;
         pd136 = (* (( (ptr) (* (( (ptr) gf←c50956)+165)/* var←c48460 */  ))+4) );
         var←c48492 = (word) ( *( (fPt) ((*  (ptr) pd136 ))))(var←c50924.f5/* root←v8208 */ , (* (( (ptr) gf←c50956)+63) ), 0, pd136)
         ;
         };
      }
   else {
SOURCE(7518, 15)
      var←c50924.f5/* root←v8208 */  = (*  (ptr) tdd←v8180 );
      };
SOURCE(7538, 11036)
SOURCE(7538, 11036)
   {
      word var←c02;
      {
         word var←c0446;
         var←c0446 = (word) &var←c50924;
         var←c02 = (word) XR←Enable(( ((word)  (fPt) NoName←Q4104) ), ( ((word)  (fPt) NoName←Q4524) ), var←c0446);
         };
      /* removed trivial cond node */ 
      };
SOURCE(8087, 38)
   if ((0 == force←v33032)) {
SOURCE(8102, 23)
      {
         word pd137;
         pd137 = (* (( (ptr) (* (( (ptr) gf←c50956)+165)/* var←c48460 */  ))+7) );
         (void) ( *( (fPt) ((*  (ptr) pd137 ))))(var←c50924.f5/* root←v8208 */ , pd137);
         };
      };
SOURCE(8127, 10447)
   if ((var←c50924.f7/* errorMessage←v8264 */  != 0)) {
SOURCE(8152, 10422)
      {
         word var←c0161;
         var←c0161 = var←c50924.f7/* errorMessage←v8264 */ ;
         (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c50956)+163)/* var←c48300 */  ))+4) ), (word) &var←c0161);
         };
      };
   }

static word NoName←Q4104(formal←c0399)
   word formal←c0399;
   {
   register ptr gf←c0398 =  (ptr) &globalframe;
SOURCE(7689, 72)
   {
      word fileName←v8308;
      word fullFName←v8336;
      W6 var←c0165;
      word newFile←v8364;
      word newName←v8392;
SOURCE(7689, 72)
      {
         word var←c48556;
         {
            word pd138;
            pd138 = (* (( (ptr) (* (( (ptr) gf←c0398)+148)/* var←c46956 */  ))+5) );
            var←c48556 = (word) ( *( (fPt) ((*  (ptr) pd138 ))))((* ((( (ptr) formal←c0399)+6)) ), pd138);
            };
         {
            word pd139;
            pd139 = (* (( (ptr) (* (( (ptr) gf←c0398)+167)/* var←c48588 */  ))+24) );
            fileName←v8308 = (word) ( *( (fPt) ((*  (ptr) pd139 ))))(var←c48556, pd139);
            };
         };
SOURCE(7763, 62)
      {
         word pd140;
         pd140 = (* (( (ptr) (* (( (ptr) gf←c0398)+156)/* var←c47468 */  ))+16) );
         (void) ( *( (fPt) ((*  (ptr) pd140 ))))((word) &var←c0165, fileName←v8308, (* (( (ptr) formal←c0399)+5) ), pd140);
         };
      fullFName←v8336 = var←c0165.f0;
SOURCE(7827, 43)
      {
         word pd141;
         pd141 = (* (( (ptr) (* (( (ptr) gf←c0398)+148)/* var←c46956 */  ))+4) );
         newFile←v8364 = (word) ( *( (fPt) ((*  (ptr) pd141 ))))(fullFName←v8336, 0, pd141);
         };
SOURCE(7872, 72)
      {
         word var←c48620;
         {
            word pd142;
            pd142 = (* (( (ptr) (* (( (ptr) gf←c0398)+167)/* var←c48588 */  ))+24) );
            var←c48620 = (word) ( *( (fPt) ((*  (ptr) pd142 ))))(fullFName←v8336, pd142);
            };
         {
            word pd143;
            pd143 = (* (( (ptr) (* (( (ptr) gf←c0398)+148)/* var←c46956 */  ))+4) );
            newName←v8392 = (word) ( *( (fPt) ((*  (ptr) pd143 ))))(var←c48620, 0, pd143);
            };
         };
SOURCE(7946, 114)
      {
         register word v←v8436;
         v←v8436 = (* (( (ptr) formal←c0399)+4) );
         lab←L100018: ;
SOURCE(7992, 16)
         (* (( (ptr) v←v8436)+13) ) = newName←v8392;
SOURCE(8010, 16)
         (* (( (ptr) v←v8436)+14) ) = newFile←v8364;
SOURCE(8028, 32)
         {
            word var←c48652;
            var←c48652 = (* (( (ptr) v←v8436)+21) );
            if ((var←c48652 == 0) || (var←c48652 == (* (( (ptr) formal←c0399)+4) ))) {
SOURCE(8060, 4)
               goto lab←L100016;
               };
            };
         v←v8436 = (* (( (ptr) v←v8436)+21) );
         goto lab←L100018;
         lab←L100016: ;
         };
      };
   return(0);
   }

static word FileIsMoreRecent←P420(root←v6512, file←v6540)
   word root←v6512;
   word file←v6540;
   {
   word var←c6584;
   /* FileIsMoreRecent: */ 
SOURCE(8204, 101)
SOURCE(8291, 14)
   return(0);
   }

static void SetTEditDocument←P480(self←v33092, data←v33120, finalise←v33148, op←v33176)
   word self←v33092;
   word data←v33120;
   word finalise←v33148;
   word op←v33176;
   {
   register ptr gf←c50988 =  (ptr) &globalframe;
   /* SetTEditDocument: */ 
SOURCE(8368, 10206)
SOURCE(8412, 10162)
   if ( ! ((* (( (bPt) self←v33092)+77) ) & 0100)) {
SOURCE(8439, 10135)
      {
         word var←c48684;
         var←c48684 = (* (( (ptr) self←v33092)+26) );
         if ((var←c48684 == 0)) {
            goto lab←L100019;
            };
         if (((* (( (ptr) gf←c50988)+45) ) == XR←GetReferentType(var←c48684))) {
            {
               word tdd←v8480;
               tdd←v8480 = var←c48684;
SOURCE(8508, 10066)
               {
                  word var←c48716;
                  var←c48716 = op←v33176;
                  if ((((var←c48716 == 0) || (var←c48716 == (* (( (ptr) gf←c50988)+65) ))) || (var←c48716 == (* (( (ptr) gf←c50988)+66) ))) || (var←c48716 == (* (
                     ( (ptr) gf←c50988)+67) ))) {
SOURCE(8583, 2152)
                     {
                        word hint←v8524 = 1;
                        word rope←v8552 = 0;
SOURCE(8638, 22)
                        if (((* (( (ptr) self←v33092)+21) ) != 0)) {
SOURCE(8660, 5)
                           (void) XR←RaiseUnnamedError();
                           };
SOURCE(8690, 41)
                        {
                           word pd145;
                           pd145 = (* (( (ptr) (* (( (ptr) gf←c50988)+152)/* var←c47148 */  ))+6) );
                           (void) ( *( (fPt) ((*  (ptr) pd145 ))))(self←v33092, pd145);
                           };
SOURCE(8733, 9841)
                        {
                           word var←c48748;
                           var←c48748 = (word) SpinAndLock←P900(tdd←v8480, (* (( (ptr) gf←c50988)+68) ), 0, 0);
                           };
SOURCE(8776, 9798)
                        {
                           word var←c48780;
                           var←c48780 = op←v33176;
                           if ((var←c48780 == 0) || (var←c48780 == (* (( (ptr) gf←c50988)+67) ))) {
SOURCE(8819, 1334)
/*1*/   {
/*1*/      word root←v8596;
/*1*/      word node←v8624;
/*1*/      word format←v8652;
/*1*/      word child←v8680;
SOURCE(8821, 37)
/*1*/      root←v8596 = (*  (ptr) tdd←v8480 );
SOURCE(8860, 33)
/*1*/      node←v8624 = root←v8596;
SOURCE(8895, 26)
/*1*/      format←v8652 = (* (( (ptr) root←v8596)+8) );
SOURCE(8923, 66)
/*1*/      child←v8680 =  ( (node←v8624 == 0) ? 0 : (* (( (ptr) node←v8624)+2) ) ) ;
SOURCE(8991, 44)
/*1*/      if ((data←v33120 == 0)) {
/*1*/         rope←v8552 = (* (( (ptr) gf←c50988)+52) );
/*1*/         }
/*1*/      else {
/*1*/         {
/*1*/            word var←c48812;
/*1*/            var←c48812 = XR←Narrow(data←v33120, (* (( (ptr) gf←c50988)+41) ));
/*1*/            if ((var←c48812 == 0)) {
/*1*/               goto lab←L100020;
/*1*/               };
/*1*/            if (( (unsigned) (*(int*)var←c48812<0) == 0)) {
/*1*/               goto lab←L100020;
/*1*/               };
/*1*/            (void) XR←RaiseError(XR←NarrowFault, 0);
/*1*/            lab←L100020: ;
/*1*/            rope←v8552 = var←c48812;
/*1*/            };
/*1*/         };
SOURCE(9725, 425)
/*1*/      {
/*1*/         word prefix←v8724 = 0;
/*1*/         word postfix←v8752 = 0;
SOURCE(9749, 8825)
/*1*/         if ((op←v33176 == (* (( (ptr) gf←c50988)+67) ))) {
SOURCE(9782, 8792)
/*1*/            {
/*1*/               word pd146;
/*1*/               pd146 = (* (( (ptr) (* (( (ptr) gf←c50988)+159)/* var←c48076 */  ))+5) );
/*1*/               prefix←v8724 = (word) ( *( (fPt) ((*  (ptr) pd146 ))))(root←v8596, (* (( (ptr) gf←c50988)+70) ), pd146);
/*1*/               };
SOURCE(9825, 8749)
/*1*/            {
/*1*/               word pd147;
/*1*/               pd147 = (* (( (ptr) (* (( (ptr) gf←c50988)+159)/* var←c48076 */  ))+5) );
/*1*/               postfix←v8752 = (word) ( *( (fPt) ((*  (ptr) pd147 ))))(root←v8596, (* (( (ptr) gf←c50988)+71) ), pd147);
/*1*/               };
/*1*/            };
SOURCE(9873, 25)
/*1*/         {
/*1*/            word pd148;
/*1*/            pd148 = (* (( (ptr) (* (( (ptr) gf←c50988)+153)/* var←c47212 */  ))+34) );
/*1*/            (void) ( *( (fPt) ((*  (ptr) pd148 ))))(root←v8596, pd148);
/*1*/            };
SOURCE(9900, 8674)
/*1*/         (*  (ptr) tdd←v8480 ) = (word) DocumentFromRope←P120(rope←v8552,  (unsigned) ((* (( (ptr) self←v33092)+22) ) == 0));
SOURCE(9954, 190)
/*1*/         if ((op←v33176 == (* (( (ptr) gf←c50988)+67) ))) {
SOURCE(9987, 63)
/*1*/            if ((prefix←v8724 != 0)) {
SOURCE(10006, 44)
/*1*/               {
/*1*/                  word pd149;
/*1*/                  pd149 = (* (( (ptr) (* (( (ptr) gf←c50988)+159)/* var←c48076 */  ))+4) );
/*1*/                  (void) ( *( (fPt) ((*  (ptr) pd149 ))))((*  (ptr) tdd←v8480 ), (* (( (ptr) gf←c50988)+70) ), prefix←v8724, pd149);
/*1*/                  };
/*1*/               };
SOURCE(10052, 66)
/*1*/            if ((postfix←v8752 != 0)) {
SOURCE(10072, 46)
/*1*/               {
/*1*/                  word pd150;
/*1*/                  pd150 = (* (( (ptr) (* (( (ptr) gf←c50988)+159)/* var←c48076 */  ))+4) );
/*1*/                  (void) ( *( (fPt) ((*  (ptr) pd150 ))))((*  (ptr) tdd←v8480 ), (* (( (ptr) gf←c50988)+71) ), postfix←v8752, pd150);
/*1*/                  };
/*1*/               };
SOURCE(10120, 24)
/*1*/            (* (( (ptr) (*  (ptr) tdd←v8480 ))+8) ) = format←v8652;
/*1*/            };
/*1*/         };
/*1*/      };
/*1*/   }
                           else {
/*1*/   if ((var←c48780 == (* (( (ptr) gf←c50988)+65) ))) {
SOURCE(10174, 144)
/*1*/      {
/*1*/         word info←v8808;
SOURCE(10176, 46)
/*1*/         info←v8808 = XR←Narrow(data←v33120, (* (( (ptr) gf←c50988)+40) ));
SOURCE(10224, 29)
/*1*/         {
/*1*/            word pd151;
/*1*/            pd151 = (* (( (ptr) (* (( (ptr) gf←c50988)+153)/* var←c47212 */  ))+34) );
/*1*/            (void) ( *( (fPt) ((*  (ptr) pd151 ))))((*  (ptr) (tdd←v8480) ), pd151);
/*1*/            };
SOURCE(10255, 8319)
/*1*/         {
/*1*/            W2 var←c48844;
/*1*/            var←c48844.f0 = (*  (ptr) info←v8808 );
/*1*/            var←c48844.f1 = (* (( (ptr) info←v8808)+1) );
/*1*/            {
/*1*/               word pd152;
/*1*/               pd152 = (* (( (ptr) (* (( (ptr) gf←c50988)+156)/* var←c47468 */  ))+13) );
/*1*/               (*  (ptr) tdd←v8480 ) = (word) ( *( (fPt) ((*  (ptr) pd152 ))))(var←c48844, pd152);
/*1*/               };
/*1*/            };
/*1*/         };
/*1*/      }
/*1*/   else {
/*1*/      if ((var←c48780 == (* (( (ptr) gf←c50988)+66) ))) {
SOURCE(10339, 93)
/*1*/         {
/*1*/            word root←v8852;
SOURCE(10341, 41)
/*1*/            root←v8852 = XR←Narrow(data←v33120, (* (( (ptr) gf←c50988)+47) ));
SOURCE(10384, 29)
/*1*/            {
/*1*/               word pd153;
/*1*/               pd153 = (* (( (ptr) (* (( (ptr) gf←c50988)+153)/* var←c47212 */  ))+34) );
/*1*/               (void) ( *( (fPt) ((*  (ptr) pd153 ))))((*  (ptr) (tdd←v8480) ), pd153);
/*1*/               };
SOURCE(10415, 17)
/*1*/            (*  (ptr) tdd←v8480 ) = root←v8852;
/*1*/            };
/*1*/         };
/*1*/      };
/*1*/   };
                           };
SOURCE(10444, 26)
                        (*  (ptr) (* (( (ptr) tdd←v8480)+1) ) ) = 0;
SOURCE(10472, 8102)
                        {
                           word var←c48876;
                           {
/*1*/   word pd154;
/*1*/   pd154 = (* (( (ptr) (* (( (ptr) gf←c50988)+160)/* var←c48140 */  ))+28) );
/*1*/   var←c48876 = (word) ( *( (fPt) ((*  (ptr) pd154 ))))((*  (ptr) (tdd←v8480) ), pd154);
/*1*/   };
                           {
/*1*/   word var←c48940;
/*1*/   word var←c48908;
/*1*/   {
/*1*/      word limit155;
/*1*/      var←c48908 = (* (( (ptr) tdd←v8480)+1) );
/*1*/      var←c48940 = (word) (( (W9Pt) (( (bPt) var←c48908)+12))+(
/*1*/            limit155 = (* (( (ptr) var←c48908)+2) ),
/*1*/            BCK(0, limit155)
/*1*/            ));
/*1*/      };
/*1*/   (*  (ptr) var←c48940 ) = var←c48876;
/*1*/   (* (( (ptr) var←c48940)+1) ) = 0;
/*1*/   };
                           };
SOURCE(10531, 48)
                        {
                           word pd156;
                           pd156 = (* (( (ptr) (* (( (ptr) gf←c50988)+161)/* var←c48236 */  ))+7) );
                           (void) ( *( (fPt) ((*  (ptr) pd156 ))))(self←v33092, (*  (ptr) tdd←v8480 ), pd156);
                           };
SOURCE(10581, 23)
                        (* (( (ptr) self←v33092) + 19) ) &= 4227858431;
SOURCE(10626, 11)
                        (void) Unlock←P960(tdd←v8480);
SOURCE(10639, 91)
                        if ((0 != finalise←v33148)) {
SOURCE(10658, 72)
                           {
/*1*/   word pd157;
/*1*/   pd157 = (* (( (ptr) (* (( (ptr) gf←c50988)+169)/* var←c49004 */  ))+4) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd157 ))))(self←v33092, hint←v8524, 1, (*  (ptr) (* (( (ptr) (* (( (ptr) gf←c50988)+168)/* var←c48972 */  ))+4)
/*1*/       ) ), 1, pd157);
/*1*/   };
                           };
                        };
                     goto endif0144;
                     };
                  if ((var←c48716 == (* (( (ptr) gf←c50988)+73) ))) {
SOURCE(10750, 7824)
                     if ( ( ( ! ((* (( (bPt) self←v33092)+76) ) & 020)) ?  ! ((* (( (bPt) self←v33092)+77) ) & 0100) : 0 ) ) {
SOURCE(10797, 1151)
                        {
                           word tSel←v8896;
                           word sel←v8924;
                           word start←v8952;
                           word length←v8980;
SOURCE(10799, 54)
                           {
/*1*/   word pd158;
/*1*/   pd158 = (* (( (ptr) (* (( (ptr) gf←c50988)+150)/* var←c47052 */  ))+10) );
/*1*/   tSel←v8896 = (word) ( *( (fPt) ((*  (ptr) pd158 ))))(pd158);
/*1*/   };
SOURCE(10855, 38)
                           sel←v8924 = XR←Narrow(data←v33120, (* (( (ptr) gf←c50988)+39) ));
SOURCE(10915, 7659)
                           {
/*1*/   word var←c49036;
/*1*/   word pd159;
/*1*/   pd159 = (* (( (ptr) (* (( (ptr) gf←c50988)+165)/* var←c48460 */  ))+8) );
/*1*/   var←c49036 = (word) ( *( (fPt) ((*  (ptr) pd159 ))))(tdd←v8480, (* (( (ptr) gf←c50988)+68) ), 0, 0, 0, pd159);
/*1*/   };
SOURCE(10977, 7597)
                           if ((sel←v8924 == 0)) {
SOURCE(10993, 356)
/*1*/   {
/*1*/      W2 loc1←v9024;
/*1*/      W2 loc2←v9052;
/*1*/      word offset←v9080;
SOURCE(10995, 60)
/*1*/      {
/*1*/         word pd160;
/*1*/         pd160 = (* (( (ptr) (* (( (ptr) gf←c50988)+160)/* var←c48140 */  ))+28) );
/*1*/         loc1←v9024.f0 = (word) ( *( (fPt) ((*  (ptr) pd160 ))))((*  (ptr) (tdd←v8480) ), pd160);
/*1*/         };
/*1*/      loc1←v9024.f1 = 0;
SOURCE(11057, 58)
/*1*/      {
/*1*/         word pd161;
/*1*/         pd161 = (* (( (ptr) (* (( (ptr) gf←c50988)+160)/* var←c48140 */  ))+27) );
/*1*/         (void) ( *( (fPt) ((*  (ptr) pd161 ))))((word) &loc2←v9052, (*  (ptr) tdd←v8480 ), pd161);
/*1*/         };
SOURCE(11117, 81)
/*1*/      {
/*1*/         word pd162;
/*1*/         pd162 = (* (( (ptr) (* (( (ptr) gf←c50988)+160)/* var←c48140 */  ))+21) );
/*1*/         offset←v9080 = (word) ( *( (fPt) ((*  (ptr) pd162 ))))(loc1←v9024, loc2←v9052, 1, 1, pd162);
/*1*/         };
SOURCE(11200, 122)
/*1*/      if (((* (( (ptr) tdd←v8480)+11) ) != 0)) {
SOURCE(11226, 14)
/*1*/         start←v8952 = offset←v9080;
SOURCE(11242, 11)
/*1*/         length←v8980 = 0;
/*1*/         }
/*1*/      else {
SOURCE(11295, 9)
/*1*/         start←v8952 = 0;
SOURCE(11306, 16)
/*1*/         length←v8980 = offset←v9080;
/*1*/         };
/*1*/      };
/*1*/   }
                           else {
SOURCE(11358, 17)
/*1*/   start←v8952 = (*  (ptr) sel←v8924 );
SOURCE(11377, 20)
/*1*/   length←v8980 = (* (( (ptr) sel←v8924)+1) );
/*1*/   };
SOURCE(11400, 7174)
                           {
/*1*/   word pd163;
/*1*/   pd163 = (* (( (ptr) (* (( (ptr) gf←c50988)+160)/* var←c48140 */  ))+20) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd163 ))))((word) (( (bPt) tSel←v8896)+8), (*  (ptr) tdd←v8480 ), start←v8952, 1, 1, pd163);
/*1*/   };
SOURCE(11488, 7086)
                           {
/*1*/   word pd164;
/*1*/   pd164 = (* (( (ptr) (* (( (ptr) gf←c50988)+160)/* var←c48140 */  ))+19) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd164 ))))((word) (( (bPt) tSel←v8896)+44), (*  (W2Pt) (( (ptr) tSel←v8896)+2) ), (MAX((int)(word), (length←v8980 - 1), 0)
/*1*/         ), 1, 1, pd164);
/*1*/   };
SOURCE(11601, 31)
                           {
/*1*/   word pd165;
/*1*/   pd165 = (* (( (ptr) (* (( (ptr) gf←c50988)+165)/* var←c48460 */  ))+9) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd165 ))))(tdd←v8480, pd165);
/*1*/   };
SOURCE(11634, 51)
                           if (( (int)length←v8980 ==  (int)0)) {
/*1*/   (* (( (ptr) tSel←v8896)+22) ) = 0;
/*1*/   }
                           else {
/*1*/   (* (( (ptr) tSel←v8896)+22) ) = 1;
/*1*/   };
SOURCE(11687, 18)
                           (*  (ptr) tSel←v8896 ) = self←v33092;
SOURCE(11707, 15)
                           (* (( (ptr) tSel←v8896)+1) ) = tdd←v8480;
SOURCE(11724, 51)
                           if (( (int)length←v8980 ==  (int)0)) {
/*1*/   (* (( (ptr) tSel←v8896)+24) ) = 0;
/*1*/   }
                           else {
/*1*/   (* (( (ptr) tSel←v8896)+24) ) = 1;
/*1*/   };
SOURCE(11777, 25)
                           (* (( (ptr) tSel←v8896)+26) ) = 1;
SOURCE(11804, 30)
                           (* (( (ptr) tSel←v8896)+25) ) = 0;
SOURCE(11836, 39)
                           {
/*1*/   word pd166;
/*1*/   pd166 = (* (( (ptr) (* (( (ptr) gf←c50988)+150)/* var←c47052 */  ))+25) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd166 ))))(tSel←v8896, 0, 0, 0, 1, pd166);
/*1*/   };
SOURCE(11877, 25)
                           {
/*1*/   word pd167;
/*1*/   pd167 = (* (( (ptr) (* (( (ptr) gf←c50988)+150)/* var←c47052 */  ))+11) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd167 ))))(tSel←v8896, pd167);
/*1*/   };
SOURCE(11904, 42)
                           {
/*1*/   word pd168;
/*1*/   pd168 = (* (( (ptr) (* (( (ptr) gf←c50988)+170)/* var←c49100 */  ))+6) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd168 ))))(self←v33092, 0, 0, pd168);
/*1*/   };
                           };
                        };
                     goto endif0144;
                     };
                  if ((var←c48716 == (* (( (ptr) gf←c50988)+75) ))) {
SOURCE(11966, 6608)
                     {
                        word var←c49132;
                        word pd169;
                        pd169 = (* (( (ptr) (* (( (ptr) gf←c50988)+165)/* var←c48460 */  ))+8) );
                        var←c49132 = (word) ( *( (fPt) ((*  (ptr) pd169 ))))(tdd←v8480, (* (( (ptr) gf←c50988)+68) ), 0, 0, 0, pd169);
                        };
SOURCE(12028, 27)
                     (* (( (ptr) self←v33092)+12) ) = (* (( (ptr) gf←c50988)+18)/* readonlyTIP←v5268 */  );
SOURCE(12057, 19)
                     (* (( (ptr) tdd←v8480)+6) ) = 1;
SOURCE(12078, 31)
                     {
                        word pd170;
                        pd170 = (* (( (ptr) (* (( (ptr) gf←c50988)+165)/* var←c48460 */  ))+9) );
                        (void) ( *( (fPt) ((*  (ptr) pd170 ))))(tdd←v8480, pd170);
                        };
                     goto endif0144;
                     };
                  if ((var←c48716 == (* (( (ptr) gf←c50988)+76) ))) {
SOURCE(12130, 6444)
                     {
                        word var←c49164;
                        word pd171;
                        pd171 = (* (( (ptr) (* (( (ptr) gf←c50988)+165)/* var←c48460 */  ))+8) );
                        var←c49164 = (word) ( *( (fPt) ((*  (ptr) pd171 ))))(tdd←v8480, (* (( (ptr) gf←c50988)+68) ), 0, 0, 0, pd171);
                        };
SOURCE(12192, 24)
                     (* (( (ptr) self←v33092)+12) ) = (* (( (ptr) gf←c50988)+19)/* tiogaTIP←v5296 */  );
SOURCE(12218, 20)
                     (* (( (ptr) tdd←v8480)+6) ) = 0;
SOURCE(12240, 31)
                     {
                        word pd172;
                        pd172 = (* (( (ptr) (* (( (ptr) gf←c50988)+165)/* var←c48460 */  ))+9) );
                        (void) ( *( (fPt) ((*  (ptr) pd172 ))))(tdd←v8480, pd172);
                        };
                     goto endif0144;
                     };
                  endif0144: ;
                  };
               };
            }
         else {
            lab←L100019: ;
            };
         };
      };
   }

static word GetTEditDocument←P540(self←v33236, op←v33264)
   word self←v33236;
   word op←v33264;
   {
   W9 var←c51020;
   register ptr gf←c51052 =  (ptr) &globalframe;
   word data←v33308;
   /* declaration of var←c49196 skipped */ 
   /* declaration of var←c49228 skipped */ 
   /* GetTEditDocument: */ 
SOURCE(12301, 6273)
   {
      word tmpAddr173;
      tmpAddr173 = (word) (( (ptr) &var←c51020)+4)/* var←c49196 */ ;
      (*  (ptr) tmpAddr173 ) = ( ((word)  (fPt) DoSelPos←P2988) );
      (* (( (ptr) tmpAddr173) + 1) ) = 1;
      };
   {
      word tmpAddr174;
      tmpAddr174 = (word) (( (ptr) &var←c51020)+6)/* var←c49228 */ ;
      (*  (ptr) tmpAddr174 ) = ( ((word)  (fPt) DoSelChars←P2772) );
      (* (( (ptr) tmpAddr174) + 1) ) = 1;
      };
SOURCE(12301, 6273)
   data←v33308 = 0;
SOURCE(12345, 10)
   data←v33308 = 0;
SOURCE(12357, 6217)
   {
      word var←c49260;
      var←c49260 = (* (( (ptr) self←v33236)+26) );
      if ((var←c49260 == 0)) {
         goto lab←L100021;
         };
      if (((* (( (ptr) gf←c51052)+45) ) == XR←GetReferentType(var←c49260))) {
         {
            word tdd←v9124;
            tdd←v9124 = var←c49260;
SOURCE(12424, 6150)
            {
               word var←c49292;
               var←c49292 = op←v33264;
               if ((var←c49292 == 0)) {
SOURCE(12446, 6128)
                  {
                     word pd176;
                     pd176 = (* (( (ptr) (* (( (ptr) gf←c51052)+156)/* var←c47468 */  ))+20) );
                     data←v33308 = (word) ( *( (fPt) ((*  (ptr) pd176 ))))((*  (ptr) tdd←v9124 ), 0, pd176);
                     };
                  goto endif0175;
                  };
               if ((var←c49292 == (* (( (ptr) gf←c51052)+65) ))) {
SOURCE(12507, 126)
                  {
                     W2 pair←v9168;
SOURCE(12509, 45)
                     {
                        word pd177;
                        pd177 = (* (( (ptr) (* (( (ptr) gf←c51052)+156)/* var←c47468 */  ))+14) );
                        (void) ( *( (fPt) ((*  (ptr) pd177 ))))((word) &pair←v9168, (*  (ptr) tdd←v9124 ), pd177);
                        };
SOURCE(12556, 6018)
                     {
                        word var←c49324;
                        var←c49324 = XR←NewObject(8, (* (( (ptr) gf←c51052)+40) ));
                        (*  (ptr) var←c49324 ) = pair←v9168.f0;
                        (* (( (ptr) var←c49324)+1) ) = pair←v9168.f1;
                        data←v33308 = var←c49324;
                        };
                     };
                  goto endif0175;
                  };
               if ((var←c49292 == (* (( (ptr) gf←c51052)+77) ))) {
SOURCE(12649, 623)
                  {
                     /* declaration of rope←v9212 skipped */ 
SOURCE(12653, 21)
                     (* (( (ptr) &var←c51020)+8)/* rope←v9212 */  ) = 0;
SOURCE(13184, 45)
                     {
                        word pd178;
                        pd178 = (* (( (ptr) (* (( (ptr) gf←c51052)+171)/* var←c49356 */  ))+4) );
                        (void) ( *( (fPt) ((*  (ptr) pd178 ))))((word) (( (bPt) &var←c51020)+24)/* var←c49228 */ , 0, pd178);
                        };
SOURCE(13231, 26)
                     if (((* (( (ptr) &var←c51020)+8)/* rope←v9212 */  ) == 0)) {
SOURCE(13248, 9)
                        (* (( (ptr) &var←c51020)+8)/* rope←v9212 */  ) = (* (( (ptr) gf←c51052)+52) );
                        };
SOURCE(13259, 11)
                     data←v33308 = (* (( (ptr) &var←c51020)+8)/* rope←v9212 */  );
                     };
                  goto endif0175;
                  };
               if ((var←c49292 == (* (( (ptr) gf←c51052)+73) ))) {
SOURCE(13286, 373)
                  {
                     /* declaration of sel←v9648 skipped */ 
SOURCE(13290, 52)
                     (* (( (ptr) &var←c51020)+8)/* sel←v9648 */  ) = XR←NewObject(16, (* (( (ptr) gf←c51052)+39) ));
SOURCE(13602, 43)
                     {
                        word pd179;
                        pd179 = (* (( (ptr) (* (( (ptr) gf←c51052)+171)/* var←c49356 */  ))+4) );
                        (void) ( *( (fPt) ((*  (ptr) pd179 ))))((word) (( (bPt) &var←c51020)+16)/* var←c49196 */ , 0, pd179);
                        };
SOURCE(13647, 10)
                     data←v33308 = (* (( (ptr) &var←c51020)+8)/* sel←v9648 */  );
                     };
                  goto endif0175;
                  };
               endif0175: ;
               };
            };
         }
      else {
         lab←L100021: ;
         };
      };
SOURCE(12301, 6273)
   return(data←v33308);
   }

static void DoSelChars←P2772(root←v9316, tSel←v9344, formal←c51148)
   word root←v9316;
   word tSel←v9344;
   word formal←c51148;
   {
   W7 var←c51084;
   register ptr gf←c51116 =  (ptr) &globalframe;
   /* declaration of var←c49420 skipped */ 
   formal←c51148 = (formal←c51148 - 24);
   var←c51084.f0 = formal←c51148;
   /* DoSelChars: */ 
SOURCE(12676, 18)
   {
      word tmpAddr180;
      tmpAddr180 = (word) (( (ptr) &var←c51084)+4)/* var←c49420 */ ;
      (*  (ptr) tmpAddr180 ) = ( ((word)  (fPt) SelConcat←P2880) );
      (* (( (ptr) tmpAddr180) + 1) ) = 1;
      };
SOURCE(12757, 5817)
   if ( ( ((*  (ptr) tSel←v9344 ) != 0) ? ((* (( (ptr) tSel←v9344)+22) ) != 0) : 0 ) ) {
SOURCE(12812, 366)
      {
         /* declaration of newline←v9372 skipped */ 
SOURCE(12814, 50)
         {
            word pd181;
            pd181 = (* (( (ptr) (* (( (ptr) gf←c51116)+147)/* var←c46892 */  ))+41) );
            var←c51084.f6/* newline←v9372 */  = (word) ( *( (fPt) ((*  (ptr) pd181 ))))(root←v9316, pd181);
            };
SOURCE(13112, 5462)
         {
            W4 var←c49452;
            (*  (W2Pt) &var←c49452 ) = (*  (W2Pt) (( (ptr) tSel←v9344)+2) );
            (*  (W2Pt) (( (ptr) &var←c49452)+2) ) = (*  (W2Pt) (( (ptr) tSel←v9344)+11) );
            {
               word pd182;
               pd182 = (* (( (ptr) (* (( (ptr) gf←c51116)+172)/* var←c49484 */  ))+26) );
               (void) ( *( (fPt) ((*  (ptr) pd182 ))))(var←c49452, (word) (( (bPt) &var←c51084)+16)/* var←c49420 */ , pd182);
               };
            };
         };
      };
   }

static word SelConcat←P2880(node←v9476, start←v9504, len←v9532, formal←c51212)
   word node←v9476;
   word start←v9504;
   word len←v9532;
   word formal←c51212;
   {
   register ptr gf←c51180 =  (ptr) &globalframe;
   word stop←v9576;
   word nrope←v9604;
   formal←c51212 = (formal←c51212 - 16);
   /* SelConcat: */ 
SOURCE(12866, 17)
SOURCE(12953, 71)
   {
      word var←c49516;
      {
         word pd183;
         pd183 = (* (( (ptr) (* (( (ptr) gf←c51180)+173)/* var←c49548 */  ))+4) );
         var←c49516 = (word) ( *( (fPt) ((*  (ptr) pd183 ))))(node←v9476, pd183);
         };
      {
         word pd184;
         pd184 = (* (( (ptr) (* (( (ptr) gf←c51180)+157)/* var←c47852 */  ))+17) );
         nrope←v9604 = (word) ( *( (fPt) ((*  (ptr) pd184 ))))(var←c49516, start←v9504, len←v9532, pd184);
         };
      };
SOURCE(13026, 5548)
   {
      word pd185;
      if (((* (( (ptr) (*  (ptr) formal←c51212 ))+8) ) == 0)) {
         (* (( (ptr) (*  (ptr) formal←c51212 ))+8) ) = nrope←v9604;
         }
      else {
         pd185 = (* (( (ptr) (* (( (ptr) gf←c51180)+157)/* var←c47852 */  ))+5) );
         (* (( (ptr) (*  (ptr) formal←c51212 ))+8) ) = (word) ( *( (fPt) ((*  (ptr) pd185 ))))((* (( (ptr) (*  (ptr) formal←c51212 ))+8)
             ), (* (( (ptr) formal←c51212)+6) ), nrope←v9604, 0, 0, pd185);
         };
      };
SOURCE(13093, 14)
   return(0);
   }

static void DoSelPos←P2988(root←v9752, tSel←v9780, formal←c51276)
   word root←v9752;
   word tSel←v9780;
   word formal←c51276;
   {
   register ptr gf←c51244 =  (ptr) &globalframe;
   formal←c51276 = (formal←c51276 - 16);
   /* DoSelPos: */ 
SOURCE(13344, 16)
SOURCE(13423, 5151)
   {
      word var←c49580;
      {
         word pd186;
         pd186 = (* (( (ptr) (* (( (ptr) gf←c51244)+160)/* var←c48140 */  ))+23) );
         var←c49580 = (word) ( *( (fPt) ((*  (ptr) pd186 ))))((*  (W2Pt) (( (ptr) tSel←v9780)+2) ), 1, 1, pd186);
         };
      (*  (ptr) (* (( (ptr) formal←c51276)+8) ) ) = var←c49580;
      };
SOURCE(13499, 5075)
   {
      word var←c49612;
      {
         word pd187;
         pd187 = (* (( (ptr) (* (( (ptr) gf←c51244)+160)/* var←c48140 */  ))+21) );
         var←c49612 = (word) ( *( (fPt) ((*  (ptr) pd187 ))))((*  (W2Pt) (( (ptr) tSel←v9780)+2) ), (*  (W2Pt) (( (ptr) tSel←v9780)+11)
             ), 1, 1, pd187);
         };
      (* (( (ptr) (* (( (ptr) formal←c51276)+8) ))+1) ) = var←c49612;
      };
   }

static void DestroyTEditDocument←P600(self←v33368)
   word self←v33368;
   {
   register ptr gf←c51308 =  (ptr) &globalframe;
   /* DestroyTEditDocument: */ 
SOURCE(13683, 4891)
SOURCE(13735, 32)
   {
      word pd188;
      pd188 = (* (( (ptr) (* (( (ptr) gf←c51308)+161)/* var←c48236 */  ))+8) );
      (void) ( *( (fPt) ((*  (ptr) pd188 ))))(self←v33368, pd188);
      };
SOURCE(13769, 30)
   if (((* (( (ptr) self←v33368)+21) ) != 0)) {
SOURCE(13793, 6)
      return;
      };
SOURCE(13854, 4720)
SOURCE(13855, 4719)
   {
      W2 var←c49644;
      {
         word var←c49676;
         var←c49676 = XR←Narrow((* (( (ptr) self←v33368)+26) ), (* (( (ptr) gf←c51308)+45) ));
         {
            W2 var←c0243;
            word var←c0242;
            var←c0242 = XR←ExtensionAlloc(7);
            {
               word tmpAddr189;
               tmpAddr189 = (word) var←c0242;
               (*  (ptr) tmpAddr189 ) = ( ((word)  (fPt) NoName←Q4644) );
               (* (( (ptr) tmpAddr189) + 1) ) = 0;
               (* (( (ptr) tmpAddr189) + 2) ) = (word) (( (bPt) gf←c51308)+500)/* var←c46508 */ ;
               (* (( (ptr) tmpAddr189) + 3) ) = 0;
               (* (( (ptr) tmpAddr189) + 4) ) = self←v33368;
               (* (( (ptr) tmpAddr189) + 5) ) = (* (( (ptr) self←v33368)+14) );
               (* (( (ptr) tmpAddr189) + 6) ) = var←c49676;
               };
            (void) XR←Fork((word) &var←c0243, var←c0242);
            var←c49644 = var←c0243;
            };
         };
      {
         word pd190;
         pd190 = (* (( (ptr) (* (( (ptr) gf←c51308)+174)/* var←c49708 */  ))+11) );
         (void) ( *( (fPt) ((*  (ptr) pd190 ))))(var←c49644, pd190);
         };
      };
   }

static void CleanupAfterDestroy←P660(self←v6644, file←v6672, tdd←v6700)
   word self←v6644;
   word file←v6672;
   word tdd←v6700;
   {
   register ptr gf←c51340 =  (ptr) &globalframe;
   word root←v9808 = 0;
   /* CleanupAfterDestroy: */ 
SOURCE(13938, 4636)
SOURCE(14072, 24)
   if ((tdd←v6700 == 0)) {
SOURCE(14090, 6)
      return;
      };
SOURCE(14141, 4433)
   {
      word var←c49740;
      var←c49740 = (word) SpinAndLock←P900(tdd←v6700, (* (( (ptr) gf←c51340)+78) ), 0, 0);
      };
SOURCE(14188, 15)
   root←v9808 = (*  (ptr) tdd←v6700 );
SOURCE(14205, 149)
   if ( (  ( ((* (( (bPt) self←v6644)+76) ) & 04) ?  ! ((* (( (bPt) self←v6644)+77) ) & 020) : 0 )  ? (file←v6672 != 0) : 0 ) ) {
SOURCE(14269, 60)
      {
         word pd191;
         pd191 = (* (( (ptr) (* (( (ptr) gf←c51340)+152)/* var←c47148 */  ))+4) );
         (void) ( *( (fPt) ((*  (ptr) pd191 ))))(file←v6672, root←v9808, pd191);
         };
      }
   else {
SOURCE(14329, 25)
      {
         word pd192;
         pd192 = (* (( (ptr) (* (( (ptr) gf←c51340)+153)/* var←c47212 */  ))+34) );
         (void) ( *( (fPt) ((*  (ptr) pd192 ))))(root←v9808, pd192);
         };
      };
SOURCE(14356, 13)
   (void) Unlock←P960(tdd←v6700);
   }

static void ChangeMenu←P720(viewer←v6760, subMenu←v6788)
   word viewer←v6760;
   word subMenu←v6788;
   {
   W6 var←c51372;
   register ptr gf←c51404 =  (ptr) &globalframe;
   /* declaration of var←c49772 skipped */ 
   word menu←v9852;
   word found←v9880 = 0;
   word numLines←v9908;
   word newLines←v9936;
   /* ChangeMenu: */ 
SOURCE(14373, 4201)
   {
      word tmpAddr193;
      tmpAddr193 = (word) (( (ptr) &var←c51372)+4)/* var←c49772 */ ;
      (*  (ptr) tmpAddr193 ) = ( ((word)  (fPt) Priority←P3348) );
      (* (( (ptr) tmpAddr193) + 1) ) = 1;
      };
SOURCE(14451, 30)
   menu←v9852 = (* (( (ptr) viewer←v6760)+16) );
SOURCE(14504, 55)
   {
      word pd194;
      pd194 = (* (( (ptr) (* (( (ptr) gf←c51404)+175)/* var←c49804 */  ))+22) );
      numLines←v9908 = (word) ( *( (fPt) ((*  (ptr) pd194 ))))(menu←v9852, pd194);
      };
SOURCE(14561, 35)
   newLines←v9936 = numLines←v9908;
SOURCE(14598, 3976)
   {
      register word i←v9980 = 1;
      word var←c49836;
      if (( (int)i←v9980 >=  (int)numLines←v9908)) {
         goto lab←L100022;
         };
      lab←L100025: ;
SOURCE(14640, 3934)
      {
         word pd196;
         {
            word pd195;
            pd195 = (* (( (ptr) (* (( (ptr) gf←c51404)+175)/* var←c49804 */  ))+24) );
            var←c49836 = (* (( (ptr) ( *( (fPt) ((*  (ptr) pd195 ))))(menu←v9852, i←v9980, pd195))+5) );
            };
         pd196 = (* (( (ptr) (* (( (ptr) gf←c51404)+157)/* var←c47852 */  ))+8) );
         if ((0 != (word) ( *( (fPt) ((*  (ptr) pd196 ))))(var←c49836, (* (( (ptr) subMenu←v6788)+5) ), 1, pd196))) {
SOURCE(14724, 3850)
            {
               register word j←v10024;
               j←v10024 = i←v9980;
               if (( (int)j←v10024 >=  (int)numLines←v9908)) {
                  goto lab←L100026;
                  };
               j←v10024 = (j←v10024 + 1);
               if (( (int)j←v10024 ==  (int)numLines←v9908)) {
                  goto lab←L100026;
                  };
               lab←L100029: ;
SOURCE(14766, 3808)
               {
                  word var←c49868;
                  {
                     word pd197;
                     pd197 = (* (( (ptr) (* (( (ptr) gf←c51404)+175)/* var←c49804 */  ))+24) );
                     var←c49868 = (word) ( *( (fPt) ((*  (ptr) pd197 ))))(menu←v9852, j←v10024, pd197);
                     };
                  {
                     word pd198;
                     pd198 = (* (( (ptr) (* (( (ptr) gf←c51404)+175)/* var←c49804 */  ))+23) );
                     (void) ( *( (fPt) ((*  (ptr) pd198 ))))(menu←v9852, BCK((j←v10024 - 1), 5), var←c49868, pd198);
                     };
                  };
               j←v10024 = (j←v10024 + 1);
               if ((j←v10024 < numLines←v9908)) {
                  goto lab←L100029;
                  };
               lab←L100026: ;
               };
SOURCE(14825, 21)
            newLines←v9936 = BCK((newLines←v9936 - 1), 5);
SOURCE(14848, 12)
            found←v9880 = 1;
SOURCE(14862, 6)
            goto lab←L100023;
            };
         };
      i←v9980 = (i←v9980 + 1);
      if ((i←v9980 < numLines←v9908)) {
         goto lab←L100025;
         };
      lab←L100022: ;
      lab←L100023: ;
      };
SOURCE(14880, 3694)
   if ((0 == found←v9880)) {
SOURCE(14898, 754)
      {
         word newLast←v10096;
SOURCE(15237, 61)
         newLast←v10096 = (MIN( (unsigned) , numLines←v9908, 4));
SOURCE(15300, 21)
         newLines←v9936 = BCK((newLines←v9936 + 1), 5);
SOURCE(15323, 3251)
         {
            register word i←v10272 = 1;
            word var←c49900;
            word m1←v45920;
            word m2←v45948;
            if (( (int)i←v10272 >=  (int)numLines←v9908)) {
               goto lab←L100030;
               };
            lab←L100033: ;
SOURCE(15365, 3209)
            m1←v45920 = subMenu←v6788;
            {
               word pd199;
               pd199 = (* (( (ptr) (* (( (ptr) gf←c51404)+175)/* var←c49804 */  ))+24) );
               m2←v45948 = (word) ( *( (fPt) ((*  (ptr) pd199 ))))(menu←v9852, i←v10272, pd199);
               };
SOURCE(15196, 3378)
            var←c49900 =  (unsigned) ( (int)(word) Priority←P3348(m1←v45920, (word) (( (bPt) &var←c51372)+16)/* var←c49772 */ ) >  (int)(word) Priority←P3348(
               m2←v45948, (word) (( (bPt) &var←c51372)+16)/* var←c49772 */ ));
            if (((0 != var←c49900)
            )) {
SOURCE(15419, 3155)
               {
                  register word j←v10316;
                  j←v10316 = newLast←v10096;
                  if (( (int)i←v10272 >=  (int)j←v10316)) {
                     goto lab←L100035;
                     };
                  lab←L100038: ;
SOURCE(15471, 3103)
                  {
                     word var←c49964;
                     {
                        word pd200;
                        pd200 = (* (( (ptr) (* (( (ptr) gf←c51404)+175)/* var←c49804 */  ))+24) );
                        var←c49964 = (word) ( *( (fPt) ((*  (ptr) pd200 ))))(menu←v9852, BCK((j←v10316 - 1), 5), pd200);
                        };
                     {
                        word pd201;
                        pd201 = (* (( (ptr) (* (( (ptr) gf←c51404)+175)/* var←c49804 */  ))+23) );
                        (void) ( *( (fPt) ((*  (ptr) pd201 ))))(menu←v9852, j←v10316, var←c49964, pd201);
                        };
                     };
                  j←v10316 = (j←v10316 - 1);
                  if ((i←v10272 < j←v10316)) {
                     goto lab←L100038;
                     };
                  lab←L100035: ;
                  };
SOURCE(15530, 31)
               {
                  word pd202;
                  pd202 = (* (( (ptr) (* (( (ptr) gf←c51404)+175)/* var←c49804 */  ))+23) );
                  (void) ( *( (fPt) ((*  (ptr) pd202 ))))(menu←v9852, i←v10272, subMenu←v6788, pd202);
                  };
SOURCE(15563, 12)
               found←v9880 = 1;
SOURCE(15577, 6)
               goto lab←L100031;
               };
            i←v10272 = (i←v10272 + 1);
            if ((i←v10272 < numLines←v9908)) {
               goto lab←L100033;
               };
            lab←L100030: ;
            lab←L100031: ;
            };
SOURCE(15595, 55)
         if ((0 == found←v9880)) {
SOURCE(15613, 37)
            {
               word pd203;
               pd203 = (* (( (ptr) (* (( (ptr) gf←c51404)+175)/* var←c49804 */  ))+23) );
               (void) ( *( (fPt) ((*  (ptr) pd203 ))))(menu←v9852, newLast←v10096, subMenu←v6788, pd203);
               };
            };
         };
      };
SOURCE(15655, 47)
   {
      word pd204;
      pd204 = (* (( (ptr) (* (( (ptr) gf←c51404)+176)/* var←c49996 */  ))+5) );
      (void) ( *( (fPt) ((*  (ptr) pd204 ))))(viewer←v6760, newLines←v9936, pd204);
      };
   }

static word Priority←P3348(m←v10420, formal←c51468)
   word m←v10420;
   word formal←c51468;
   {
   register ptr gf←c51436 =  (ptr) &globalframe;
   word var←c10464;
   formal←c51468 = (formal←c51468 - 16);
   /* Priority: */ 
SOURCE(14983, 16)
SOURCE(15041, 152)
   {
      word pd205;
      word pd206;
      pd205 = (* (( (ptr) (* (( (ptr) gf←c51436)+157)/* var←c47852 */  ))+8) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd205 ))))((* (( (ptr) m←v10420)+5) ), (* (( (ptr) gf←c51436)+79) ), 1, pd205))) {
         return(1);
         }
      else {
         pd206 = (* (( (ptr) (* (( (ptr) gf←c51436)+157)/* var←c47852 */  ))+8) );
         if ((0 != (word) ( *( (fPt) ((*  (ptr) pd206 ))))((* (( (ptr) m←v10420)+5) ), (* (( (ptr) gf←c51436)+80) ), 1, pd206))) {
            return(0);
            }
         else {
            return( (word) -1);
            };
         };
      };
   }

static void LevelMenu←P780(parent←v33428, clientData←v33456, mouseButton←v33484, shift←v33512, control←v33540)
   word parent←v33428;
   word clientData←v33456;
   word mouseButton←v33484;
   word shift←v33512;
   word control←v33540;
   {
   register ptr gf←c51500 =  (ptr) &globalframe;
   /* LevelMenu: */ 
SOURCE(15708, 75)
SOURCE(15745, 38)
   (void) ChangeMenu←P720(parent←v33428, (* (( (ptr) gf←c51500)+24)/* levelMenu←v5520 */  ));
   }

static void FindMenu←P840(parent←v33600, clientData←v33628, mouseButton←v33656, shift←v33684, control←v33712)
   word parent←v33600;
   word clientData←v33628;
   word mouseButton←v33656;
   word shift←v33684;
   word control←v33712;
   {
   register ptr gf←c51532 =  (ptr) &globalframe;
   /* FindMenu: */ 
SOURCE(15786, 73)
SOURCE(15822, 37)
   (void) ChangeMenu←P720(parent←v33600, (* (( (ptr) gf←c51532)+23)/* findMenu←v5492 */  ));
   }

static word SpinAndLock←P900(formal←c0477, formal←c0478, formal←c0479, formal←c0480)
   word formal←c0477;
   word formal←c0478;
   word formal←c0479;
   word formal←c0480;
   {
   W9 var←c51564;
   /* declaration of tdd←v6848 skipped */ 
   /* declaration of who←v6876 skipped */ 
   /* declaration of interrupt←v6904 skipped */ 
   /* declaration of defer←v6932 skipped */ 
   register ptr gf←c51596 =  (ptr) &globalframe;
   /* declaration of var←c03 skipped */ 
   word ok←v6976;
   (* (( (ptr) &var←c51564)+4)/* tdd←v6848 */  ) = formal←c0477;
   (* (( (ptr) &var←c51564)+5)/* who←v6876 */  ) = formal←c0478;
   (* (( (ptr) &var←c51564)+6)/* interrupt←v6904 */  ) = formal←c0479;
   (* (( (ptr) &var←c51564)+7)/* defer←v6932 */  ) = formal←c0480;
   /* SpinAndLock: */ 
SOURCE(15883, 2691)
   (void) (XR←MonitorEntry((word) (( (bPt) gf←c51596)+16)/* LOCK←v4456 */ ));
SOURCE(16032, 2542)
   {
      word var←c04;
      {
         word var←c0447;
         var←c0447 = (word) &var←c51564;
         var←c04 = (word) XR←Enable(( ((word)  (fPt) NoName←Q4164) ), ( ((word)  (fPt) NoName←Q4464) ), var←c0447);
         };
      /* removed trivial cond node */ 
      };
   return((* (( (ptr) &var←c51564)+8)/* var←c03 */  ));
   }

static word NoName←Q4164(formal←c0417)
   word formal←c0417;
   {
   register ptr gf←c0416 =  (ptr) &globalframe;
SOURCE(16055, 51)
   {
      W2 myProcess←v10492;
SOURCE(16055, 51)
      {
         word pd207;
         pd207 = (* (( (ptr) (* (( (ptr) gf←c0416)+174)/* var←c49708 */  ))+12) );
         (void) ( *( (fPt) ((*  (ptr) pd207 ))))((word) (&myProcess←v10492), pd207);
         };
SOURCE(16108, 321)
      if ( ! XR←EqualWords(&myProcess←v10492, (( (ptr) (* (( (ptr) formal←c0417)+4) ))+12), 2)) {
SOURCE(16144, 105)
         if ((0 != (* (( (ptr) formal←c0417)+6) ))) {
SOURCE(16164, 50)
            if ( ( (0 != (* (( (ptr) formal←c0417)+7) )) ? ((* (( (ptr) (* (( (ptr) formal←c0417)+4) ))+16) ) > 0) : 0 ) ) {
SOURCE(16200, 14)
               (void) (XR←MonitorExit((word) (( (bPt) gf←c0416)+16)/* LOCK←v4456 */ ));
               (* (( (ptr) formal←c0417)+8) ) = 0;
               return(1);
               };
SOURCE(16216, 33)
            {
               word idx208;
               (* (( (ptr) (* (( (ptr) formal←c0417)+4) ))+16) ) = (
                  idx208 = (word) ((* (( (ptr) (* (( (ptr) formal←c0417)+4) ))+16) ) + 1),
                  BCK(idx208, 64)
                  );
               };
            };
SOURCE(16252, 33)
         lab←L100043: ;
         if (((* (( (ptr) (* (( (ptr) formal←c0417)+4) ))+15) ) > 0)) {
            }
         else {
            goto lab←L100041;
            };
SOURCE(16272, 13)
         (void) (XR←Wait((word) (( (bPt) gf←c0416)+16)/* LOCK←v4456 */ , (word) (( (bPt) gf←c0416)+44)/* unlocked←v5072 */ ));
         goto lab←L100043;
         lab←L100041: ;
SOURCE(16296, 27)
         (*  (W2Pt) (( (ptr) (* (( (ptr) formal←c0417)+4) ))+12) ) = myProcess←v10492;
SOURCE(16325, 13)
         (* (( (ptr) (* (( (ptr) formal←c0417)+4) ))+14) ) = (* (( (ptr) formal←c0417)+5) );
SOURCE(16380, 49)
         if ((0 != (* (( (ptr) formal←c0417)+6) ))) {
SOURCE(16398, 31)
            {
               word idx209;
               (* (( (ptr) (* (( (ptr) formal←c0417)+4) ))+16) ) = (
                  idx209 = (word) ((* (( (ptr) (* (( (ptr) formal←c0417)+4) ))+16) ) - 1),
                  BCK(idx209, 64)
                  );
               };
            };
         };
SOURCE(16434, 21)
      {
         word idx210;
         (* (( (ptr) (* (( (ptr) formal←c0417)+4) ))+15) ) = (
            idx210 = (word) ((* (( (ptr) (* (( (ptr) formal←c0417)+4) ))+15) ) + 1),
            BCK(idx210, 64)
            );
         };
SOURCE(16457, 13)
      (void) (XR←MonitorExit((word) (( (bPt) gf←c0416)+16)/* LOCK←v4456 */ ));
      (* (( (ptr) formal←c0417)+8) ) = 1;
      return(1);
      };
   /* c2c skipped dead code */ 
   }

static void Unlock←P960(formal←c0481)
   word formal←c0481;
   {
   W5 var←c51628;
   /* declaration of tdd←v7036 skipped */ 
   register ptr gf←c51660 =  (ptr) &globalframe;
   var←c51628.f4/* tdd←v7036 */  = formal←c0481;
   /* Unlock: */ 
SOURCE(16476, 2098)
   (void) (XR←MonitorEntry((word) (( (bPt) gf←c51660)+16)/* LOCK←v4456 */ ));
SOURCE(16545, 2029)
   {
      word var←c0448;
      var←c0448 = (word) &var←c51628;
       (void) (word) XR←Enable(( ((word)  (fPt) NoName←Q4224) ), ( ((word)  (fPt) NoName←Q4404) ), var←c0448);
      };
SOURCE(16476, 2098)
   (void) (XR←MonitorExit((word) (( (bPt) gf←c51660)+16)/* LOCK←v4456 */ ));
   return;
   }

static word NoName←Q4224(formal←c0420)
   word formal←c0420;
   {
   register ptr gf←c0419 =  (ptr) &globalframe;
   W2 var←c0290;
   word var←c50060;
SOURCE(16568, 2006)
   {
      word pd211;
      pd211 = (* (( (ptr) (* (( (ptr) gf←c0419)+174)/* var←c49708 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd211 ))))((word) (&var←c0290), pd211);
      };
   if ( ! XR←EqualWords((( (ptr) (* (( (ptr) formal←c0420)+4) ))+12), &var←c0290, 2)) {
SOURCE(16615, 5)
      (void) XR←RaiseUnnamedError();
      };
SOURCE(16622, 56)
   {
      word idx212;
      var←c50060 = (
         idx212 = (word) ((* (( (ptr) (* (( (ptr) formal←c0420)+4) ))+15) ) - 1),
         BCK(idx212, 64)
         );
      };
   (* (( (ptr) (* (( (ptr) formal←c0420)+4) ))+15) ) = var←c50060;
   if ((var←c50060 == 0)) {
SOURCE(16658, 20)
      (void) (XR←Broadcast((word) (( (bPt) gf←c0419)+44)/* unlocked←v5072 */ ));
      };
   return(0);
   }

static word SystemTip←P1020(base←v7096)
   word base←v7096;
   {
   register ptr gf←c51692 =  (ptr) &globalframe;
   word var←c7140;
   /* SystemTip: */ 
SOURCE(16734, 1840)
SOURCE(16782, 1792)
   {
      word pd213;
      pd213 = (* (( (ptr) (* (( (ptr) gf←c51692)+157)/* var←c47852 */  ))+5) );
      return((word) ( *( (fPt) ((*  (ptr) pd213 ))))((* (( (ptr) gf←c51692)+17)/* systemDir←v5156 */  ), base←v7096, (* (( (ptr) gf←c51692)+82)
          ), 0, 0, pd213));
      };
   }

static void ReloadTipTable←P1080()
   {
   register ptr gf←c51724 =  (ptr) &globalframe;
   word newTIP←v10552;
   /* ReloadTipTable: */ 
SOURCE(16830, 1744)
SOURCE(16862, 72)
   {
      word var←c50124;
      var←c50124 = (word) SystemTip←P1020((* ((( (ptr) gf←c51724)+84)) ));
      newTIP←v10552 = (word) ReloadTable←P1260((* (( (ptr) gf←c51724)+19)/* tiogaTIP←v5296 */  ), (* (( (ptr) gf←c51724)+83) ), var←c50124)
      ;
      };
SOURCE(16936, 60)
   if ((newTIP←v10552 != 0)) {
SOURCE(16957, 39)
      {
         word var←c50156;
         var←c50156 = newTIP←v10552;
         (* (( (ptr) gf←c51724)+19)/* tiogaTIP←v5296 */  ) = newTIP←v10552;
         (* (( (ptr) (* (( (ptr) gf←c51724)+21)/* tiogaClass←v5436 */  ))+15) ) = var←c50156;
         };
      };
   }

static void ReloadReadonlyTipTable←P1140()
   {
   register ptr gf←c51756 =  (ptr) &globalframe;
   word newTIP←v10596;
   /* ReloadReadonlyTipTable: */ 
SOURCE(17002, 1572)
SOURCE(17042, 91)
   {
      word var←c50188;
      var←c50188 = (word) SystemTip←P1020((* ((( (ptr) gf←c51756)+86)) ));
      newTIP←v10596 = (word) ReloadTable←P1260((* (( (ptr) gf←c51756)+18)/* readonlyTIP←v5268 */  ), (* (( (ptr) gf←c51756)+85)
          ), var←c50188);
      };
SOURCE(17135, 41)
   if ((newTIP←v10596 != 0)) {
SOURCE(17156, 20)
      (* (( (ptr) gf←c51756)+18)/* readonlyTIP←v5268 */  ) = newTIP←v10596;
      };
   }

static void ChangeTipTables←P1200(formal←c0482, formal←c0483)
   word formal←c0482;
   word formal←c0483;
   {
   W8 var←c51788;
   /* declaration of newTIP←v7232 skipped */ 
   /* declaration of oldTIP←v7260 skipped */ 
   register ptr gf←c51820 =  (ptr) &globalframe;
   /* declaration of var←c50220 skipped */ 
   var←c51788.f4/* newTIP←v7232 */  = formal←c0482;
   var←c51788.f5/* oldTIP←v7260 */  = formal←c0483;
   /* ChangeTipTables: */ 
SOURCE(17233, 1341)
   {
      word tmpAddr214;
      tmpAddr214 = (word) (( (ptr) &var←c51788)+6)/* var←c50220 */ ;
      (*  (ptr) tmpAddr214 ) = ( ((word)  (fPt) WithViewerTreeLocked←P3456) );
      (* (( (ptr) tmpAddr214) + 1) ) = 1;
      };
SOURCE(17958, 57)
   {
      word pd215;
      pd215 = (* (( (ptr) (* (( (ptr) gf←c51820)+177)/* var←c50252 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd215 ))))((word) ((( (bPt) &var←c51788)+24)/* var←c50220 */ ), pd215);
      };
   }

static void WithViewerTreeLocked←P3456(formal←c51916)
   word formal←c51916;
   {
   W6 var←c51852;
   register ptr gf←c51884 =  (ptr) &globalframe;
   /* declaration of var←c50284 skipped */ 
   word typescriptClass←v10728;
   formal←c51916 = (formal←c51916 - 24);
   var←c51852.f0 = formal←c51916;
   /* WithViewerTreeLocked: */ 
SOURCE(17286, 1288)
   {
      word tmpAddr216;
      tmpAddr216 = (word) (( (ptr) &var←c51852)+4)/* var←c50284 */ ;
      (*  (ptr) tmpAddr216 ) = ( ((word)  (fPt) changeTip←P3516) );
      (* (( (ptr) tmpAddr216) + 1) ) = 1;
      };
SOURCE(17566, 84)
   {
      word pd217;
      pd217 = (* (( (ptr) (* (( (ptr) gf←c51884)+154)/* var←c47244 */  ))+5) );
      typescriptClass←v10728 = (word) ( *( (fPt) ((*  (ptr) pd217 ))))((* ((( (ptr) gf←c51884)+87)) ), pd217);
      };
SOURCE(17652, 37)
   {
      word pd218;
      pd218 = (* (( (ptr) (* (( (ptr) gf←c51884)+154)/* var←c47244 */  ))+25) );
      (void) ( *( (fPt) ((*  (ptr) pd218 ))))((word) ((( (bPt) &var←c51852)+16)/* var←c50284 */ ), pd218);
      };
SOURCE(17691, 65)
   if (((* (( (ptr) (* (( (ptr) gf←c51884)+21)/* tiogaClass←v5436 */  ))+15) ) == (* (( (ptr) formal←c51916)+5) ))) {
SOURCE(17728, 28)
      (* (( (ptr) (* (( (ptr) gf←c51884)+21)/* tiogaClass←v5436 */  ))+15) ) = (* (( (ptr) formal←c51916)+4) );
      };
SOURCE(17758, 43)
   if (((* (( (ptr) gf←c51884)+19)/* tiogaTIP←v5296 */  ) == (* (( (ptr) formal←c51916)+5) ))) {
SOURCE(17784, 17)
      (* (( (ptr) gf←c51884)+19)/* tiogaTIP←v5296 */  ) = (* (( (ptr) formal←c51916)+4) );
      };
SOURCE(17803, 49)
   if (((* (( (ptr) gf←c51884)+18)/* readonlyTIP←v5268 */  ) == (* (( (ptr) formal←c51916)+5) ))) {
SOURCE(17832, 20)
      (* (( (ptr) gf←c51884)+18)/* readonlyTIP←v5268 */  ) = (* (( (ptr) formal←c51916)+4) );
      };
SOURCE(17854, 99)
   if ( ( (typescriptClass←v10728 != 0) ? ((* (( (ptr) typescriptClass←v10728)+15) ) == (* (( (ptr) formal←c51916)+5) )) : 0 ) ) {
SOURCE(17920, 33)
      (* (( (ptr) typescriptClass←v10728)+15) ) = (* (( (ptr) formal←c51916)+4) );
      };
   }

static word changeTip←P3516(v←v10804, formal←c51980)
   word v←v10804;
   word formal←c51980;
   {
   register ptr gf←c51948 =  (ptr) &globalframe;
   word var←c10848;
   formal←c51980 = (formal←c51980 - 16);
   /* changeTip: */ 
SOURCE(17317, 244)
SOURCE(17317, 244)
   var←c10848 = 1;
SOURCE(17385, 113)
   {
      word var←c50316;
      var←c50316 = (* (( (ptr) v←v10804)+26) );
      if ((var←c50316 == 0)) {
         goto lab←L100046;
         };
      if (((* (( (ptr) gf←c51948)+45) ) == XR←GetReferentType(var←c50316))) {
         {
            word tdd←v10876;
            tdd←v10876 = var←c50316;
SOURCE(17451, 47)
            if (((* (( (ptr) v←v10804)+12) ) == (* (( (ptr) (*  (ptr) formal←c51980 ))+5) ))) {
SOURCE(17479, 19)
               (* (( (ptr) v←v10804)+12) ) = (* (( (ptr) (*  (ptr) formal←c51980 ))+4) );
               };
            };
         }
      else {
         lab←L100046: ;
         };
      };
SOURCE(17520, 41)
   {
      word pd219;
      pd219 = (* (( (ptr) (* (( (ptr) gf←c51948)+154)/* var←c47244 */  ))+26) );
      (void) ( *( (fPt) ((*  (ptr) pd219 ))))(v←v10804, (word) (( (bPt) formal←c51980)+16), pd219);
      };
SOURCE(17317, 244)
   return(var←c10848);
   }

static word ReloadTable←P1260(oldTIP←v7320, profileKey←v7348, formal←c0484)
   word oldTIP←v7320;
   word profileKey←v7348;
   word formal←c0484;
   {
   W9 var←c52012;
   /* declaration of default←v7376 skipped */ 
   register ptr gf←c52044 =  (ptr) &globalframe;
   /* declaration of newTIP←v7420 skipped */ 
   /* declaration of var←c50348 skipped */ 
   /* declaration of ok←v10920 skipped */ 
   (* (( (ptr) &var←c52012)+4)/* default←v7376 */  ) = formal←c0484;
   /* ReloadTable: */ 
SOURCE(18021, 1072)
   {
      word tmpAddr220;
      tmpAddr220 = (word) (( (ptr) &var←c52012)+6)/* var←c50348 */ ;
      (*  (ptr) tmpAddr220 ) = ( ((word)  (fPt) AddTable←P3624) );
      (* (( (ptr) tmpAddr220) + 1) ) = 1;
      };
SOURCE(18021, 1072)
   (* (( (ptr) &var←c52012)+5)/* newTIP←v7420 */  ) = 0;
SOURCE(18128, 15)
   (* (( (ptr) &var←c52012)+8)/* ok←v10920 */  ) = 1;
SOURCE(18845, 50)
   {
      word pd221;
      pd221 = (* (( (ptr) (* (( (ptr) gf←c52044)+178)/* var←c50380 */  ))+22) );
      (void) ( *( (fPt) ((*  (ptr) pd221 ))))(profileKey←v7348, (word) (( (bPt) &var←c52012)+24)/* var←c50348 */ , (* (( (ptr) &var←c52012)+4)
         /* default←v7376 */  ), pd221);
      };
SOURCE(18897, 84)
   if ( ( (0 == (* (( (ptr) &var←c52012)+8)/* ok←v10920 */  )) ? (oldTIP←v7320 == 0) : 0 ) ) {
SOURCE(18926, 9)
      (* (( (ptr) &var←c52012)+8)/* ok←v10920 */  ) = 1;
SOURCE(18937, 44)
      {
         word pd222;
         pd222 = (* (( (ptr) (* (( (ptr) gf←c52044)+178)/* var←c50380 */  ))+22) );
         (void) ( *( (fPt) ((*  (ptr) pd222 ))))((* (( (ptr) gf←c52044)+52) ), (word) (( (bPt) &var←c52012)+24)/* var←c50348 */ , (* (
               ( (ptr) &var←c52012)+4)/* default←v7376 */  ), pd222);
         };
      };
SOURCE(18984, 109)
   if ( (  ( (0 != (* (( (ptr) &var←c52012)+8)/* ok←v10920 */  )) ? (oldTIP←v7320 != 0) : 0 )  ? ((* (( (ptr) &var←c52012)+5)
   /* newTIP←v7420 */  ) != 0) : 0 ) ) {
SOURCE(19037, 56)
SOURCE(19039, 52)
      {
         W2 var←c50412;
         {
            W2 var←c0316;
            word var←c0315;
            var←c0315 = XR←ExtensionAlloc(6);
            {
               word tmpAddr223;
               tmpAddr223 = (word) var←c0315;
               (*  (ptr) tmpAddr223 ) = ( ((word)  (fPt) NoName←Q4704) );
               (* (( (ptr) tmpAddr223) + 1) ) = 0;
               (* (( (ptr) tmpAddr223) + 2) ) = (word) (( (bPt) gf←c52044)+428)/* var←c46220 */ ;
               (* (( (ptr) tmpAddr223) + 3) ) = 0;
               (* (( (ptr) tmpAddr223) + 4) ) = (* (( (ptr) &var←c52012)+5)/* newTIP←v7420 */  );
               (* (( (ptr) tmpAddr223) + 5) ) = oldTIP←v7320;
               };
            (void) XR←Fork((word) &var←c0316, var←c0315);
            var←c50412 = var←c0316;
            };
         {
            word pd224;
            pd224 = (* (( (ptr) (* (( (ptr) gf←c52044)+174)/* var←c49708 */  ))+11) );
            (void) ( *( (fPt) ((*  (ptr) pd224 ))))(var←c50412, pd224);
            };
         };
      };
SOURCE(18021, 1072)
   return((* (( (ptr) &var←c52012)+5)/* newTIP←v7420 */  ));
   }

static void AddTable←P3624(formal←c0485, formal←c52140)
   word formal←c0485;
   word formal←c52140;
   {
   W9 var←c52076;
   /* declaration of r←v11024 skipped */ 
   register ptr gf←c52108 =  (ptr) &globalframe;
   /* declaration of bad←v11052 skipped */ 
   word t←v11080 = 0;
   /* declaration of msg←v11108 skipped */ 
   formal←c52140 = (formal←c52140 - 24);
   (* (( (ptr) &var←c52076)+4)/* r←v11024 */  ) = formal←c0485;
   (*  (ptr) &var←c52076 ) = formal←c52140;
   /* AddTable: */ 
SOURCE(18145, 692)
SOURCE(18179, 17)
   (* (( (ptr) &var←c52076)+5)/* bad←v11052 */  ) = 0;
SOURCE(18211, 14)
   (* (( (ptr) &var←c52076)+6)/* msg←v11108 */  ) = 0;
SOURCE(18227, 21)
   if ((0 == (* (( (ptr) formal←c52140)+8) ))) {
SOURCE(18242, 6)
      return;
      };
SOURCE(18250, 324)
   {
      word pd225;
      pd225 = (* (( (ptr) (* (( (ptr) gf←c52108)+157)/* var←c47852 */  ))+8) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd225 ))))((* (( (ptr) &var←c52076)+4)/* r←v11024 */  ), (* (( (ptr) gf←c52108)+88)
          ), 0, pd225))) {
SOURCE(18290, 42)
         {
            word pd226;
            pd226 = (* (( (ptr) (* (( (ptr) gf←c52108)+178)/* var←c50380 */  ))+22) );
            (void) ( *( (fPt) ((*  (ptr) pd226 ))))((* (( (ptr) gf←c52108)+52) ), (word) (( (bPt) formal←c52140)+24), (* (( (ptr) formal←c52140)+4)
                ), pd226);
            };
SOURCE(18334, 8)
         return;
         };
      };
SOURCE(18345, 229)
SOURCE(18345, 229)
   {
      /* declaration of var←c05 skipped */ 
      (* (( (ptr) &var←c52076)+7)/* var←c05 */  ) = (* (( (ptr) (* (( (ptr) gf←c52108)+179)/* var←c50444 */  ))+4) );
      {
         /* declaration of var←c06 skipped */ 
         {
            word var←c07;
            {
               word var←c0449;
               var←c0449 = (word) &var←c52076;
               var←c07 = (word) XR←Enable(( ((word)  (fPt) NoName←Q4284) ), ( ((word)  (fPt) NoName←Q4344) ), var←c0449);
               };
            if ((var←c07 == 4)) {
               goto lab←L100048;
               };
            };
         t←v11080 = (* (( (ptr) &var←c52076)+8)/* var←c06 */  );
         };
      };
   lab←L100048: ;
SOURCE(18589, 66)
   if ((0 != (* (( (ptr) &var←c52076)+5)/* bad←v11052 */  ))) {
SOURCE(18603, 10)
      (* (( (ptr) formal←c52140)+8) ) = 0;
SOURCE(18615, 31)
      {
         word pd227;
         pd227 = (* (( (ptr) (* (( (ptr) gf←c52108)+158)/* var←c47916 */  ))+5) );
         (void) ( *( (fPt) ((*  (ptr) pd227 ))))((* (( (ptr) &var←c52076)+6)/* msg←v11108 */  ), 1, pd227);
         };
SOURCE(18648, 7)
      return;
      };
SOURCE(18658, 40)
   if (((* (( (ptr) formal←c52140)+5) ) == 0)) {
SOURCE(18679, 10)
      (* (( (ptr) formal←c52140)+5) ) = t←v11080;
SOURCE(18691, 7)
      return;
      };
SOURCE(18701, 136)
   {
      word pd228;
      pd228 = (* (( (ptr) (* (( (ptr) gf←c52108)+180)/* var←c50476 */  ))+4) );
      if (((word) ( *( (fPt) ((*  (ptr) pd228 ))))((* (( (ptr) formal←c52140)+5) ), t←v11080, pd228) != 0)) {
SOURCE(18744, 10)
         (* (( (ptr) formal←c52140)+8) ) = 0;
SOURCE(18756, 81)
         {
            word var←c50508;
            {
               word pd229;
               pd229 = (* (( (ptr) (* (( (ptr) gf←c52108)+157)/* var←c47852 */  ))+6) );
               var←c50508 = (word) ( *( (fPt) ((*  (ptr) pd229 ))))((* (( (ptr) gf←c52108)+91) ), (* (( (ptr) &var←c52076)+4)/* r←v11024 */  ), pd229)
               ;
               };
            {
               word pd230;
               pd230 = (* (( (ptr) (* (( (ptr) gf←c52108)+158)/* var←c47916 */  ))+5) );
               (void) ( *( (fPt) ((*  (ptr) pd230 ))))(var←c50508, 1, pd230);
               };
            };
         };
      };
   }

static word NoName←Q4284(formal←c0432)
   word formal←c0432;
   {
SOURCE(18345, 229)
   {
      word pd231;
      pd231 = (* (( (ptr) formal←c0432)+7) );
      (* (( (ptr) formal←c0432)+8) ) = (word) ( *( (fPt) ((*  (ptr) pd231 ))))((* ((( (ptr) formal←c0432)+4)) ), pd231);
      };
   return(0);
   }

static word LocalAdjust←P1320(self←v34172)
   word self←v34172;
   {
   register ptr gf←c52172 =  (ptr) &globalframe;
   word adjusted←v34216;
   /* LocalAdjust: */ 
SOURCE(19130, 459)
SOURCE(19130, 459)
   adjusted←v34216 = 0;
SOURCE(19172, 89)
   if ((((self←v34172 == 0) || (* (( (bPt) self←v34172)+76) ) & 020) || (* (( (bPt) self←v34172)+77) ) & 0100) || (* (( (bPt) self←v34172)+77)
    ) & 02) {
SOURCE(19247, 14)
      return(0);
      };
SOURCE(19263, 290)
   {
      word var←c50540;
      var←c50540 = (* (( (ptr) self←v34172)+26) );
      if ((var←c50540 == 0)) {
         goto lab←L100051;
         };
      if (((* (( (ptr) gf←c52172)+45) ) == XR←GetReferentType(var←c50540))) {
         {
            word tdd←v11152;
            tdd←v11152 = var←c50540;
SOURCE(19330, 234)
            {
               word ch←v11196;
               word lines←v11224;
SOURCE(19332, 21)
               ch←v11196 = (* (( (ptr) self←v34172)+8) );
SOURCE(19355, 46)
               lines←v11224 = (* (( (ptr) tdd←v11152)+1) );
SOURCE(19403, 150)
               if ((lines←v11224 != 0)) {
SOURCE(19423, 130)
                  {
                     register word i←v11268 = 0;
                     register word noName←c50572;
                     noName←c50572 = (*  (ptr) lines←v11224 );
                     if (( (int)i←v11268 >  (int)noName←c50572)) {
                        goto lab←L100052;
                        };
                     lab←L100055: ;
SOURCE(19460, 93)
                     {
                        word limit232;
                        if ((int)(* (( (ptr) (( (W9Pt) (( (ptr) lines←v11224)+3))+(
/*1*/      limit232 = (* (( (ptr) lines←v11224)+2) ),
/*1*/      BCK(i←v11268, limit232)
/*1*/      )))+2) )<0) {
SOURCE(19483, 70)
                           {
/*1*/   word limit234;
/*1*/   if ((0 != (* (( (ptr) gf←c52172)+20)/* alwaysInvalid←v5380 */  ))) { goto then0233;};
/*1*/   if (( (int)(* (( (ptr) (( (W9Pt) (( (ptr) lines←v11224)+3))+(
/*1*/            limit234 = (* (( (ptr) lines←v11224)+2) ),
/*1*/            BCK(i←v11268, limit234)
/*1*/            )))+6) ) >=  (int)ch←v11196)) {
/*1*/      then0233: ;
SOURCE(19531, 22)
/*1*/      {
/*1*/         word limit235;
/*1*/         (* (( (ptr) ((( (W9Pt) (( (bPt) lines←v11224)+12))+(
/*1*/                  limit235 = (* (( (ptr) lines←v11224)+2) ),
/*1*/                  BCK(i←v11268, limit235)
/*1*/                  )))) + 2) ) &= 2147483647;
/*1*/         };
/*1*/      };
/*1*/   };
                           };
                        };
                     if (( (int)i←v11268 >=  (int)noName←c50572)) {
                        goto lab←L100052;
                        };
                     i←v11268 = (i←v11268 + 1);
                     goto lab←L100055;
                     lab←L100052: ;
                     };
                  };
               };
            };
         }
      else {
         lab←L100051: ;
         };
      };
SOURCE(19576, 13)
   return(1);
   }

static void CreateTiogaMenu←P1380()
   {
   W6 var←c52204;
   register ptr gf←c52236 =  (ptr) &globalframe;
   /* declaration of var←c50604 skipped */ 
   /* CreateTiogaMenu: */ 
SOURCE(20376, 1764)
   {
      word tmpAddr236;
      tmpAddr236 = (word) (( (ptr) &var←c52204)+4)/* var←c50604 */ ;
      (*  (ptr) tmpAddr236 ) = ( ((word)  (fPt) Append←P3828) );
      (* (( (ptr) tmpAddr236) + 1) ) = 1;
      };
SOURCE(20750, 30)
   {
      word pd237;
      pd237 = (* (( (ptr) (* (( (ptr) gf←c52236)+175)/* var←c49804 */  ))+4) );
      (* (( (ptr) gf←c52236)+22)/* tiogaMenu←v5464 */  ) = (word) ( *( (fPt) ((*  (ptr) pd237 ))))(1, pd237);
      };
SOURCE(20782, 46)
   (void) Append←P3828(0, (word) &string238, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+48) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(20830, 56)
   (void) Append←P3828(0, (word) &string239, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+45) ), (* (( (ptr) gf←c52236)+26)
      /* preReset←v5576 */  ), (word) (( (bPt) &var←c52204)+16)/* var←c50604 */ );
SOURCE(20888, 42)
   (void) Append←P3828(0, (word) &string240, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+56) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(20932, 50)
   (void) Append←P3828(0, (word) &string241, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+54) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(20984, 56)
   (void) Append←P3828(0, (word) &string242, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+52) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21042, 56)
   (void) Append←P3828(0, (word) &string243, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+50) ), (* (( (ptr) gf←c52236)+27)
      /* preStore←v5604 */  ), (word) (( (bPt) &var←c52204)+16)/* var←c50604 */ );
SOURCE(21100, 44)
   (void) Append←P3828(0, (word) &string244, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+46) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21146, 44)
   (void) Append←P3828(0, (word) &string245, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+65) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21192, 46)
   (void) Append←P3828(0, (word) &string246, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+66) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21240, 29)
   (void) Append←P3828(0, (word) &string247, (word) (( (bPt) gf←c52236)+476)/* var←c46412 */ , 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21271, 30)
   (void) Append←P3828(0, (word) &string248, (word) (( (bPt) gf←c52236)+484)/* var←c46444 */ , 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21303, 44)
   (void) Append←P3828(1, (word) &string48, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+62) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21349, 48)
   (void) Append←P3828(1, (word) &string249, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+64) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21399, 46)
   (void) Append←P3828(1, (word) &string250, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+63) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21447, 52)
   (void) Append←P3828(1, (word) &string251, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+61) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21501, 54)
   (void) Append←P3828(1, (word) &string252, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+60) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21557, 59)
   (void) Append←P3828(1, (word) &string253, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+10) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21618, 52)
   (void) Append←P3828(1, (word) &string254, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+9) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21672, 38)
   (void) Append←P3828(1, (word) &string61, (word) (( (bPt) gf←c52236)+396)/* var←c46092 */ , 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21712, 64)
   (void) Append←P3828(2, (word) &string49, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+70) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21778, 56)
   (void) Append←P3828(2, (word) &string255, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+68) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21836, 58)
   (void) Append←P3828(2, (word) &string256, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+67) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21896, 54)
   (void) Append←P3828(2, (word) &string257, (* (( (ptr) (* (( (ptr) gf←c52236)+152)/* var←c47148 */  ))+69) ), 0, (word) (( (bPt) &var←c52204)+16)
      /* var←c50604 */ );
SOURCE(21952, 38)
   {
      word pd258;
      pd258 = (* (( (ptr) (* (( (ptr) gf←c52236)+175)/* var←c49804 */  ))+24) );
      (* (( (ptr) gf←c52236)+23)/* findMenu←v5492 */  ) = (word) ( *( (fPt) ((*  (ptr) pd258 ))))((* (( (ptr) gf←c52236)+22)/* tiogaMenu←v5464 */  ), 1, pd258)
      ;
      };
SOURCE(21992, 39)
   {
      word pd259;
      pd259 = (* (( (ptr) (* (( (ptr) gf←c52236)+175)/* var←c49804 */  ))+24) );
      (* (( (ptr) gf←c52236)+24)/* levelMenu←v5520 */  ) = (word) ( *( (fPt) ((*  (ptr) pd259 ))))((* (( (ptr) gf←c52236)+22)/* tiogaMenu←v5464 */  ), 2, pd259)
      ;
      };
SOURCE(22033, 32)
   {
      word pd260;
      pd260 = (* (( (ptr) (* (( (ptr) gf←c52236)+175)/* var←c49804 */  ))+23) );
      (void) ( *( (fPt) ((*  (ptr) pd260 ))))((* (( (ptr) gf←c52236)+22)/* tiogaMenu←v5464 */  ), 1, 0, pd260);
      };
SOURCE(22067, 32)
   {
      word pd261;
      pd261 = (* (( (ptr) (* (( (ptr) gf←c52236)+175)/* var←c49804 */  ))+23) );
      (void) ( *( (fPt) ((*  (ptr) pd261 ))))((* (( (ptr) gf←c52236)+22)/* tiogaMenu←v5464 */  ), 2, 0, pd261);
      };
SOURCE(22101, 39)
   {
      word pd262;
      pd262 = (* (( (ptr) (* (( (ptr) gf←c52236)+175)/* var←c49804 */  ))+21) );
      (void) ( *( (fPt) ((*  (ptr) pd262 ))))((* (( (ptr) gf←c52236)+22)/* tiogaMenu←v5464 */  ), 1, pd262);
      };
   }

static void Append←P3828(line←v11388, name←v11416, proc←v11444, guard←v11472, formal←c52300)
   word line←v11388;
   word name←v11416;
   word proc←v11444;
   word guard←v11472;
   word formal←c52300;
   {
   register ptr gf←c52268 =  (ptr) &globalframe;
   word nameRope←v11512;
   word entry←v11540;
   formal←c52300 = (formal←c52300 - 16);
   /* Append: */ 
SOURCE(20402, 343)
SOURCE(20519, 43)
   {
      word pd263;
      pd263 = (* (( (ptr) (* (( (ptr) gf←c52268)+181)/* var←c50636 */  ))+9) );
      nameRope←v11512 = (word) ( *( (fPt) ((*  (ptr) pd263 ))))(name←v11416, pd263);
      };
SOURCE(20564, 115)
   {
      word pd264;
      pd264 = (* (( (ptr) (* (( (ptr) gf←c52268)+175)/* var←c49804 */  ))+6) );
      entry←v11540 = (word) ( *( (fPt) ((*  (ptr) pd264 ))))(nameRope←v11512, proc←v11444, 0, guard←v11472, 1,  (unsigned) (guard←v11472 != 0), pd264)
      ;
      };
SOURCE(20681, 64)
   {
      word pd265;
      pd265 = (* (( (ptr) (* (( (ptr) gf←c52268)+175)/* var←c49804 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd265 ))))((* (( (ptr) gf←c52268)+22)/* tiogaMenu←v5464 */  ), entry←v11540, line←v11388, pd265)
      ;
      };
   }

static void StyleKindClick←P1440(parent←v35800, clientData←v35828, mouseButton←v35856, shift←v35884, control←v35912)
   word parent←v35800;
   word clientData←v35828;
   word mouseButton←v35856;
   word shift←v35884;
   word control←v35912;
   {
   register ptr gf←c52332 =  (ptr) &globalframe;
   /* StyleKindClick: */ 
SOURCE(22183, 183)
SOURCE(22226, 140)
   {
      word var←c50668;
      {
         word var←c50700;
         var←c50700 = mouseButton←v35856;
         switch (var←c50700) {
            case 0: 
               var←c50668 = (* (( (ptr) gf←c52332)+74) );
               break;
            case 1: case 2: 
               var←c50668 = (* (( (ptr) gf←c52332)+81) );
               break;
            default: 
               var←c50668 = (
                  XR←RaiseUnnamedError(), 0
                  );
               break;
            };
         };
      {
         word pd266;
         pd266 = (* (( (ptr) (* (( (ptr) gf←c52332)+153)/* var←c47212 */  ))+29) );
         (void) ( *( (fPt) ((*  (ptr) pd266 ))))(parent←v35800, var←c50668, pd266);
         };
      };
   }

static void StyleKindScreenOp←P1500(formal←c0351, viewer←v35972)
   word formal←c0351;
   word viewer←v35972;
   {
   register ptr gf←c52364 =  (ptr) &globalframe;
   word recordAtom←v36016;
   word quit←v36044;
   word old←v11584;
   /* StyleKindScreenOp: */ 
SOURCE(22371, 230)
SOURCE(22371, 230)
   recordAtom←v36016 = 1;
SOURCE(22371, 230)
   quit←v36044 = 0;
SOURCE(22417, 50)
   {
      word pd267;
      pd267 = (* (( (ptr) (* (( (ptr) gf←c52364)+154)/* var←c47244 */  ))+29) );
      old←v11584 = (word) ( *( (fPt) ((*  (ptr) pd267 ))))(viewer←v35972, (* (( (ptr) gf←c52364)+92) ), pd267);
      };
SOURCE(22469, 132)
   if ((old←v11584 != 0)) {
SOURCE(22487, 42)
      {
         word pd268;
         pd268 = (* (( (ptr) (* (( (ptr) gf←c52364)+154)/* var←c47244 */  ))+28) );
         (void) ( *( (fPt) ((*  (ptr) pd268 ))))(viewer←v35972, (* (( (ptr) gf←c52364)+92) ), 0, pd268);
         };
SOURCE(22531, 70)
      {
         word pd269;
         pd269 = (* (( (ptr) (* (( (ptr) gf←c52364)+154)/* var←c47244 */  ))+16) );
         (void) ( *( (fPt) ((*  (ptr) pd269 ))))(viewer←v35972, 1, 1, 0, pd269);
         };
      };
   /* removed tail goto */ 
   (*  (ptr) formal←c0351 ) = recordAtom←v36016;
   (* (( (ptr) formal←c0351)+1) ) = quit←v36044;
   return;
   }

static void StyleKindPrintOp←P1560(formal←c0356, viewer←v36104)
   word formal←c0356;
   word viewer←v36104;
   {
   register ptr gf←c52396 =  (ptr) &globalframe;
   word recordAtom←v36148;
   word quit←v36176;
   word old←v11640;
   /* StyleKindPrintOp: */ 
SOURCE(22609, 235)
SOURCE(22609, 235)
   recordAtom←v36148 = 1;
SOURCE(22609, 235)
   quit←v36176 = 0;
SOURCE(22654, 50)
   {
      word pd270;
      pd270 = (* (( (ptr) (* (( (ptr) gf←c52396)+154)/* var←c47244 */  ))+29) );
      old←v11640 = (word) ( *( (fPt) ((*  (ptr) pd270 ))))(viewer←v36104, (* (( (ptr) gf←c52396)+92) ), pd270);
      };
SOURCE(22706, 138)
   if ((old←v11640 != (* (( (ptr) gf←c52396)+93) ))) {
SOURCE(22727, 45)
      {
         word pd271;
         pd271 = (* (( (ptr) (* (( (ptr) gf←c52396)+154)/* var←c47244 */  ))+28) );
         (void) ( *( (fPt) ((*  (ptr) pd271 ))))(viewer←v36104, (* (( (ptr) gf←c52396)+92) ), (* (( (ptr) gf←c52396)+93) ), pd271)
         ;
         };
SOURCE(22774, 70)
      {
         word pd272;
         pd272 = (* (( (ptr) (* (( (ptr) gf←c52396)+154)/* var←c47244 */  ))+16) );
         (void) ( *( (fPt) ((*  (ptr) pd272 ))))(viewer←v36104, 1, 1, 0, pd272);
         };
      };
   /* removed tail goto */ 
   (*  (ptr) formal←c0356 ) = recordAtom←v36148;
   (* (( (ptr) formal←c0356)+1) ) = quit←v36176;
   return;
   }

static void NoName←Q4344(formal←c0363, formal←c200016, formal←c200017, formal←c200018, formal←c200019)
   word formal←c0363;
   word formal←c200016;
   word formal←c200017;
   word formal←c200018;
   word formal←c200019;
   {
   register ptr gf←c0440 =  (ptr) &globalframe;
   if ((formal←c200017 == (* (( (ptr) (* (( (ptr) gf←c0440)+148)/* var←c46956 */  ))+9) ))) {
      {
         W4 error←v45520;
         error←v45520 = (*  (W4Pt) formal←c200019 );
SOURCE(18399, 10)
         (* (( (ptr) formal←c200016)+5) ) = 1;
SOURCE(18412, 162)
         {
            word pd273;
            pd273 = (* (( (ptr) (* (( (ptr) gf←c0440)+157)/* var←c47852 */  ))+6) );
            (* (( (ptr) formal←c200016)+6) ) = (word) ( *( (fPt) ((*  (ptr) pd273 ))))((* (( (ptr) gf←c0440)+89) ), (* (( (ptr) formal←c200016)+4)
                ), pd273);
            };
SOURCE(18466, 9)
         (*  (ptr) formal←c0363 ) = 2;
         (* (( (ptr) formal←c0363)+1) ) = 4;
         return;
         };
      }
   else {
      if ((formal←c200017 == (* (( (ptr) (* (( (ptr) gf←c0440)+179)/* var←c50444 */  ))+6) ))) {
         {
            word errorMsg←v45580;
            errorMsg←v45580 = (*  (ptr) formal←c200019 );
SOURCE(18504, 10)
            (* (( (ptr) formal←c200016)+5) ) = 1;
SOURCE(18516, 58)
            {
               word pd274;
               pd274 = (* (( (ptr) (* (( (ptr) gf←c0440)+157)/* var←c47852 */  ))+6) );
               (* (( (ptr) formal←c200016)+6) ) = (word) ( *( (fPt) ((*  (ptr) pd274 ))))((* (( (ptr) gf←c0440)+90) ), (* (( (ptr) formal←c200016)+4)
                   ), pd274);
               };
SOURCE(18576, 9)
            (*  (ptr) formal←c0363 ) = 2;
            (* (( (ptr) formal←c0363)+1) ) = 4;
            return;
            };
         };
      };
   (*  (ptr) formal←c0363 ) = 0;
   (* (( (ptr) formal←c0363)+1) ) = 0;
   return;
   }

static void NoName←Q4404(formal←c0368, formal←c200012, formal←c200013, formal←c200014, formal←c200015)
   word formal←c0368;
   word formal←c200012;
   word formal←c200013;
   word formal←c200014;
   word formal←c200015;
   {
   register ptr gf←c0441 =  (ptr) &globalframe;
   if ((formal←c200013 == XR←Unwind)) {
      (void) (XR←MonitorExit((word) (( (bPt) gf←c0441)+16)/* LOCK←v4456 */ ));
      };
   (*  (ptr) formal←c0368 ) = 0;
   (* (( (ptr) formal←c0368)+1) ) = 0;
   return;
   }

static void NoName←Q4464(formal←c0373, formal←c200008, formal←c200009, formal←c200010, formal←c200011)
   word formal←c0373;
   word formal←c200008;
   word formal←c200009;
   word formal←c200010;
   word formal←c200011;
   {
   register ptr gf←c0442 =  (ptr) &globalframe;
   if ((formal←c200009 == XR←Unwind)) {
      (void) (XR←MonitorExit((word) (( (bPt) gf←c0442)+16)/* LOCK←v4456 */ ));
      };
   (*  (ptr) formal←c0373 ) = 0;
   (* (( (ptr) formal←c0373)+1) ) = 0;
   return;
   }

static void NoName←Q4524(formal←c0383, formal←c200004, formal←c200005, formal←c200006, formal←c200007)
   word formal←c0383;
   word formal←c200004;
   word formal←c200005;
   word formal←c200006;
   word formal←c200007;
   {
   register ptr gf←c0443 =  (ptr) &globalframe;
   if ((formal←c200005 == (* (( (ptr) (* (( (ptr) gf←c0443)+148)/* var←c46956 */  ))+9) ))) {
      {
         W4 error←v43396;
         error←v43396 = (*  (W4Pt) formal←c200007 );
SOURCE(7562, 32)
         (* (( (ptr) formal←c200004)+7) ) = error←v43396.f2;
SOURCE(7596, 9)
         (*  (ptr) formal←c0383 ) = 2;
         (* (( (ptr) formal←c0383)+1) ) = 3;
         return;
         };
      }
   else {
      if ((formal←c200005 == (* (( (ptr) (* (( (ptr) gf←c0443)+166)/* var←c48524 */  ))+5) ))) {
         {
            word ec←v43456;
            word stream←v43484;
            word details←v43512;
            word msg←v43540;
            ec←v43456 = (*  (ptr) formal←c200007 );
            stream←v43484 = (* (( (ptr) formal←c200007)+1) );
            details←v43512 = (* (( (ptr) formal←c200007)+2) );
            msg←v43540 = (* (( (ptr) formal←c200007)+3) );
SOURCE(7622, 50)
            if ((msg←v43540 != 0)) {
               (* (( (ptr) formal←c200004)+7) ) = msg←v43540;
               }
            else {
               (* (( (ptr) formal←c200004)+7) ) = (* (( (ptr) gf←c0443)+64) );
               };
SOURCE(7674, 9)
            (*  (ptr) formal←c0383 ) = 2;
            (* (( (ptr) formal←c0383)+1) ) = 3;
            return;
            };
         };
      };
   (*  (ptr) formal←c0383 ) = 0;
   (* (( (ptr) formal←c0383)+1) ) = 0;
   return;
   }

static void NoName←Q4584(formal←c0390, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
   word formal←c0390;
   word formal←c200000;
   word formal←c200001;
   word formal←c200002;
   word formal←c200003;
   {
   register ptr gf←c0444 =  (ptr) &globalframe;
   if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0444)+148)/* var←c46956 */  ))+9) ))) {
      {
         W4 error←v41288;
         error←v41288 = (*  (W4Pt) formal←c200003 );
SOURCE(4948, 19)
         (* (( (ptr) (* (( (ptr) formal←c200000)+4) )) + 19) ) |= 33554432;
SOURCE(4969, 13605)
         {
            word var←c47884;
            {
               word pd275;
               pd275 = (* (( (ptr) (* (( (ptr) gf←c0444)+157)/* var←c47852 */  ))+6) );
               var←c47884 = (word) ( *( (fPt) ((*  (ptr) pd275 ))))((* (( (ptr) gf←c0444)+55) ), error←v41288.f2, pd275);
               };
            {
               word pd276;
               pd276 = (* (( (ptr) (* (( (ptr) gf←c0444)+158)/* var←c47916 */  ))+5) );
               (void) ( *( (fPt) ((*  (ptr) pd276 ))))(var←c47884, 1, pd276);
               };
            };
SOURCE(5053, 21)
         {
            word pd277;
            pd277 = (* (( (ptr) (* (( (ptr) gf←c0444)+158)/* var←c47916 */  ))+6) );
            (void) ( *( (fPt) ((*  (ptr) pd277 ))))(pd277);
            };
SOURCE(5076, 8)
         (*  (ptr) formal←c0390 ) = 2;
         (* (( (ptr) formal←c0390)+1) ) = 2;
         return;
         };
      }
   else {
      if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0444)+156)/* var←c47468 */  ))+4) ))) {
SOURCE(5108, 79)
         {
            word pd278;
            pd278 = (* (( (ptr) (* (( (ptr) gf←c0444)+158)/* var←c47916 */  ))+5) );
            (void) ( *( (fPt) ((*  (ptr) pd278 ))))((* (( (ptr) gf←c0444)+54) ), 1, pd278);
            };
SOURCE(5189, 38)
         {
            word pd279;
            pd279 = (* (( (ptr) (* (( (ptr) gf←c0444)+158)/* var←c47916 */  ))+5) );
            (void) ( *( (fPt) ((*  (ptr) pd279 ))))((* (( (ptr) (* (( (ptr) formal←c200000)+4) ))+14) ), 0, pd279);
            };
SOURCE(5229, 21)
         {
            word pd280;
            pd280 = (* (( (ptr) (* (( (ptr) gf←c0444)+158)/* var←c47916 */  ))+6) );
            (void) ( *( (fPt) ((*  (ptr) pd280 ))))(pd280);
            };
SOURCE(5252, 8)
         (*  (ptr) formal←c0390 ) = 2;
         (* (( (ptr) formal←c0390)+1) ) = 2;
         return;
         };
      };
   (*  (ptr) formal←c0390 ) = 0;
   (* (( (ptr) formal←c0390)+1) ) = 0;
   return;
   }

static word NoName←Q4644(formal←c0244)
   word formal←c0244;
   {
   W3 var←c0246;
   word var←c0245;
   /* intermediary proc for a FORK, nArgs: 3, nRets: 0 */ 
   var←c0246 = (*  (W3Pt) (( (ptr) formal←c0244)+4) );
   var←c0245 = (* (( (ptr) formal←c0244)+2) );
   formal←c0244 = XR←ExtensionFree(formal←c0244);
   (void) ( *( (fPt) ((*  (ptr) var←c0245 ))))(var←c0246.f0, var←c0246.f1, var←c0246.f2, var←c0245);
   return(0);
   }

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

/* file: TEditDocumentsImpl, module: TEditDocumentsImpl, compiled at: March 26, 1993 4:07:38 pm PST */ 
extern void XR←install←TEditDocumentsImpl() {
   NoName←Q3984();
   }
extern void XR←run←TEditDocumentsImpl() { XR←Start(&globalframe); }