/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: March 13, 1992 11:30:40 am PST */ /* C2C version: October 16, 1990 (native) */ /* ref-counting: off */ /* file: AbbrevExpandImpl, module: AbbrevExpandImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> #define XRM←BITXOR(x, y) (((word)(x)) ↑ ((word)(y))) static char versionStamp[] = "@(#)mob←version [3339160412,1561834220] AbbrevExpandImpl"; 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 {W8 f; word r;} W9; typedef struct {W16 f; W9 r;} W25; typedef struct {word f0, f1;} W2; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef struct {word f0, f1, f2, f3;} W4; typedef W4 *W4Pt; typedef W6 *W6Pt; typedef W2 *W2Pt; typedef struct {word f0, f1, f2, f3, f4;} W5; typedef struct {W16 f; W2 r;} W18; typedef struct {word f0, f1, f2;} W3; typedef struct {W8 f; W4 r;} W12; typedef struct {W8 f; W2 r;} W10; typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; typedef struct {W8 f; W7 r;} W15; typedef W9 *W9Pt; typedef struct {W8 f; W3 r;} W11; #define SOURCE(p, l) /* source p, l */ #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) ) #define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i ) #define MAX(cast, x, y) ( ( cast x) > ( cast y) ? (x) : (y) ) #define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) ) static void NoName←Q5940(); static void AbbrevExpandImpl←P0(); static void LoadInternal←P60(); static word NoName←Q6000(); static void Locked←P1200(); static void Empty←P1260(); static word Load←P120(); static void AddToDict←P180(); static word NoName←Q6060(); static void ParseCommands←P240(); static word NoName←Q6120(); static void Clear←P300(); static word NoName←Q6180(); static word GetDictAtom←P360(); static word ForceLower←P1512(); static void ChangeRegistry←P420(); static void Expand←P480(); static word FindEntry←P1572(); static void CheckCaps←P1776(); static word KeyHash←P540(); static word Lookup←P600(); static word NoName←Q6240(); static word LookupInternal←P660(); static void FreeReaders←P2268(); static word FindKeyLen←P720(); static word FindKeyStart←P780(); static word GetDict←P840(); static word NoName←Q6300(); static word Same←P900(); static word GetFileID←P960(); static word NoName←Q6360(); static void DoLocked←P1020(); static word NoName←Q6420(); static void Lock←P2520(); static void Unlock←P2580(); static word ValidateAll←P1080(); static void Locked←P2640(); static word Action←P2700(); static word Validate←P1140(); static void Locked←P2760(); static void NoName←Q6480(); static void NoName←Q6540(); static void NoName←Q6600(); static void NoName←Q6660(); static void NoName←Q6720(); static void NoName←Q6780(); static void NoName←Q6840(); static void NoName←Q6900(); static struct {unsigned f; char r[4];} string1 = {131076, "\216\251\000"}; static struct {unsigned f; char r[4];} string2 = {65537, "\001\000\000"}; static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\307\007\213\134\300\135\027\262\354\102\000\000\000"}; static struct {unsigned f; char r[4];} string4 = {65540, "\251\000\000"}; static struct {unsigned f; char r[16];} string5 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[112];} string6 = {7274608, "\262\260\004\003\153\145\171\216\257\300\363\223\326\161\300\017\164\046\072\104\350\011\010\144\151\143\164\101\164\157\155\216\251\022\021\153\145\171\104\145\164\145\162\155\151\156\145\163\104\151\143\164\232\261\260\010\007\153\145\171\122\157\160\145\216\257\300\363\223\326\161\300\017\164\046\072\104\350\005\004\156\157\144\145\216\257\300\302\136\246\312\300\076\314\360\376\100\164\011\010\143\157\155\155\141\156\144\163\214\217\261"}; static struct {unsigned f; char r[48];} string7 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\363\223\326\161\300\017\164\046\072\104\350\005\004\162\145\163\164\214\216\257\300\363\223\326\161\300\017\164\046\072\104\350\261\000\000\000"}; static struct {unsigned f; char r[4];} string8 = {131074, "\004\003\000"}; static struct {unsigned f; char r[20];} string9 = {1179668, "\260\006\005\146\151\162\163\164\217\005\004\162\145\163\164\214\217\261\000"}; static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\307\007\213\134\300\135\027\262\354\100\200\000\000"}; static struct {unsigned f; char r[4];} string11 = {131074, "\004\035\000"}; static struct {unsigned f; char r[44];} string12 = {2752556, "\260\006\005\146\151\162\163\164\257\300\015\277\004\146\300\034\367\146\045\112\114\005\004\162\145\163\164\214\257\300\015\277\004\146\300\034\367\146\045\112\114\261\000"}; static struct {unsigned f; char r[28];} string13 = {1572888, "\006\002\000\007\000\040\016\000\003\001\000\000\000\000\014\014\000\014\014\014\014\000\010\001\000\000\000"}; static struct {unsigned f; char r[8];} string14 = {327688, "Error\000\000"}; static struct {unsigned f; char r[8];} string15 = {458760, " . . . "}; static struct {unsigned f; char r[8];} string16 = {262152, "New \000\000\000"}; static struct {unsigned f; char r[12];} string17 = {655372, "%g entries\000"}; static struct {unsigned f; char r[12];} string18 = {524300, "Progress\000\000\000"}; static struct {unsigned f; char r[8];} string19 = {327688, "Tioga\000\000"}; static struct {unsigned f; char r[16];} string20 = {851984, "/cedar/styles\000\000"}; static struct {unsigned f; char r[24];} string21 = {1441816, "Tioga.StyleSearchRules\000"}; static struct {unsigned f; char r[16];} string22 = {917520, ".abbreviations\000"}; static struct {unsigned f; char r[24];} string23 = {1376280, "NoDictionaryAvailable\000\000"}; static struct {unsigned f; char r[16];} string24 = {851984, "\257\300\307\007\213\134\300\135\027\262\354\100\164\000\000"}; static struct {unsigned f; char r[20];} string25 = {1048592, "\006\005\040\001\044\001\050\001\100\120\001\100\204\004\103\377\000\000\000"}; static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"}; static struct {unsigned f; char r[16];} string27 = {851984, "\257\300\314\212\213\004\300\112\342\014\072\100\164\000\000"}; static struct {unsigned f; char r[16];} string28 = {851984, "\257\300\004\173\141\246\300\255\256\170\002\100\150\000\000"}; static struct {unsigned f; char r[16];} string29 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"}; static struct {unsigned f; char r[16];} string30 = {851984, "\257\300\141\260\110\353\300\162\250\066\353\100\150\000\000"}; static struct {unsigned f; char r[16];} string31 = {851984, "\257\300\263\221\075\070\300\264\022\010\174\100\164\000\000"}; static struct {unsigned f; char r[16];} string32 = {851984, "\257\300\240\236\274\315\300\111\163\325\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string33 = {851984, "\257\300\242\221\264\046\300\105\142\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string34 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"}; static struct {unsigned f; char r[16];} string35 = {851984, "\257\300\366\233\214\046\300\233\036\213\260\100\150\000\000"}; static struct {unsigned f; char r[16];} string36 = {851984, "\257\300\275\320\070\317\300\004\110\363\366\100\150\000\000"}; static struct {unsigned f; char r[16];} string37 = {851984, "\257\300\353\035\365\325\300\132\075\117\337\100\150\000\000"}; static struct {unsigned f; char r[16];} string38 = {851984, "\257\300\261\010\310\246\300\337\340\027\051\100\150\000\000"}; static struct {unsigned f; char r[16];} string39 = {851984, "\257\3004+\202s\300vm?\203@h\000\000"}; static struct {unsigned f; char r[16];} string40 = {851984, "\257\300\042\224\360\026\300\243\254\175\360\100\150\000\000"}; static struct {unsigned f; char r[16];} string41 = {851984, "\257\300\233\251\177\064\300\273\157\236\236\100\150\000\000"}; static struct {unsigned f; char r[16];} string42 = {851984, "\257\300\134\353\367\206\300\202\044\112\356\100\150\000\000"}; static struct {unsigned f; char r[16];} string43 = {851984, "\257\300\123\156\240\340\300\077\103\217\263\100\150\000\000"}; static struct {unsigned f; char r[16];} string44 = {851984, "\257\300\273\376\112\203\300\237\326\241\360\100\150\000\000"}; static struct { word f0[44]; word f44; word f45; word f46; word f47; word f48; word f49; word f50; word f51; word f52; word f53; word f54; word f55; word f56; word f57; word f58; word f59; word f60; word f61; word f62; word f63; word f64; word f65; word f66; word f67; word f68; word f69; word f70; word f71; word f72; word f73; word f74; word f75; word f76; word f77; word f78; word f79; word f80; word f81; word f82; word f83; word f84; word f85[21]; } globalframe = { {0}, (word) Validate←P1140, 0, (word) ValidateAll←P1080, 0, (word) DoLocked←P1020, 0, (word) GetFileID←P960, 0, (word) Same←P900, 0, (word) GetDict←P840, 0, (word) FindKeyStart←P780, 0, (word) FindKeyLen←P720, 0, (word) LookupInternal←P660, 0, (word) Lookup←P600, 0, (word) KeyHash←P540, 0, (word) Expand←P480, 0, (word) ChangeRegistry←P420, 0, (word) GetDictAtom←P360, 0, (word) Clear←P300, 0, (word) ParseCommands←P240, 0, (word) AddToDict←P180, 0, (word) Load←P120, 0, (word) LoadInternal←P60, 0, (word) AbbrevExpandImpl←P0, 0, 2147483647, {0} }; static void NoName←Q5940() { register ptr gf←c0441 = (ptr) &globalframe; word var←c44160; (* (( (ptr) gf←c0441)+21) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c0441)+22) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string2); (* (( (ptr) gf←c0441)+23) ) = (word) XR←GetTypeIndexS((word) (&string4)); (* (( (ptr) gf←c0441)+25) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string2); (* (( (ptr) gf←c0441)+26) ) = (word) XR←GetTypeIndexS((word) (&string6)); (* (( (ptr) gf←c0441)+27) ) = (word) XR←GetTypeIndex((word) &string7, 0, (word) &string8); (* (( (ptr) gf←c0441)+29) ) = (word) XR←GetTypeIndex((word) &string9, 0, (word) &string8); (* (( (ptr) gf←c0441)+30) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string11); (* (( (ptr) gf←c0441)+32) ) = (word) XR←GetTypeIndex((word) &string12, 0, (word) &string13); (* (ptr) (( (bPt) gf←c0441)+132) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0441)+21) ), (word) &string14); (* (ptr) (( (bPt) gf←c0441)+136) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0441)+25) ), (word) &string15); (* (ptr) (( (bPt) gf←c0441)+140) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0441)+25) ), (word) &string16); (* (ptr) (( (bPt) gf←c0441)+144) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0441)+25) ), (word) &string17); (* (ptr) (( (bPt) gf←c0441)+148) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0441)+21) ), (word) &string18); (* (ptr) (( (bPt) gf←c0441)+152) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0441)+21) ), (word) &string19); (* (ptr) (( (bPt) gf←c0441)+156) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0441)+25) ), (word) &string20); (* (ptr) (( (bPt) gf←c0441)+160) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0441)+25) ), (word) &string21); (* (ptr) (( (bPt) gf←c0441)+164) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0441)+25) ), (word) &string22); (* (ptr) (( (bPt) gf←c0441)+168) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0441)+21) ), (word) &string23); (void) XR←DeclareGlobalFrame((word) "AbbrevExpandImpl", &globalframe, (word) XR←GetTypeIndex((word) &string24, 0, (word) &string25) , (word) (( (bPt) gf←c0441)+328)/* var←c39008 */ ); var←c44160 = (word) XR←ImportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string26)), 16); (* (( (ptr) gf←c0441)+99)/* var←c41152 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 67372289); (void) XR←ImportProcS(var←c44160, 67895555); var←c44160 = (word) XR←ImportInterface((word) "CharOps", (word) XR←GetTypeIndexS((word) (&string27)), 14); (* (( (ptr) gf←c0441)+97)/* var←c40128 */ ) = var←c44160; var←c44160 = (word) XR←ImportInterface((word) "EditSpan", (word) XR←GetTypeIndexS((word) (&string28)), 23); (* (( (ptr) gf←c0441)+100)/* var←c41696 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 271320327); var←c44160 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string29)), 103); (* (( (ptr) gf←c0441)+98)/* var←c40352 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 530434); (void) XR←ImportProcS(var←c44160, 67377409); (void) XR←ImportProcS(var←c44160, 67391233); (void) XR←ImportProcS(var←c44160, 67640578); var←c44160 = (word) XR←ImportInterface((word) "PFS", (word) XR←GetTypeIndexS((word) (&string30)), 40); (* (( (ptr) gf←c0441)+90)/* var←c39360 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 67371265); (void) XR←ImportProcS(var←c44160, 67634178); (void) XR←ImportProcS(var←c44160, 605292546); (void) XR←ImportProcS(var←c44160, 67633154); var←c44160 = (word) XR←ImportInterface((word) "PFSNames", (word) XR←GetTypeIndexS((word) (&string31)), 39); (* (( (ptr) gf←c0441)+102)/* var←c43552 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 67897091); var←c44160 = (word) XR←ImportInterface((word) "Process", (word) XR←GetTypeIndexS((word) (&string32)), 22); (* (( (ptr) gf←c0441)+104)/* var←c43936 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 134219776); var←c44160 = (word) XR←ImportInterface((word) "RefTab", (word) XR←GetTypeIndexS((word) (&string33)), 16); (* (( (ptr) gf←c0441)+88)/* var←c39104 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 67635458); (void) XR←ImportProcS(var←c44160, 134742786); (void) XR←ImportProcS(var←c44160, 67896579); (void) XR←ImportProcS(var←c44160, 67895555); var←c44160 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string34)), 43); (* (( (ptr) gf←c0441)+91)/* var←c39392 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 67633666); (void) XR←ImportProcS(var←c44160, 68163332); (void) XR←ImportProcS(var←c44160, 67373825); (void) XR←ImportProcS(var←c44160, 67898627); (void) XR←ImportProcS(var←c44160, 68419845); var←c44160 = (word) XR←ImportInterface((word) "RopeReader", (word) XR←GetTypeIndexS((word) (&string35)), 25); (* (( (ptr) gf←c0441)+89)/* var←c39264 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 69473545); (void) XR←ImportProcS(var←c44160, 67636482); (void) XR←ImportProcS(var←c44160, 268033); (void) XR←ImportProcS(var←c44160, 67114496); var←c44160 = (word) XR←ImportInterface((word) "RuntimeError", (word) XR←GetTypeIndexS((word) (&string36)), 27); (* (( (ptr) gf←c0441)+101)/* var←c43360 */ ) = var←c44160; var←c44160 = (word) XR←ImportInterface((word) "SimpleFeedback", (word) XR←GetTypeIndexS((word) (&string37)), 7); (* (( (ptr) gf←c0441)+92)/* var←c39424 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 1310981); (void) XR←ImportProcS(var←c44160, 525058); (void) XR←ImportProcS(var←c44160, 1048580); var←c44160 = (word) XR←ImportInterface((word) "TextEdit", (word) XR←GetTypeIndexS((word) (&string38)), 39); (* (( (ptr) gf←c0441)+95)/* var←c39712 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 136322568); (void) XR←ImportProcS(var←c44160, 792323); (void) XR←ImportProcS(var←c44160, 67376641); (void) XR←ImportProcS(var←c44160, 1582086); (void) XR←ImportProcS(var←c44160, 1837831); (void) XR←ImportProcS(var←c44160, 136583945); (void) XR←ImportProcS(var←c44160, 67633410); (void) XR←ImportProcS(var←c44160, 1317893); (void) XR←ImportProcS(var←c44160, 67371521); var←c44160 = (word) XR←ImportInterface((word) "TextEditBogus", (word) XR←GetTypeIndexS((word) (&string39)), 1); (* (( (ptr) gf←c0441)+96)/* var←c39872 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 67371009); var←c44160 = (word) XR←ImportInterface((word) "TextNode", (word) XR←GetTypeIndexS((word) (&string40)), 34); (* (( (ptr) gf←c0441)+94)/* var←c39680 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 67376641); (void) XR←ImportProcS(var←c44160, 67372289); (void) XR←ImportProcS(var←c44160, 67372545); (void) XR←ImportProcS(var←c44160, 67377153); var←c44160 = (word) XR←ImportInterface((word) "TiogaIO", (word) XR←GetTypeIndexS((word) (&string41)), 17); (* (( (ptr) gf←c0441)+93)/* var←c39456 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 403966722); var←c44160 = (word) XR←ImportInterface((word) "UserProfile", (word) XR←GetTypeIndexS((word) (&string42)), 11); (* (( (ptr) gf←c0441)+103)/* var←c43584 */ ) = var←c44160; (void) XR←ImportProcS(var←c44160, 67633922); var←c44160 = (word) XR←ExportInterface((word) "AbbrevExpand", (word) XR←GetTypeIndexS((word) (&string43)), 6); (* (( (ptr) gf←c0441)+105)/* var←c44192 */ ) = var←c44160; (void) XR←ExportProcS(var←c44160, (word) (( (bPt) gf←c0441)+312)/* var←c38944 */ , 67371009); (void) XR←ExportProcS(var←c44160, (word) (( (bPt) gf←c0441)+288)/* var←c38848 */ , 262401); (void) XR←ExportVar(var←c44160, 2, (word) (( (bPt) gf←c0441)+172)/* var←c38368 */ ); (void) XR←ExportProcS(var←c44160, (word) (( (bPt) gf←c0441)+264)/* var←c38752 */ , 403702532); (void) XR←ExportProcS(var←c44160, (word) (( (bPt) gf←c0441)+176)/* var←c38400 */ , 67372033); (void) XR←ExportProcS(var←c44160, (word) (( (bPt) gf←c0441)+184)/* var←c38432 */ , 67110144); var←c44160 = (word) XR←ExportInterface((word) "AbbrevExpandExtras", (word) XR←GetTypeIndexS((word) (&string44)), 1); (* (( (ptr) gf←c0441)+105)/* var←c44192 */ ) = var←c44160; (void) XR←ExportProcS(var←c44160, (word) (( (bPt) gf←c0441)+272)/* var←c38784 */ , 262145); } static void AbbrevExpandImpl←P0(formal←c069, formal←c066) word formal←c069; word formal←c066; { register ptr gf←c44224 = (ptr) &globalframe; /* AbbrevExpandImpl: */ SOURCE(1150, 13279) /* moved to installation proc */ SOURCE(1510, 45) { word pd45; pd45 = (* (( (ptr) (* (( (ptr) gf←c44224)+88)/* var←c39104 */ ))+5) ); (* (( (ptr) gf←c44224)+8)/* dictTable←v3644 */ ) = (word) ( *( (fPt) ((* (ptr) pd45 ))))(5, 0, 0, pd45); }; SOURCE(12382, 15) { word var←c39136; word var←c39168; var←c39136 = XR←NewObject(8, (* (( (ptr) gf←c44224)+27) )); var←c39168 = var←c39136; (* (ptr) var←c39168 ) = (* (( (ptr) gf←c44224)+39) ); (* (( (ptr) gf←c44224)+10)/* defaultSearch←v4232 */ ) = var←c39136; }; SOURCE(13768, 42) { word pd46; pd46 = (* (( (ptr) (* (( (ptr) gf←c44224)+88)/* var←c39104 */ ))+5) ); (* (( (ptr) gf←c44224)+20)/* fileForAbbr←v4484 */ ) = (word) ( *( (fPt) ((* (ptr) pd46 ))))(5, 0, 0, pd46); }; } static void LoadInternal←P60(formal←c085, formal←c0540, formal←c0541) word formal←c085; word formal←c0540; word formal←c0541; { W25 var←c44256; /* declaration of dict←v4888 skipped */ /* declaration of fileID←v4916 skipped */ register ptr gf←c44288 = (ptr) &globalframe; word ok←v4960; /* declaration of count←v4988 skipped */ /* declaration of var←c39200 skipped */ /* declaration of var←c39232 skipped */ /* declaration of rdr←v8104 skipped */ /* declaration of root←v8132 skipped */ (* (( (ptr) &var←c44256)+4)/* dict←v4888 */ ) = formal←c0540; (* (( (ptr) &var←c44256)+5)/* fileID←v4916 */ ) = formal←c0541; /* LoadInternal: */ SOURCE(1707, 1112) { word tmpAddr47; tmpAddr47 = (word) (( (ptr) &var←c44256)+7)/* var←c39200 */ ; (* (ptr) tmpAddr47 ) = ( ((word) (fPt) Empty←P1260) ); (* (( (ptr) tmpAddr47) + 1) ) = 1; }; { word tmpAddr48; tmpAddr48 = (word) (( (ptr) &var←c44256)+9)/* var←c39232 */ ; (* (ptr) tmpAddr48 ) = ( ((word) (fPt) Locked←P1200) ); (* (( (ptr) tmpAddr48) + 1) ) = 1; }; SOURCE(1707, 1112) ok←v4960 = 0; SOURCE(1707, 1112) (* (( (ptr) &var←c44256)+6)/* count←v4988 */ ) = 0; SOURCE(1803, 48) { word pd49; pd49 = (* (( (ptr) (* (( (ptr) gf←c44288)+89)/* var←c39264 */ ))+26) ); (* (( (ptr) &var←c44256)+11)/* rdr←v8104 */ ) = (word) ( *( (fPt) ((* (ptr) pd49 ))))(pd49); }; SOURCE(1853, 16) (* (( (ptr) &var←c44256)+12)/* root←v8132 */ ) = 0; SOURCE(2308, 45) if (((* (( (ptr) &var←c44256)+5)/* fileID←v4916 */ ) == 0)) { SOURCE(2330, 15) (void) DoLocked←P1020((word) ((( (bPt) &var←c44256)+28)/* var←c39200 */ )); SOURCE(2347, 6) goto lab←L100000; }; SOURCE(2356, 107) { word var←c39296; { word var←c39328; { word pd50; pd50 = (* (( (ptr) (* (( (ptr) gf←c44288)+90)/* var←c39360 */ ))+4) ); var←c39328 = (word) ( *( (fPt) ((* (ptr) pd50 ))))((* (ptr) (* (( (ptr) &var←c44256)+5)/* fileID←v4916 */ ) ), 0, pd50) ; }; { word pd51; pd51 = (* (( (ptr) (* (( (ptr) gf←c44288)+91)/* var←c39392 */ ))+5) ); var←c39296 = (word) ( *( (fPt) ((* (ptr) pd51 ))))((* (( (ptr) gf←c44288)+35) ), var←c39328, (* (( (ptr) gf←c44288)+34) ), 0, 0, pd51) ; }; }; { word pd52; pd52 = (* (( (ptr) (* (( (ptr) gf←c44288)+92)/* var←c39424 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd52 ))))((* (( (ptr) gf←c44288)+38) ), 1, (* (( (ptr) gf←c44288)+37) ), var←c39296, pd52); }; }; SOURCE(2465, 172) SOURCE(2465, 172) { W6 var←c39488; { /* declaration of var←c01 skipped */ /* declaration of var←c02 skipped */ /* declaration of var←c03 skipped */ (* (( (ptr) &var←c44256)+13)/* var←c01 */ ) = (* (ptr) (* (( (ptr) &var←c44256)+5)/* fileID←v4916 */ ) ); (* (W4Pt) (( (ptr) &var←c44256)+14)/* var←c02 */ ) = (* (W4Pt) (( (ptr) (* (( (ptr) &var←c44256)+5)/* fileID←v4916 */ ))+1) ); (* (( (ptr) &var←c44256)+18)/* var←c03 */ ) = (* (( (ptr) (* (( (ptr) gf←c44288)+93)/* var←c39456 */ ))+15) ); { /* declaration of var←c04 skipped */ { word var←c05; { word var←c0500; var←c0500 = (word) &var←c44256; var←c05 = (word) XR←Enable(( ((word) (fPt) NoName←Q6000) ), ( ((word) (fPt) NoName←Q6900) ), var←c0500); }; if ((var←c05 == 2)) { goto lab←L100002; }; }; var←c39488 = (* (W6Pt) (( (ptr) &var←c44256)+19)/* var←c04 */ ); }; }; (* (( (ptr) &var←c44256)+12)/* root←v8132 */ ) = var←c39488.f5; }; lab←L100002: ; SOURCE(2655, 25) if (((* (( (ptr) &var←c44256)+12)/* root←v8132 */ ) == 0)) { SOURCE(2674, 6) goto lab←L100000; }; SOURCE(2682, 16) (void) DoLocked←P1020((word) ((( (bPt) &var←c44256)+36)/* var←c39232 */ )); SOURCE(2700, 76) { W2 v1←v35648; v1←v35648.f0 = 5; v1←v35648.f1 = (* (( (ptr) &var←c44256)+6)/* count←v4988 */ ); { word var←c39552; { word var←c39584; word var←c39616; var←c39584 = XR←NewObject(12, (* (( (ptr) gf←c44288)+32) )); var←c39616 = var←c39584; (* (W2Pt) var←c39616 ) = v1←v35648; var←c39552 = var←c39584; }; { word pd53; pd53 = (* (( (ptr) (* (( (ptr) gf←c44288)+92)/* var←c39424 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd53 ))))((* (( (ptr) gf←c44288)+38) ), 3, (* (( (ptr) gf←c44288)+37) ), (* (( (ptr) gf←c44288)+36) ), var←c39552, pd53); }; }; }; SOURCE(2778, 30) { word pd54; pd54 = (* (( (ptr) (* (( (ptr) gf←c44288)+89)/* var←c39264 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd54 ))))((* ((( (ptr) &var←c44256)+11)/* rdr←v8104 */ ) ), pd54); }; SOURCE(2810, 9) ok←v4960 = 1; /* removed tail goto */ lab←L100000: ; (* (ptr) formal←c085 ) = ok←v4960; (* (( (ptr) formal←c085)+1) ) = (* (( (ptr) &var←c44256)+6)/* count←v4988 */ ); return; } static word NoName←Q6000(formal←c0444) word formal←c0444; { SOURCE(2465, 172) { word pd55; pd55 = (* (( (ptr) formal←c0444)+18) ); (void) ( *( (fPt) ((* (ptr) pd55 ))))((word) (( (bPt) formal←c0444)+76), (* (( (ptr) formal←c0444)+13) ), (* (W4Pt) (( (ptr) formal←c0444)+14) ), pd55); }; return(0); } static void Locked←P1200(formal←c44352) word formal←c44352; { register ptr gf←c44320 = (ptr) &globalframe; formal←c44352 = (formal←c44352 - 36); /* Locked: */ SOURCE(1871, 340) SOURCE(1888, 46) { word var←c39648; word pd56; pd56 = (* (( (ptr) (* (( (ptr) gf←c44320)+88)/* var←c39104 */ ))+9) ); var←c39648 = (word) ( *( (fPt) ((* (ptr) pd56 ))))((* (( (ptr) gf←c44320)+8)/* dictTable←v3644 */ ), (* (( (ptr) formal←c44352)+4) ), (* (( (ptr) gf←c44320)+42) ), pd56); }; SOURCE(1961, 195) { register word node←v8264; { word pd57; pd57 = (* (( (ptr) (* (( (ptr) gf←c44320)+94)/* var←c39680 */ ))+28) ); node←v8264 = (word) ( *( (fPt) ((* (ptr) pd57 ))))((* ((( (ptr) formal←c44352)+12)) ), pd57); }; lab←L100008: ; if ((node←v8264 != 0)) { } else { goto lab←L100005; }; SOURCE(2043, 58) { word pd59; if ((node←v8264 == 0)) { goto then058;}; if (*((int*)node←v8264 + 9)<0) { goto then058;}; pd59 = (* (( (ptr) (* (( (ptr) gf←c44320)+95)/* var←c39712 */ ))+6) ); if (( (int)(word) ( *( (fPt) ((* (ptr) pd59 ))))(node←v8264, pd59) == (int)0)) { then058: ; SOURCE(2101, 4) goto lab←L100007; }; }; SOURCE(2107, 32) (void) AddToDict←P180((* (( (ptr) formal←c44352)+12) ), node←v8264, (* (( (ptr) formal←c44352)+4) ), (* (( (ptr) formal←c44352)+11) )); SOURCE(2141, 15) (* (( (ptr) formal←c44352)+6) ) = ((* (( (ptr) formal←c44352)+6) ) + 1); lab←L100007: ; { word pd60; pd60 = (* (( (ptr) (* (( (ptr) gf←c44320)+94)/* var←c39680 */ ))+10) ); node←v8264 = (word) ( *( (fPt) ((* (ptr) pd60 ))))(node←v8264, pd60); }; goto lab←L100008; lab←L100005: ; }; SOURCE(2167, 44) { word var←c39744; word pd61; pd61 = (* (( (ptr) (* (( (ptr) gf←c44320)+88)/* var←c39104 */ ))+9) ); var←c39744 = (word) ( *( (fPt) ((* (ptr) pd61 ))))((* (( (ptr) gf←c44320)+20)/* fileForAbbr←v4484 */ ), (* (( (ptr) formal←c44352)+4) ), (* (( (ptr) formal←c44352)+5) ), pd61); }; } static void Empty←P1260(formal←c44416) word formal←c44416; { register ptr gf←c44384 = (ptr) &globalframe; formal←c44416 = (formal←c44416 - 28); /* Empty: */ SOURCE(2216, 62) SOURCE(2232, 46) { word var←c39776; word pd62; pd62 = (* (( (ptr) (* (( (ptr) gf←c44384)+88)/* var←c39104 */ ))+9) ); var←c39776 = (word) ( *( (fPt) ((* (ptr) pd62 ))))((* (( (ptr) gf←c44384)+8)/* dictTable←v3644 */ ), (* (( (ptr) formal←c44416)+4) ), (* (( (ptr) gf←c44384)+42) ), pd62); }; } static word Load←P120(dictName←v5048) word dictName←v5048; { word count←v5092; word dict←v8308; /* Load: */ SOURCE(2825, 152) SOURCE(2825, 152) count←v5092 = 0; SOURCE(2889, 34) dict←v8308 = (word) GetDictAtom←P360(dictName←v5048); SOURCE(2925, 52) { W2 var←c39840; { word var←c39808; var←c39808 = (word) GetFileID←P960(dict←v8308); (void) LoadInternal←P60((word) &var←c39840, dict←v8308, var←c39808); }; count←v5092 = var←c39840.f1; }; SOURCE(2825, 152) return(count←v5092); } static void AddToDict←P180(formal←c0542, formal←c0543, formal←c0544, formal←c0545) word formal←c0542; word formal←c0543; word formal←c0544; word formal←c0545; { W8 var←c44448; /* declaration of root←v5152 skipped */ /* declaration of node←v5180 skipped */ /* declaration of dictAtom←v5208 skipped */ /* declaration of rdr←v5236 skipped */ register ptr gf←c44480 = (ptr) &globalframe; var←c44448.f4/* root←v5152 */ = formal←c0542; var←c44448.f5/* node←v5180 */ = formal←c0543; var←c44448.f6/* dictAtom←v5208 */ = formal←c0544; var←c44448.f7/* rdr←v5236 */ = formal←c0545; /* AddToDict: */ SOURCE(2983, 1091) (void) (XR←MonitorEntry((word) (( (bPt) gf←c44480)+16)/* LOCK←v3504 */ )); SOURCE(3077, 997) { word var←c06; { word var←c0501; var←c0501 = (word) &var←c44448; var←c06 = (word) XR←Enable(( ((word) (fPt) NoName←Q6060) ), ( ((word) (fPt) NoName←Q6840) ), var←c0501); }; if ((var←c06 == 1)) { goto lab←L03; }; }; SOURCE(2983, 1091) (void) (XR←MonitorExit((word) (( (bPt) gf←c44480)+16)/* LOCK←v3504 */ )); return; lab←L03: ; return; } static word NoName←Q6060(formal←c0451) word formal←c0451; { register ptr gf←c0450 = (ptr) &globalframe; SOURCE(3101, 31) { word dict←v8352; word keyRope←v8380; word hash←v8436; word entry←v8464 = 0; word keyLen←v8492; word freeRdr←v8520 = 0; word resultStart←v8548; word commands←v8576 = 0; SOURCE(3101, 31) dict←v8352 = (word) GetDict←P840((* ((( (ptr) formal←c0451)+6)) )); SOURCE(3134, 43) { word pd63; pd63 = (* (( (ptr) (* (( (ptr) gf←c0450)+96)/* var←c39872 */ ))+4) ); keyRope←v8380 = (word) ( *( (fPt) ((* (ptr) pd63 ))))((* ((( (ptr) formal←c0451)+5)) ), pd63); }; SOURCE(3310, 67) if (((* (( (ptr) formal←c0451)+7) ) == 0)) { SOURCE(3328, 32) { word pd64; pd64 = (* (( (ptr) (* (( (ptr) gf←c0450)+89)/* var←c39264 */ ))+26) ); (* (( (ptr) formal←c0451)+7) ) = (word) ( *( (fPt) ((* (ptr) pd64 ))))(pd64); }; SOURCE(3362, 15) freeRdr←v8520 = 1; }; SOURCE(3380, 32) keyLen←v8492 = (word) FindKeyLen←P720(keyRope←v8380, (* (( (ptr) formal←c0451)+7) )); SOURCE(3414, 74) if ((keyLen←v8492 == 0)) { SOURCE(3433, 46) if ((0 != freeRdr←v8520)) { SOURCE(3449, 30) { word pd65; pd65 = (* (( (ptr) (* (( (ptr) gf←c0450)+89)/* var←c39264 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd65 ))))((* ((( (ptr) formal←c0451)+7)) ), pd65); }; }; SOURCE(3481, 7) (void) (XR←MonitorExit((word) (( (bPt) gf←c0450)+16)/* LOCK←v3504 */ )); return(1); }; SOURCE(3507, 43) hash←v8436 = (word) KeyHash←P540(keyRope←v8380, 0, keyLen←v8492, (* (( (ptr) formal←c0451)+7) )); SOURCE(3552, 61) entry←v8464 = (word) LookupInternal←P660(dict←v8352, hash←v8436, keyRope←v8380, 0, keyLen←v8492, (* (( (ptr) formal←c0451)+7) ) , 0); SOURCE(3615, 176) if ((entry←v8464 == 0)) { SOURCE(3654, 21) entry←v8464 = XR←NewObject(20, (* (( (ptr) gf←c0450)+30) )); SOURCE(3677, 114) if ((dict←v8352 != 0)) { SOURCE(3698, 22) (* (ptr) entry←v8464 ) = (* (ptr) dict←v8352 ); SOURCE(3722, 18) (* (ptr) dict←v8352 ) = entry←v8464; } else { SOURCE(3747, 44) { word var←c39936; word pd66; pd66 = (* (( (ptr) (* (( (ptr) gf←c0450)+88)/* var←c39104 */ ))+9) ); var←c39936 = (word) ( *( (fPt) ((* (ptr) pd66 ))))((* (( (ptr) gf←c0450)+8)/* dictTable←v3644 */ ), (* (( (ptr) formal←c0451)+6) ), entry←v8464, pd66); }; }; }; SOURCE(3794, 17) (* (( (ptr) entry←v8464)+1) ) = hash←v8436; SOURCE(3813, 52) { word pd67; pd67 = (* (( (ptr) (* (( (ptr) gf←c0450)+91)/* var←c39392 */ ))+17) ); (* (( (ptr) entry←v8464)+2) ) = (word) ( *( (fPt) ((* (ptr) pd67 ))))(keyRope←v8380, 0, keyLen←v8492, pd67); }; SOURCE(3867, 17) (* (( (ptr) entry←v8464)+3) ) = (* (( (ptr) formal←c0451)+5) ); SOURCE(3886, 67) { W2 var←c39968; (void) ParseCommands←P240((word) &var←c39968, keyRope←v8380, keyLen←v8492, (* (( (ptr) formal←c0451)+7) )); commands←v8576 = var←c39968.f1; resultStart←v8548 = var←c39968.f0; }; SOURCE(3955, 25) (* (( (ptr) entry←v8464)+4) ) = commands←v8576; SOURCE(3982, 44) { word pd68; pd68 = (* (( (ptr) (* (( (ptr) gf←c0450)+95)/* var←c39712 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd68 ))))((* (( (ptr) formal←c0451)+4) ), (* (( (ptr) formal←c0451)+5) ), 0, resultStart←v8548, 0, pd68) ; }; SOURCE(4028, 46) if ((0 != freeRdr←v8520)) { SOURCE(4044, 30) { word pd69; pd69 = (* (( (ptr) (* (( (ptr) gf←c0450)+89)/* var←c39264 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd69 ))))((* ((( (ptr) formal←c0451)+7)) ), pd69); }; }; }; return(0); } static void ParseCommands←P240(formal←c0118, formal←c0546, formal←c0547, formal←c0548) word formal←c0118; word formal←c0546; word formal←c0547; word formal←c0548; { W9 var←c44512; /* declaration of keyRope←v5296 skipped */ /* declaration of start←v5324 skipped */ /* declaration of rdr←v5352 skipped */ register ptr gf←c44544 = (ptr) &globalframe; /* declaration of end←v5396 skipped */ /* declaration of commands←v5424 skipped */ (* (( (ptr) &var←c44512)+4)/* keyRope←v5296 */ ) = formal←c0546; (* (( (ptr) &var←c44512)+5)/* start←v5324 */ ) = formal←c0547; (* (( (ptr) &var←c44512)+6)/* rdr←v5352 */ ) = formal←c0548; /* ParseCommands: */ SOURCE(4080, 872) SOURCE(4080, 872) (* (( (ptr) &var←c44512)+8)/* commands←v5424 */ ) = 0; SOURCE(4197, 755) SOURCE(4216, 683) { word var←c07; { word var←c0502; var←c0502 = (word) &var←c44512; var←c07 = (word) XR←Enable(( ((word) (fPt) NoName←Q6120) ), ( ((word) (fPt) NoName←Q6780) ), var←c0502); }; if ((var←c07 == 3)) { goto lab←L100012; }; }; goto lab←L100030; lab←L100012: ; SOURCE(4914, 36) { word var←c40960; { word pd70; pd70 = (* (( (ptr) (* (( (ptr) gf←c44544)+91)/* var←c39392 */ ))+15) ); var←c40960 = (word) ( *( (fPt) ((* (ptr) pd70 ))))((* ((( (ptr) &var←c44512)+4)/* keyRope←v5296 */ ) ), pd70); }; (* (( (ptr) &var←c44512)+7)/* end←v5396 */ ) = var←c40960; /* removed bogus assignment */ goto lab←L100011; }; lab←L100030: ; /* removed tail goto */ lab←L100011: ; (* (ptr) formal←c0118 ) = (* (( (ptr) &var←c44512)+7)/* end←v5396 */ ); (* (( (ptr) formal←c0118)+1) ) = (* (( (ptr) &var←c44512)+8)/* commands←v5424 */ ); return; } static word NoName←Q6120(formal←c0454) word formal←c0454; { register ptr gf←c0453 = (ptr) &globalframe; SOURCE(4247, 11) { word blank←v8716; word var←c40032; word c←v38224; word var←c40256; word text←v37172; word i←v37200; word var←c40608; word text←v37028; word i←v37056; SOURCE(4260, 32) { word reader←v36676; word rope←v36704; word index←v36732; word var←c40000; word rope←v24868; reader←v36676 = (* (( (ptr) formal←c0454)+6) ); rope←v36704 = (* (( (ptr) formal←c0454)+4) ); index←v36732 = (* (( (ptr) formal←c0454)+5) ); { word tc71; rope←v24868 = 0; var←c40000 = (* (( (ptr) reader←v36676)+2) ); if (((var←c40000 == rope←v36704) )) { tc71 = (word) ( (int)((* (( (ptr) reader←v36676)+3) ) + (* (( (ptr) reader←v36676)+1) )) == (int)index←v36732); } else { tc71 = (word) 0; }; if (tc71) { goto lab←L100016; }; }; (* (( (ptr) reader←v36676)+2) ) = rope←v36704; (* (( (ptr) reader←v36676)+1) ) = 0; (* (hPt) (* (ptr) reader←v36676 ) ) = 0; (* (( (ptr) reader←v36676)+3) ) = index←v36732; lab←L100016: ; }; SOURCE(4294, 83) { word text←v23852; word i←v23896; text←v23852 = (* (ptr) (* (( (ptr) formal←c0454)+6) ) ); i←v23896 = (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ); { word limit72; word pd73; if ((i←v23896 < (* (hPt) text←v23852 ))) { c←v38224 = (word) (* ((( (bPt) text←v23852)+4)+( limit72 = (word) (* (( (hPt) text←v23852)+1) ), BCK(i←v23896, limit72) )) ); } else { pd73 = (* (( (ptr) (* (( (ptr) gf←c0453)+89)/* var←c39264 */ ))+17) ); c←v38224 = (word) ( *( (fPt) ((* (ptr) pd73 ))))((* (( (ptr) formal←c0454)+6) ), 2, pd73); }; }; }; var←c40032 = ((word) (* (( (bPt) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c0453)+97)/* var←c40128 */ ))+4) ) ))+c←v38224) ) == 1); if (((0 != var←c40032) )) { SOURCE(4329, 12) blank←v8716 = 1; SOURCE(4343, 14) { word var←c40224; { word text←v23080; word i←v23124; text←v23080 = (* (ptr) (* (( (ptr) formal←c0454)+6) ) ); i←v23124 = (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ); { word pd75; if ((i←v23124 < (* (hPt) text←v23080 ))) { (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ) = (i←v23124 + 1); { word limit74; var←c40224 = (word) (* ((( (bPt) text←v23080)+4)+( /*1*/ limit74 = (word) (* (( (hPt) text←v23080)+1) ), /*1*/ BCK(i←v23124, limit74) /*1*/ )) ); }; } else { pd75 = (* (( (ptr) (* (( (ptr) gf←c0453)+89)/* var←c39264 */ ))+17) ); var←c40224 = (word) ( *( (fPt) ((* (ptr) pd75 ))))((* (( (ptr) formal←c0454)+6) ), 0, pd75); }; }; }; }; } else { SOURCE(4364, 13) blank←v8716 = 0; }; SOURCE(4379, 310) text←v37172 = (* (ptr) (* (( (ptr) formal←c0454)+6) ) ); i←v37200 = (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ); { word limit76; word pd77; if ((i←v37200 < (* (hPt) text←v37172 ))) { var←c40256 = (word) (* ((( (bPt) text←v37172)+4)+( limit76 = (word) (* (( (hPt) text←v37172)+1) ), BCK(i←v37200, limit76) )) ); } else { pd77 = (* (( (ptr) (* (( (ptr) gf←c0453)+89)/* var←c39264 */ ))+17) ); var←c40256 = (word) ( *( (fPt) ((* (ptr) pd77 ))))((* (( (ptr) formal←c0454)+6) ), 2, pd77); }; }; if (((var←c40256 == 40) )) { SOURCE(4402, 289) { word h←v8760; word var←c40416; word c←v38176; SOURCE(4426, 65) { word var←c40320; { word var←c0503; (* (( (ptr) formal←c0454)+5) ) = ((* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+3) ) + (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) )); var←c0503 = (* (( (ptr) formal←c0454)+5) ); { word pd78; pd78 = (* (( (ptr) (* (( (ptr) gf←c0453)+91)/* var←c39392 */ ))+17) ); var←c40320 = (word) ( *( (fPt) ((* (ptr) pd78 ))))((* (( (ptr) formal←c0454)+4) ), var←c0503, 2147483647, pd78); }; }; { word pd79; pd79 = (* (( (ptr) (* (( (ptr) gf←c0453)+98)/* var←c40352 */ ))+33) ); h←v8760 = (word) ( *( (fPt) ((* (ptr) pd79 ))))(var←c40320, 0, pd79); }; }; SOURCE(4493, 34) { word pd80; pd80 = (* (( (ptr) (* (( (ptr) gf←c0453)+98)/* var←c40352 */ ))+83) ); (* (( (ptr) formal←c0454)+8) ) = XR←Narrow((word) ( *( (fPt) ((* (ptr) pd80 ))))(h←v8760, pd80), (* (( (ptr) gf←c0453)+29) )); }; SOURCE(4529, 28) { word pd81; pd81 = (* (( (ptr) (* (( (ptr) gf←c0453)+98)/* var←c40352 */ ))+29) ); (* (( (ptr) formal←c0454)+5) ) = ((* (( (ptr) formal←c0454)+5) ) + (word) ( *( (fPt) ((* (ptr) pd81 ))))(h←v8760, pd81)); }; SOURCE(4559, 11) { word pd82; pd82 = (* (( (ptr) (* (( (ptr) gf←c0453)+98)/* var←c40352 */ ))+28) ); (void) ( *( (fPt) ((* (ptr) pd82 ))))(h←v8760, 0, pd82); }; SOURCE(4572, 32) { word reader←v36528; word rope←v36556; word index←v36584; word var←c40384; word rope←v36632; reader←v36528 = (* (( (ptr) formal←c0454)+6) ); rope←v36556 = (* (( (ptr) formal←c0454)+4) ); index←v36584 = (* (( (ptr) formal←c0454)+5) ); { word tc83; rope←v36632 = 0; var←c40384 = (* (( (ptr) reader←v36528)+2) ); if (((var←c40384 == rope←v36556) )) { tc83 = (word) ( (int)((* (( (ptr) reader←v36528)+3) ) + (* (( (ptr) reader←v36528)+1) )) == (int)index←v36584); } else { tc83 = (word) 0; }; if (tc83) { goto lab←L100022; }; }; (* (( (ptr) reader←v36528)+2) ) = rope←v36556; (* (( (ptr) reader←v36528)+1) ) = 0; (* (hPt) (* (ptr) reader←v36528 ) ) = 0; (* (( (ptr) reader←v36528)+3) ) = index←v36584; lab←L100022: ; }; SOURCE(4606, 83) { word text←v37100; word i←v37128; text←v37100 = (* (ptr) (* (( (ptr) formal←c0454)+6) ) ); i←v37128 = (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ); { word limit84; word pd85; if ((i←v37128 < (* (hPt) text←v37100 ))) { c←v38176 = (word) (* ((( (bPt) text←v37100)+4)+( limit84 = (word) (* (( (hPt) text←v37100)+1) ), BCK(i←v37128, limit84) )) ); } else { pd85 = (* (( (ptr) (* (( (ptr) gf←c0453)+89)/* var←c39264 */ ))+17) ); c←v38176 = (word) ( *( (fPt) ((* (ptr) pd85 ))))((* (( (ptr) formal←c0454)+6) ), 2, pd85); }; }; }; var←c40416 = ((word) (* (( (bPt) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c0453)+97)/* var←c40128 */ ))+4) ) ))+c←v38176) ) == 1); if (((0 != var←c40416) )) { SOURCE(4641, 12) blank←v8716 = 1; SOURCE(4655, 14) { word var←c40576; { word text←v37652; word i←v37680; text←v37652 = (* (ptr) (* (( (ptr) formal←c0454)+6) ) ); i←v37680 = (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ); { word pd87; if ((i←v37680 < (* (hPt) text←v37652 ))) { (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ) = (i←v37680 + 1); { /*1*/ word limit86; /*1*/ var←c40576 = (word) (* ((( (bPt) text←v37652)+4)+( /*1*/ limit86 = (word) (* (( (hPt) text←v37652)+1) ), /*1*/ BCK(i←v37680, limit86) /*1*/ )) ); /*1*/ }; } else { pd87 = (* (( (ptr) (* (( (ptr) gf←c0453)+89)/* var←c39264 */ ))+17) ); var←c40576 = (word) ( *( (fPt) ((* (ptr) pd87 ))))((* (( (ptr) formal←c0454)+6) ), 0, pd87); }; }; }; }; } else { SOURCE(4676, 13) blank←v8716 = 0; }; }; }; SOURCE(4694, 205) text←v37028 = (* (ptr) (* (( (ptr) formal←c0454)+6) ) ); i←v37056 = (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ); { word limit88; word pd89; if ((i←v37056 < (* (hPt) text←v37028 ))) { var←c40608 = (word) (* ((( (bPt) text←v37028)+4)+( limit88 = (word) (* (( (hPt) text←v37028)+1) ), BCK(i←v37056, limit88) )) ); } else { pd89 = (* (( (ptr) (* (( (ptr) gf←c0453)+89)/* var←c39264 */ ))+17) ); var←c40608 = (word) ( *( (fPt) ((* (ptr) pd89 ))))((* (( (ptr) formal←c0454)+6) ), 2, pd89); }; }; if (((var←c40608 == 61) )) { { word var←c40768; word text←v36956; word i←v36984; SOURCE(4738, 13) { word var←c40736; { word text←v37580; word i←v37608; text←v37580 = (* (ptr) (* (( (ptr) formal←c0454)+6) ) ); i←v37608 = (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ); { word pd91; if ((i←v37608 < (* (hPt) text←v37580 ))) { (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ) = (i←v37608 + 1); { word limit90; var←c40736 = (word) (* ((( (bPt) text←v37580)+4)+( /*1*/ limit90 = (word) (* (( (hPt) text←v37580)+1) ), /*1*/ BCK(i←v37608, limit90) /*1*/ )) ); }; } else { pd91 = (* (( (ptr) (* (( (ptr) gf←c0453)+89)/* var←c39264 */ ))+17) ); var←c40736 = (word) ( *( (fPt) ((* (ptr) pd91 ))))((* (( (ptr) formal←c0454)+6) ), 0, pd91); }; }; }; }; SOURCE(4753, 46) { word tc92; if ((0 != blank←v8716)) { text←v36956 = (* (ptr) (* (( (ptr) formal←c0454)+6) ) ); i←v36984 = (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ); { word limit93; word pd94; if ((i←v36984 < (* (hPt) text←v36956 ))) { var←c40768 = (word) (* ((( (bPt) text←v36956)+4)+( /*1*/ limit93 = (word) (* (( (hPt) text←v36956)+1) ), /*1*/ BCK(i←v36984, limit93) /*1*/ )) ); } else { pd94 = (* (( (ptr) (* (( (ptr) gf←c0453)+89)/* var←c39264 */ ))+17) ); var←c40768 = (word) ( *( (fPt) ((* (ptr) pd94 ))))((* (( (ptr) formal←c0454)+6) ), 2, pd94); }; }; tc92 = (word) (var←c40768 == 32); } else { tc92 = (word) 0; }; if (tc92) { SOURCE(4786, 13) { word var←c40896; { word text←v37508; word i←v37536; text←v37508 = (* (ptr) (* (( (ptr) formal←c0454)+6) ) ); i←v37536 = (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ); { word pd96; if ((i←v37536 < (* (hPt) text←v37508 ))) { /*1*/ (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) ) = (i←v37536 + 1); /*1*/ { /*1*/ word limit95; /*1*/ var←c40896 = (word) (* ((( (bPt) text←v37508)+4)+( /*1*/ limit95 = (word) (* (( (hPt) text←v37508)+1) ), /*1*/ BCK(i←v37536, limit95) /*1*/ )) ); /*1*/ }; /*1*/ } else { /*1*/ pd96 = (* (( (ptr) (* (( (ptr) gf←c0453)+89)/* var←c39264 */ ))+17) ); /*1*/ var←c40896 = (word) ( *( (fPt) ((* (ptr) pd96 ))))((* (( (ptr) formal←c0454)+6) ), 0, pd96); /*1*/ }; }; }; }; }; }; SOURCE(4847, 19) (* (( (ptr) formal←c0454)+7) ) = ((* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+3) ) + (* (( (ptr) (* (( (ptr) formal←c0454)+6) ))+1) )); }; } else { SOURCE(4875, 24) { word pd97; pd97 = (* (( (ptr) (* (( (ptr) gf←c0453)+91)/* var←c39392 */ ))+15) ); (* (( (ptr) formal←c0454)+7) ) = (word) ( *( (fPt) ((* (ptr) pd97 ))))((* ((( (ptr) formal←c0454)+4)) ), pd97); }; }; }; return(0); } static void Clear←P300(formal←c0549) word formal←c0549; { W5 var←c44576; /* declaration of dictName←v5580 skipped */ register ptr gf←c44608 = (ptr) &globalframe; var←c44576.f4/* dictName←v5580 */ = formal←c0549; /* Clear: */ SOURCE(4956, 125) (void) (XR←MonitorEntry((word) (( (bPt) gf←c44608)+16)/* LOCK←v3504 */ )); SOURCE(5002, 79) { word var←c0504; var←c0504 = (word) &var←c44576; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q6180) ), ( ((word) (fPt) NoName←Q6720) ), var←c0504); }; SOURCE(4956, 125) (void) (XR←MonitorExit((word) (( (bPt) gf←c44608)+16)/* LOCK←v3504 */ )); return; } static word NoName←Q6180(formal←c0457) word formal←c0457; { register ptr gf←c0456 = (ptr) &globalframe; SOURCE(5025, 56) { word var←c41024; { word var←c40992; var←c40992 = (word) GetDictAtom←P360((* ((( (ptr) formal←c0457)+4)) )); { word pd98; pd98 = (* (( (ptr) (* (( (ptr) gf←c0456)+88)/* var←c39104 */ ))+9) ); var←c41024 = (word) ( *( (fPt) ((* (ptr) pd98 ))))((* (( (ptr) gf←c0456)+8)/* dictTable←v3644 */ ), var←c40992, 0, pd98) ; }; }; }; return(0); } static word GetDictAtom←P360(dictName←v5656) word dictName←v5656; { W6 var←c44640; register ptr gf←c44672 = (ptr) &globalframe; word dict←v5700; /* declaration of var←c41056 skipped */ /* GetDictAtom: */ SOURCE(5123, 203) { word tmpAddr99; tmpAddr99 = (word) (( (ptr) &var←c44640)+4)/* var←c41056 */ ; (* (ptr) tmpAddr99 ) = ( ((word) (fPt) ForceLower←P1512) ); (* (( (ptr) tmpAddr99) + 1) ) = 1; }; SOURCE(5123, 203) dict←v5700 = 0; SOURCE(5250, 76) { word var←c41120; { word pd100; pd100 = (* (( (ptr) (* (( (ptr) gf←c44672)+91)/* var←c39392 */ ))+27) ); var←c41120 = (word) ( *( (fPt) ((* (ptr) pd100 ))))(dictName←v5656, 0, 2147483647, (word) (( (bPt) &var←c44640)+16)/* var←c41056 */ , pd100) ; }; { word pd101; pd101 = (* (( (ptr) (* (( (ptr) gf←c44672)+99)/* var←c41152 */ ))+5) ); return((word) ( *( (fPt) ((* (ptr) pd101 ))))(var←c41120, 0, 2147483647, pd101)); }; }; } static word ForceLower←P1512(old←v35120, formal←c44704) word old←v35120; word formal←c44704; { word var←c35164; formal←c44704 = (formal←c44704 - 16); /* ForceLower: */ SOURCE(5183, 64) SOURCE(5219, 28) if (((old←v35120 - 65) <= 25)) { return((( SGNCK((old←v35120 - 65)) ) + 97)); } else { return(old←v35120); }; } static void ChangeRegistry←P420(change←v5760) word change←v5760; { register ptr gf←c44736 = (ptr) &globalframe; /* ChangeRegistry: */ SOURCE(5372, 132) SOURCE(5459, 45) (* (( (ptr) gf←c44736)+9)/* findEntryRegistry←v3924 */ ) = (word) ( *( (fPt) ((* (ptr) change←v5760 ))))((* ((( (ptr) gf←c44736)+9) /* findEntryRegistry←v3924 */ ) ), change←v5760); } static void Expand←P480(formal←c0224, keyNode←v5924, keyEnd←v5952, dict←v5980, event←v6008) word formal←c0224; word keyNode←v5924; word keyEnd←v5952; word dict←v5980; word event←v6008; { W18 var←c44768; register ptr gf←c44800 = (ptr) &globalframe; word foundIt←v6052; /* declaration of keyDeterminesDict←v6080 skipped */ /* declaration of keyStart←v6108 skipped */ word keyLen←v6136; word resultLen←v6164; word commands←v6192; /* declaration of var←c41184 skipped */ /* declaration of var←c41216 skipped */ /* declaration of registry←v8848 skipped */ word dictAtom←v8876; /* declaration of keyRope←v8904 skipped */ /* declaration of kLen←v8932 skipped */ /* declaration of kStart←v8960 skipped */ word entry←v8988 = 0; /* declaration of hash←v9016 skipped */ /* declaration of rdr←v9044 skipped */ /* Expand: */ SOURCE(5510, 3888) { word tmpAddr102; tmpAddr102 = (word) (( (ptr) &var←c44768)+6)/* var←c41184 */ ; (* (ptr) tmpAddr102 ) = ( ((word) (fPt) CheckCaps←P1776) ); (* (( (ptr) tmpAddr102) + 1) ) = 1; }; { word tmpAddr103; tmpAddr103 = (word) (( (ptr) &var←c44768)+8)/* var←c41216 */ ; (* (ptr) tmpAddr103 ) = ( ((word) (fPt) FindEntry←P1572) ); (* (( (ptr) tmpAddr103) + 1) ) = 1; }; SOURCE(5510, 3888) commands←v6192 = 0; SOURCE(5711, 43) (* (( (ptr) &var←c44768)+10)/* registry←v8848 */ ) = (* (( (ptr) gf←c44800)+9)/* findEntryRegistry←v3924 */ ); SOURCE(5775, 34) dictAtom←v8876 = (word) GetDictAtom←P360(dict←v5980); SOURCE(5811, 46) { word pd104; pd104 = (* (( (ptr) (* (( (ptr) gf←c44800)+96)/* var←c39872 */ ))+4) ); (* (( (ptr) &var←c44768)+11)/* keyRope←v8904 */ ) = (word) ( *( (fPt) ((* (ptr) pd104 ))))(keyNode←v5924, pd104); }; SOURCE(5919, 48) { word pd105; pd105 = (* (( (ptr) (* (( (ptr) gf←c44800)+89)/* var←c39264 */ ))+26) ); (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ ) = (word) ( *( (fPt) ((* (ptr) pd105 ))))(pd105); }; { word var←c41312; word i←v21892; SOURCE(6676, 35) (* (( (ptr) &var←c44768)+4)/* keyDeterminesDict←v6080 */ ) = 0; foundIt←v6052 = 0; SOURCE(6713, 13) resultLen←v6164 = 0; SOURCE(6728, 46) { word pd106; word x107; word x108; pd106 = (* (( (ptr) (* (( (ptr) gf←c44800)+91)/* var←c39392 */ ))+15) ); keyEnd←v5952 = (x108 = (x107 = (word) ( *( (fPt) ((* (ptr) pd106 ))))((* ((( (ptr) &var←c44768)+11)/* keyRope←v8904 */ ) ), pd106) , MIN((int)(word), keyEnd←v5952, x107)), MAX((int)(word), 0, x108)); }; SOURCE(6776, 52) { word var←c41248; var←c41248 = (word) FindKeyStart←P780((* (( (ptr) &var←c44768)+11)/* keyRope←v8904 */ ), keyEnd←v5952, (* (( (ptr) &var←c44768)+15) /* rdr←v9044 */ )); (* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ) = var←c41248; (* (( (ptr) &var←c44768)+13)/* kStart←v8960 */ ) = var←c41248; }; SOURCE(6830, 31) keyLen←v6136 = (keyEnd←v5952 - (* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ )); (* (( (ptr) &var←c44768)+12)/* kLen←v8932 */ ) = SGNCK(keyLen←v6136); SOURCE(6863, 43) (* (( (ptr) &var←c44768)+14)/* hash←v9016 */ ) = (word) KeyHash←P540((* (( (ptr) &var←c44768)+11)/* keyRope←v8904 */ ), (* ( ( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ), keyEnd←v5952, (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ )); SOURCE(6908, 44) { word rope←v36408; word index←v36436; word var←c41280; word rope←v36484; rope←v36408 = (* (( (ptr) &var←c44768)+11)/* keyRope←v8904 */ ); index←v36436 = (* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ); { word tc109; rope←v36484 = 0; var←c41280 = (* (( (ptr) (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ ))+2) ); if (((var←c41280 == rope←v36408) )) { tc109 = (word) ( (int)((* (( (ptr) (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ ))+3) ) + (* (( (ptr) (* (( (ptr) &var←c44768)+15) /* rdr←v9044 */ ))+1) )) == (int)index←v36436); } else { tc109 = (word) 0; }; if (tc109) { goto lab←L100035; }; }; (* (( (ptr) (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ ))+2) ) = rope←v36408; (* (( (ptr) (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ ))+1) ) = 0; (* (hPt) (* (ptr) (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ ) ) ) = 0; (* (( (ptr) (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ ))+3) ) = index←v36436; lab←L100035: ; }; SOURCE(6954, 364) { word tc110; if (( (int)(* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ) > (int)0)) { i←v21892 = (* (( (ptr) (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ ))+1) ); { word pd112; if ((i←v21892 > 0)) { { word var←c41376; word var←c41408; var←c41376 = SGNCK((i←v21892 - 1)); (* (( (ptr) (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ ))+1) ) = var←c41376; var←c41408 = (* (ptr) (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ ) ); { word limit111; var←c41312 = (word) (* ((( (bPt) var←c41408)+4)+( /*1*/ limit111 = (word) (* (( (hPt) var←c41408)+1) ), /*1*/ BCK(var←c41376, limit111) /*1*/ )) ); }; }; } else { pd112 = (* (( (ptr) (* (( (ptr) gf←c44800)+89)/* var←c39264 */ ))+17) ); var←c41312 = (word) ( *( (fPt) ((* (ptr) pd112 ))))((* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ ), 1, pd112); }; }; tc110 = (word) (var←c41312 == 46); } else { tc110 = (word) 0; }; if (tc110) { SOURCE(7008, 315) { word nameStart←v9220; SOURCE(7050, 53) nameStart←v9220 = (word) FindKeyStart←P780((* (( (ptr) &var←c44768)+11)/* keyRope←v8904 */ ), ((* (( (ptr) &var←c44768)+5) /* keyStart←v6108 */ ) - 1), (* (( (ptr) &var←c44768)+15)/* rdr←v9044 */ )); SOURCE(7105, 213) if (( (int)nameStart←v9220 < (int)((* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ) - 1))) { SOURCE(7136, 184) { word dictName←v9264; SOURCE(7138, 83) { word var←c41472; { word pd113; pd113 = (* (( (ptr) (* (( (ptr) gf←c44800)+91)/* var←c39392 */ ))+17) ); var←c41472 = (word) ( *( (fPt) ((* (ptr) pd113 ))))((* (( (ptr) &var←c44768)+11)/* keyRope←v8904 */ ), nameStart←v9220, (((* ( /*1*/ ( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ) - 1) - nameStart←v9220), pd113); }; { word pd114; pd114 = (* (( (ptr) (* (( (ptr) gf←c44800)+99)/* var←c41152 */ ))+5) ); dictName←v9264 = (word) ( *( (fPt) ((* (ptr) pd114 ))))(var←c41472, 0, 2147483647, pd114); }; }; SOURCE(7223, 27) entry←v8988 = (word) FindEntry←P1572(dictName←v9264, (word) (( (bPt) &var←c44768)+32)/* var←c41216 */ ); SOURCE(7252, 24) (* (( (ptr) &var←c44768)+4)/* keyDeterminesDict←v6080 */ ) = 1; SOURCE(7278, 40) { word var←c0505; (* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ) = nameStart←v9220; var←c0505 = nameStart←v9220; keyLen←v6136 = (keyEnd←v5952 - var←c0505); }; }; }; }; }; }; SOURCE(7326, 47) if ((entry←v8988 == 0)) { SOURCE(7346, 27) entry←v8988 = (word) FindEntry←P1572(dictAtom←v8876, (word) (( (bPt) &var←c44768)+32)/* var←c41216 */ ); }; SOURCE(7376, 61) if ((entry←v8988 == 0)) { SOURCE(7398, 30) { word pd115; pd115 = (* (( (ptr) (* (( (ptr) gf←c44800)+89)/* var←c39264 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd115 ))))((* ((( (ptr) &var←c44768)+15)/* rdr←v9044 */ ) ), pd115); }; SOURCE(7430, 7) goto lab←L100033; }; SOURCE(7440, 1960) { word node←v9336; word child←v9364; word textLen←v9392; word root←v9420; word keyRoot←v9448; word looks←v9476; /* declaration of allcaps←v9504 skipped */ /* declaration of initialcap←v9532 skipped */ word format←v9560 = 0; SOURCE(7688, 23) node←v9336 = (* (( (ptr) entry←v8988)+3) ); SOURCE(7713, 39) { word pd116; pd116 = (* (( (ptr) (* (( (ptr) gf←c44800)+94)/* var←c39680 */ ))+28) ); child←v9364 = (word) ( *( (fPt) ((* (ptr) pd116 ))))(node←v9336, pd116); }; SOURCE(7754, 34) { word pd117; pd117 = (* (( (ptr) (* (( (ptr) gf←c44800)+95)/* var←c39712 */ ))+6) ); textLen←v9392 = (word) ( *( (fPt) ((* (ptr) pd117 ))))(node←v9336, pd117); }; SOURCE(7790, 32) { word pd118; pd118 = (* (( (ptr) (* (( (ptr) gf←c44800)+94)/* var←c39680 */ ))+9) ); root←v9420 = (word) ( *( (fPt) ((* (ptr) pd118 ))))(node←v9336, pd118); }; SOURCE(7824, 38) { word pd119; pd119 = (* (( (ptr) (* (( (ptr) gf←c44800)+94)/* var←c39680 */ ))+9) ); keyRoot←v9448 = (word) ( *( (fPt) ((* (ptr) pd119 ))))(keyNode←v5924, pd119); }; SOURCE(7864, 56) { word pd120; pd120 = (* (( (ptr) (* (( (ptr) gf←c44800)+95)/* var←c39712 */ ))+5) ); looks←v9476 = (word) ( *( (fPt) ((* (ptr) pd120 ))))(keyNode←v5924, (* (( (ptr) &var←c44768)+13)/* kStart←v8960 */ ), pd120) ; }; SOURCE(7922, 33) (* (( (ptr) &var←c44768)+16)/* allcaps←v9504 */ ) = 0; (* (( (ptr) &var←c44768)+17)/* initialcap←v9532 */ ) = 0; SOURCE(7971, 11) (void) CheckCaps←P1776((word) ((( (bPt) &var←c44768)+24)/* var←c41184 */ )); SOURCE(7984, 30) { word pd121; pd121 = (* (( (ptr) (* (( (ptr) gf←c44800)+89)/* var←c39264 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd121 ))))((* ((( (ptr) &var←c44768)+15)/* rdr←v9044 */ ) ), pd121); }; SOURCE(8016, 182) { W2 var←c41504; { word pd122; pd122 = (* (( (ptr) (* (( (ptr) gf←c44800)+95)/* var←c39712 */ ))+31) ); (void) ( *( (fPt) ((* (ptr) pd122 ))))((word) &var←c41504, keyRoot←v9448, root←v9420, keyNode←v5924, (* (( (ptr) &var←c44768)+5) /* keyStart←v6108 */ ), keyLen←v6136 , node←v9336, 0, textLen←v9392, event←v6008, pd122); }; resultLen←v6164 = var←c41504.f1; }; SOURCE(8200, 28) if (( (int)resultLen←v6164 != (int)textLen←v9392)) { SOURCE(8228, 5) (void) XR←RaiseUnnamedError(); }; SOURCE(8235, 138) if ((looks←v9476 != 0)) { SOURCE(8265, 108) { word pd123; pd123 = (* (( (ptr) (* (( (ptr) gf←c44800)+95)/* var←c39712 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd123 ))))(keyRoot←v9448, keyNode←v5924, 0, looks←v9476, (* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ), textLen←v9392 , event←v6008, pd123); }; }; SOURCE(8375, 298) if ((0 != (* (( (ptr) &var←c44768)+16)/* allcaps←v9504 */ ))) { SOURCE(8391, 114) { word pd124; pd124 = (* (( (ptr) (* (( (ptr) gf←c44800)+95)/* var←c39712 */ ))+40) ); (void) ( *( (fPt) ((* (ptr) pd124 ))))(keyRoot←v9448, keyNode←v5924, (* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ), textLen←v9392, 0, event←v6008, pd124) ; }; } else { SOURCE(8505, 168) if ( ( (0 != (* (( (ptr) &var←c44768)+17)/* initialcap←v9532 */ )) ? ( (int)textLen←v9392 > (int)0) : 0 ) ) { SOURCE(8571, 102) { word pd125; pd125 = (* (( (ptr) (* (( (ptr) gf←c44800)+95)/* var←c39712 */ ))+40) ); (void) ( *( (fPt) ((* (ptr) pd125 ))))(keyRoot←v9448, keyNode←v5924, (* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ), 1, 0, event←v6008, pd125) ; }; }; }; SOURCE(8675, 141) { word var←c41536; { word pd126; pd126 = (* (( (ptr) (* (( (ptr) gf←c44800)+95)/* var←c39712 */ ))+26) ); format←v9560 = (word) ( *( (fPt) ((* (ptr) pd126 ))))(node←v9336, pd126); }; var←c41536 = format←v9560; { word pd128; if ((var←c41536 == 0)) { goto then0127;}; pd128 = (* (( (ptr) (* (( (ptr) gf←c44800)+95)/* var←c39712 */ ))+26) ); if ((var←c41536 == (word) ( *( (fPt) ((* (ptr) pd128 ))))(keyNode←v5924, pd128))) { then0127: ; } else { SOURCE(8774, 42) { word pd129; pd129 = (* (( (ptr) (* (( (ptr) gf←c44800)+95)/* var←c39712 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd129 ))))(keyNode←v5924, format←v9560, event←v6008, pd129); }; }; }; }; SOURCE(8818, 534) if ((child←v9364 != 0)) { SOURCE(8838, 516) { W4 new←v9620; word last←v9648; SOURCE(8873, 177) { W4 var←c41568; { W4 var←c41600; word last←v35572; { word pd130; pd130 = (* (( (ptr) (* (( (ptr) gf←c44800)+94)/* var←c39680 */ ))+26) ); last←v35572 = (word) ( *( (fPt) ((* (ptr) pd130 ))))(node←v9336, pd130); }; var←c41600.f0 = child←v9364; var←c41600.f1 = (word) -1; var←c41600.f2 = last←v35572; var←c41600.f3 = (word) -1; var←c41568 = var←c41600; }; { W4 var←c0220; { W2 var←c41664; var←c41664.f0 = keyNode←v5924; var←c41664.f1 = (word) -1; { word pd131; pd131 = (* (( (ptr) (* (( (ptr) gf←c44800)+100)/* var←c41696 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd131 ))))((word) &var←c0220, keyRoot←v9448, root←v9420, var←c41664, var←c41568, 1 /*1*/ , ( ( (int)textLen←v9392 == (int)0) ? 0 : 1 ) , event←v6008, pd131); }; }; new←v9620 = var←c0220; }; }; SOURCE(9052, 25) last←v9648 = new←v9620.f2; SOURCE(9079, 273) { word tc132; word pd133; if ((last←v9648 != 0)) { pd133 = (* (( (ptr) (* (( (ptr) gf←c44800)+95)/* var←c39712 */ ))+6) ); tc132 = (word) ( (int)((* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ) + textLen←v9392) < (int)(word) ( *( (fPt) ((* (ptr) pd133 )) ))(keyNode←v5924, pd133)); } else { tc132 = (word) 0; }; if (tc132) { SOURCE(9191, 161) { W2 var←c41728; { word pd134; pd134 = (* (( (ptr) (* (( (ptr) gf←c44800)+95)/* var←c39712 */ ))+34) ); (void) ( *( (fPt) ((* (ptr) pd134 ))))((word) &var←c41728, keyRoot←v9448, keyRoot←v9448, last←v9648, 2147483647, keyNode←v5924 /*1*/ , ((* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ) + textLen←v9392), 2147483647, event←v6008, pd134); }; }; }; }; }; }; SOURCE(9357, 14) foundIt←v6052 = 1; SOURCE(9373, 25) commands←v6192 = (* (( (ptr) entry←v8988)+4) ); }; }; /* removed tail goto */ lab←L100033: ; (* (ptr) formal←c0224 ) = foundIt←v6052; (* (( (ptr) formal←c0224)+1) ) = (* (( (ptr) &var←c44768)+4)/* keyDeterminesDict←v6080 */ ); (* (( (ptr) formal←c0224)+2) ) = (* (( (ptr) &var←c44768)+5)/* keyStart←v6108 */ ); (* (( (ptr) formal←c0224)+3) ) = keyLen←v6136; (* (( (ptr) formal←c0224)+4) ) = resultLen←v6164; (* (( (ptr) formal←c0224)+5) ) = commands←v6192; return; } static word FindEntry←P1572(dictAtom←v9148, formal←c44864) word dictAtom←v9148; word formal←c44864; { register ptr gf←c44832 = (ptr) &globalframe; word entry←v9192; formal←c44864 = (formal←c44864 - 32); /* FindEntry: */ SOURCE(5969, 699) SOURCE(5969, 699) entry←v9192 = 0; SOURCE(6035, 486) if (((* (( (ptr) formal←c44864)+10) ) != 0)) { SOURCE(6056, 488) { word key←v9736; SOURCE(6058, 66) { word pd135; pd135 = (* (( (ptr) (* (( (ptr) gf←c44832)+91)/* var←c39392 */ ))+17) ); key←v9736 = (word) ( *( (fPt) ((* (ptr) pd135 ))))((* (( (ptr) formal←c44864)+11) ), (* (( (ptr) formal←c44864)+5) ), (* ( ( (ptr) formal←c44864)+12) ), pd135); }; SOURCE(6126, 395) { register word list←v9780; list←v9780 = (* (( (ptr) formal←c44864)+10) ); lab←L100041: ; if ( ( (entry←v9192 == 0) ? (list←v9780 != 0) : 0 ) ) { } else { goto lab←L100038; }; SOURCE(6203, 318) { word var←c41760; var←c41760 = (* (( (ptr) list←v9780)+1) ); if ((var←c41760 == 0)) { goto lab←L100042; }; if (((* (( (ptr) gf←c44832)+26) ) == XR←GetReferentType(var←c41760))) { { word val←v9824; val←v9824 = var←c41760; SOURCE(6275, 248) { word proc←v9868; word kR←v9896 = 0; word node←v9924 = 0; word commands←v9952 = 0; SOURCE(6277, 45) proc←v9868 = (* (ptr) val←v9824 ); SOURCE(6373, 61) { W3 var←c41792; (void) ( *( (fPt) ((* (ptr) proc←v9868 ))))((word) &var←c41792, key←v9736, dictAtom←v9148, (* (( (ptr) formal←c44864)+4) /*1*/ ), proc←v9868); commands←v9952 = var←c41792.f2; node←v9924 = var←c41792.f1; kR←v9896 = var←c41792.f0; }; SOURCE(6436, 85) if ((kR←v9896 != 0)) { SOURCE(6451, 70) { /*1*/ word var←c41824; /*1*/ var←c41824 = XR←NewObject(20, (* (( (ptr) gf←c44832)+30) )); /*1*/ (* (( (ptr) var←c41824)+2) ) = kR←v9896; /*1*/ (* (( (ptr) var←c41824)+3) ) = node←v9924; /*1*/ (* (( (ptr) var←c41824)+4) ) = commands←v9952; /*1*/ entry←v9192 = var←c41824; /*1*/ }; }; }; }; } else { lab←L100042: ; }; }; list←v9780 = (* (( (ptr) list←v9780)+2) ); goto lab←L100041; lab←L100038: ; }; }; }; SOURCE(6547, 121) if ((entry←v9192 == 0)) { SOURCE(6565, 105) { word dict←v10092; SOURCE(6567, 31) dict←v10092 = (word) GetDict←P840(dictAtom←v9148); SOURCE(6600, 68) if ((dict←v10092 != 0)) { SOURCE(6617, 51) entry←v9192 = (word) Lookup←P600(dict←v10092, (* (( (ptr) formal←c44864)+14) ), (* (( (ptr) formal←c44864)+11) ), (* (( (ptr) formal←c44864)+5) ), (* (( (ptr) formal←c44864)+12) ), (* (( (ptr) formal←c44864)+15) ) , 0); }; }; }; SOURCE(5969, 699) return(entry←v9192); } static void CheckCaps←P1776(formal←c44928) word formal←c44928; { register ptr gf←c44896 = (ptr) &globalframe; formal←c44928 = (formal←c44928 - 24); /* CheckCaps: */ SOURCE(7452, 18) SOURCE(7472, 15) (* (( (ptr) formal←c44928)+16) ) = 0; SOURCE(7489, 42) { word reader←v36260; word rope←v36288; word index←v36316; word var←c41856; word rope←v36364; reader←v36260 = (* (( (ptr) formal←c44928)+15) ); rope←v36288 = (* (( (ptr) formal←c44928)+11) ); index←v36316 = (* (( (ptr) formal←c44928)+13) ); { word tc136; rope←v36364 = 0; var←c41856 = (* (( (ptr) reader←v36260)+2) ); if (((var←c41856 == rope←v36288) )) { tc136 = (word) ( (int)((* (( (ptr) reader←v36260)+3) ) + (* (( (ptr) reader←v36260)+1) )) == (int)index←v36316); } else { tc136 = (word) 0; }; if (tc136) { goto lab←L100044; }; }; (* (( (ptr) reader←v36260)+2) ) = rope←v36288; (* (( (ptr) reader←v36260)+1) ) = 0; (* (hPt) (* (ptr) reader←v36260 ) ) = 0; (* (( (ptr) reader←v36260)+3) ) = index←v36316; lab←L100044: ; }; SOURCE(7533, 45) { word var←c41888; word text←v36884; word i←v36912; text←v36884 = (* (ptr) (* (( (ptr) formal←c44928)+15) ) ); i←v36912 = (* (( (ptr) (* (( (ptr) formal←c44928)+15) ))+1) ); { word limit137; word pd138; if ((i←v36912 < (* (hPt) text←v36884 ))) { var←c41888 = (word) (* ((( (bPt) text←v36884)+4)+( limit137 = (word) (* (( (hPt) text←v36884)+1) ), BCK(i←v36912, limit137) )) ); } else { pd138 = (* (( (ptr) (* (( (ptr) gf←c44896)+89)/* var←c39264 */ ))+17) ); var←c41888 = (word) ( *( (fPt) ((* (ptr) pd138 ))))((* (( (ptr) formal←c44928)+15) ), 2, pd138); }; }; (* (( (ptr) formal←c44928)+17) ) = ((var←c41888 - 65) <= 25); }; SOURCE(7580, 77) { register word i←v9692 = 0; register word noName←c41952; word var←c41984; word reader←v37404; noName←c41952 = (* (( (ptr) formal←c44928)+12) ); if (( (int)i←v9692 >= (int)noName←c41952)) { goto lab←L100046; }; lab←L100049: ; SOURCE(7607, 50) reader←v37404 = (* (( (ptr) formal←c44928)+15) ); { word text←v37436; word i←v37464; text←v37436 = (* (ptr) reader←v37404 ); i←v37464 = (* (( (ptr) reader←v37404)+1) ); { word pd140; if ((i←v37464 < (* (hPt) text←v37436 ))) { (* (( (ptr) reader←v37404)+1) ) = (i←v37464 + 1); { word limit139; var←c41984 = (word) (* ((( (bPt) text←v37436)+4)+( limit139 = (word) (* (( (hPt) text←v37436)+1) ), BCK(i←v37464, limit139) )) ); }; } else { pd140 = (* (( (ptr) (* (( (ptr) gf←c44896)+89)/* var←c39264 */ ))+17) ); var←c41984 = (word) ( *( (fPt) ((* (ptr) pd140 ))))(reader←v37404, 0, pd140); }; }; }; if (((var←c41984 - 65) > 25)) { SOURCE(7651, 6) return; }; i←v9692 = (i←v9692 + 1); if (( (int)i←v9692 < (int)noName←c41952)) { goto lab←L100049; }; lab←L100046: ; }; SOURCE(7668, 14) (* (( (ptr) formal←c44928)+16) ) = 1; } static word KeyHash←P540(keyRope←v6348, keyStart←v6376, keyEnd←v6404, rdr←v6432) word keyRope←v6348; word keyStart←v6376; word keyEnd←v6404; word rdr←v6432; { register ptr gf←c44960 = (ptr) &globalframe; word h←v6476; word len←v10136; /* KeyHash: */ SOURCE(9407, 539) SOURCE(9507, 26) len←v10136 = SGNCK((keyEnd←v6404 - keyStart←v6376)); SOURCE(9535, 44) { word reader←v36112; word rope←v36140; word index←v36168; word var←c42048; word rope←v36216; reader←v36112 = rdr←v6432; rope←v36140 = keyRope←v6348; index←v36168 = keyStart←v6376; { word tc141; rope←v36216 = 0; var←c42048 = (* (( (ptr) reader←v36112)+2) ); if (((var←c42048 == rope←v36140) )) { tc141 = (word) ( (int)((* (( (ptr) reader←v36112)+3) ) + (* (( (ptr) reader←v36112)+1) )) == (int)index←v36168); } else { tc141 = (word) 0; }; if (tc141) { goto lab←L100052; }; }; (* (( (ptr) reader←v36112)+2) ) = rope←v36140; (* (( (ptr) reader←v36112)+1) ) = 0; (* (hPt) (* (ptr) reader←v36112 ) ) = 0; (* (( (ptr) reader←v36112)+3) ) = index←v36168; lab←L100052: ; }; SOURCE(9581, 5) h←v6476 = 0; SOURCE(9588, 141) { register word i←v10180 = 1; register word noName←c42080; noName←c42080 = (MIN( (unsigned) , 3, len←v10136)); if ((i←v10180 >= noName←c42080)) { goto lab←L100053; }; lab←L100056: ; SOURCE(9651, 78) { word var←c42112; word var←c42144; var←c42112 = (word) Basics←BITSHIFT(h←v6476, 2); { word var←c42176; word c←v38032; { word text←v37332; word i←v37360; text←v37332 = (* (ptr) rdr←v6432 ); i←v37360 = (* (( (ptr) rdr←v6432)+1) ); { word pd143; if ((i←v37360 < (* (hPt) text←v37332 ))) { (* (( (ptr) rdr←v6432)+1) ) = (i←v37360 + 1); { word limit142; c←v38032 = (word) (* ((( (bPt) text←v37332)+4)+( /*1*/ limit142 = (word) (* (( (hPt) text←v37332)+1) ), /*1*/ BCK(i←v37360, limit142) /*1*/ )) ); }; } else { pd143 = (* (( (ptr) (* (( (ptr) gf←c44960)+89)/* var←c39264 */ ))+17) ); c←v38032 = (word) ( *( (fPt) ((* (ptr) pd143 ))))(rdr←v6432, 0, pd143); }; }; }; if (((c←v38032 - 97) <= 25)) { var←c42176 = ((c←v38032 - 97) + 65); } else { var←c42176 = c←v38032; }; var←c42144 = var←c42176; }; h←v6476 = (word) XRM←BITXOR(var←c42112, var←c42144); }; i←v10180 = (i←v10180 + 1); if ((i←v10180 < noName←c42080)) { goto lab←L100056; }; lab←L100053: ; }; SOURCE(9740, 206) if ((len←v10136 >= 2)) { SOURCE(9788, 42) { word reader←v35964; word rope←v35992; word index←v36020; word var←c42272; word rope←v36068; reader←v35964 = rdr←v6432; rope←v35992 = keyRope←v6348; index←v36020 = keyEnd←v6404; { word tc144; rope←v36068 = 0; var←c42272 = (* (( (ptr) reader←v35964)+2) ); if (((var←c42272 == rope←v35992) )) { tc144 = (word) ( (int)((* (( (ptr) reader←v35964)+3) ) + (* (( (ptr) reader←v35964)+1) )) == (int)index←v36020); } else { tc144 = (word) 0; }; if (tc144) { goto lab←L100060; }; }; (* (( (ptr) reader←v35964)+2) ) = rope←v35992; (* (( (ptr) reader←v35964)+1) ) = 0; (* (hPt) (* (ptr) reader←v35964 ) ) = 0; (* (( (ptr) reader←v35964)+3) ) = index←v36020; lab←L100060: ; }; SOURCE(9832, 114) { register word i←v10224; register word noName←c42304; i←v10224 = SGNCK((len←v10136 - 2)); noName←c42304 = len←v10136; if ((i←v10224 >= noName←c42304)) { goto lab←L100061; }; lab←L100064: ; SOURCE(9862, 84) { word var←c42336; word var←c42368; var←c42336 = (word) Basics←BITSHIFT(h←v6476, 2); { word var←c42400; word c←v37984; { word reader←v37816; reader←v37816 = rdr←v6432; { word i←v37848; i←v37848 = (* (( (ptr) reader←v37816)+1) ); { word pd146; if ((i←v37848 > 0)) { { /*1*/ word var←c42496; /*1*/ word var←c42528; /*1*/ var←c42496 = SGNCK((i←v37848 - 1)); /*1*/ (* (( (ptr) reader←v37816)+1) ) = var←c42496; /*1*/ var←c42528 = (* (ptr) reader←v37816 ); /*1*/ { /*1*/ word limit145; /*1*/ c←v37984 = (word) (* ((( (bPt) var←c42528)+4)+( /*1*/ limit145 = (word) (* (( (hPt) var←c42528)+1) ), /*1*/ BCK(var←c42496, limit145) /*1*/ )) ); /*1*/ }; /*1*/ }; } else { pd146 = (* (( (ptr) (* (( (ptr) gf←c44960)+89)/* var←c39264 */ ))+17) ); c←v37984 = (word) ( *( (fPt) ((* (ptr) pd146 ))))(reader←v37816, 1, pd146); }; }; }; }; if (((c←v37984 - 97) <= 25)) { var←c42400 = ((c←v37984 - 97) + 65); } else { var←c42400 = c←v37984; }; var←c42368 = var←c42400; }; h←v6476 = (word) XRM←BITXOR(var←c42336, var←c42368); }; i←v10224 = (i←v10224 + 1); if ((i←v10224 < noName←c42304)) { goto lab←L100064; }; lab←L100061: ; }; }; SOURCE(9407, 539) return(h←v6476); } static word Lookup←P600(formal←c0550, formal←c0551, formal←c0552, formal←c0553, formal←c0554, formal←c0555, formal←c0556) word formal←c0550; word formal←c0551; word formal←c0552; word formal←c0553; word formal←c0554; word formal←c0555; word formal←c0556; { W12 var←c44992; /* declaration of dict←v6536 skipped */ /* declaration of hash←v6564 skipped */ /* declaration of keyRope←v6592 skipped */ /* declaration of keyStart←v6620 skipped */ /* declaration of keyLen←v6648 skipped */ /* declaration of rdr1←v6676 skipped */ /* declaration of rdr2←v6704 skipped */ register ptr gf←c45024 = (ptr) &globalframe; /* declaration of var←c08 skipped */ word entry←v6748; (* (( (ptr) &var←c44992)+4)/* dict←v6536 */ ) = formal←c0550; (* (( (ptr) &var←c44992)+5)/* hash←v6564 */ ) = formal←c0551; (* (( (ptr) &var←c44992)+6)/* keyRope←v6592 */ ) = formal←c0552; (* (( (ptr) &var←c44992)+7)/* keyStart←v6620 */ ) = formal←c0553; (* (( (ptr) &var←c44992)+8)/* keyLen←v6648 */ ) = formal←c0554; (* (( (ptr) &var←c44992)+9)/* rdr1←v6676 */ ) = formal←c0555; (* (( (ptr) &var←c44992)+10)/* rdr2←v6704 */ ) = formal←c0556; /* Lookup: */ SOURCE(9964, 244) (void) (XR←MonitorEntry((word) (( (bPt) gf←c45024)+16)/* LOCK←v3504 */ )); SOURCE(9964, 244) entry←v6748 = 0; SOURCE(10117, 91) { word var←c09; { word var←c0506; var←c0506 = (word) &var←c44992; var←c09 = (word) XR←Enable(( ((word) (fPt) NoName←Q6240) ), ( ((word) (fPt) NoName←Q6660) ), var←c0506); }; /* removed trivial cond node */ }; return((* (( (ptr) &var←c44992)+11)/* var←c08 */ )); } static word NoName←Q6240(formal←c0469) word formal←c0469; { register ptr gf←c0468 = (ptr) &globalframe; SOURCE(10140, 68) { word var←c42592; var←c42592 = (word) LookupInternal←P660((* (( (ptr) formal←c0469)+4) ), (* (( (ptr) formal←c0469)+5) ), (* (( (ptr) formal←c0469)+6) ), (* (( (ptr) formal←c0469)+7) ), (* (( (ptr) formal←c0469)+8) ), (* (( (ptr) formal←c0469)+9) ) , (* (( (ptr) formal←c0469)+10) )); (void) (XR←MonitorExit((word) (( (bPt) gf←c0468)+16)/* LOCK←v3504 */ )); (* (( (ptr) formal←c0469)+11) ) = var←c42592; return(1); }; /* c2c skipped dead code */ } static word LookupInternal←P660(dict←v6808, hash←v6836, keyRope←v6864, keyStart←v6892, keyLen←v6920, formal←c0557, formal←c0558) word dict←v6808; word hash←v6836; word keyRope←v6864; word keyStart←v6892; word keyLen←v6920; word formal←c0557; word formal←c0558; { W10 var←c45056; /* declaration of rdr1←v6948 skipped */ /* declaration of rdr2←v6976 skipped */ register ptr gf←c45088 = (ptr) &globalframe; word entry←v7020; /* declaration of var←c42624 skipped */ /* declaration of free1←v10296 skipped */ /* declaration of free2←v10324 skipped */ word pred←v10352 = 0; (* (( (ptr) &var←c45056)+4)/* rdr1←v6948 */ ) = formal←c0557; (* (( (ptr) &var←c45056)+5)/* rdr2←v6976 */ ) = formal←c0558; /* LookupInternal: */ SOURCE(10214, 930) { word tmpAddr147; tmpAddr147 = (word) (( (ptr) &var←c45056)+6)/* var←c42624 */ ; (* (ptr) tmpAddr147 ) = ( ((word) (fPt) FreeReaders←P2268) ); (* (( (ptr) tmpAddr147) + 1) ) = 1; }; SOURCE(10214, 930) entry←v7020 = 0; SOURCE(10488, 26) (* (( (ptr) &var←c45056)+8)/* free1←v10296 */ ) = 0; (* (( (ptr) &var←c45056)+9)/* free2←v10324 */ ) = 0; SOURCE(10535, 29) if ((keyLen←v6920 == 0)) { SOURCE(10552, 12) return(0); }; SOURCE(10566, 67) if (((* (( (ptr) &var←c45056)+4)/* rdr1←v6948 */ ) == 0)) { SOURCE(10585, 12) (* (( (ptr) &var←c45056)+8)/* free1←v10296 */ ) = 1; SOURCE(10599, 34) { word pd148; pd148 = (* (( (ptr) (* (( (ptr) gf←c45088)+89)/* var←c39264 */ ))+26) ); (* (( (ptr) &var←c45056)+4)/* rdr1←v6948 */ ) = (word) ( *( (fPt) ((* (ptr) pd148 ))))(pd148); }; }; SOURCE(10636, 67) if (((* (( (ptr) &var←c45056)+5)/* rdr2←v6976 */ ) == 0)) { SOURCE(10655, 12) (* (( (ptr) &var←c45056)+9)/* free2←v10324 */ ) = 1; SOURCE(10669, 34) { word pd149; pd149 = (* (( (ptr) (* (( (ptr) gf←c45088)+89)/* var←c39264 */ ))+26) ); (* (( (ptr) &var←c45056)+5)/* rdr2←v6976 */ ) = (word) ( *( (fPt) ((* (ptr) pd149 ))))(pd149); }; }; SOURCE(10706, 11) entry←v7020 = 0; SOURCE(10762, 358) { register word e←v10412; e←v10412 = dict←v6808; lab←L100072: ; if ((e←v10412 != 0)) { } else { goto lab←L100069; }; SOURCE(10805, 293) { word tc150; word pd151; if (((* (( (ptr) e←v10412)+1) ) == hash←v6836)) { pd151 = (* (( (ptr) (* (( (ptr) gf←c45088)+91)/* var←c39392 */ ))+15) ); tc150 = (word) ( (int)(word) ( *( (fPt) ((* (ptr) pd151 ))))((* ((( (ptr) e←v10412)+2)) ), pd151) == (int)keyLen←v6920); } else { tc150 = (word) 0; }; if (tc150) { SOURCE(10882, 216) { word pd152; pd152 = (* (( (ptr) (* (( (ptr) gf←c45088)+89)/* var←c39264 */ ))+25) ); if (((word) ( *( (fPt) ((* (ptr) pd152 ))))(keyRope←v6864, (* (( (ptr) e←v10412)+2) ), keyStart←v6892, keyLen←v6920, 0, keyLen←v6920 , (* (( (ptr) &var←c45056)+4)/* rdr1←v6948 */ ), (* (( (ptr) &var←c45056)+5)/* rdr2←v6976 */ ), 0, pd152) == 1)) { SOURCE(10987, 97) if ((pred←v10352 != 0)) { SOURCE(11031, 18) (* (ptr) pred←v10352 ) = (* (ptr) e←v10412 ); SOURCE(11051, 18) (* (ptr) e←v10412 ) = (* (ptr) dict←v6808 ); SOURCE(11071, 13) (* (ptr) dict←v6808 ) = e←v10412; }; SOURCE(11089, 9) entry←v7020 = e←v10412; SOURCE(11100, 4) goto lab←L100070; }; }; }; }; SOURCE(11112, 8) pred←v10352 = e←v10412; e←v10412 = (* (ptr) e←v10412 ); goto lab←L100072; lab←L100069: ; lab←L100070: ; }; SOURCE(11131, 13) (void) FreeReaders←P2268((word) ((( (bPt) &var←c45056)+24)/* var←c42624 */ )); SOURCE(10214, 930) return(entry←v7020); } static void FreeReaders←P2268(formal←c45152) word formal←c45152; { register ptr gf←c45120 = (ptr) &globalframe; formal←c45152 = (formal←c45152 - 24); /* FreeReaders: */ SOURCE(10369, 114) SOURCE(10391, 45) if ((0 != (* (( (ptr) formal←c45152)+8) ))) { SOURCE(10405, 31) { word pd153; pd153 = (* (( (ptr) (* (( (ptr) gf←c45120)+89)/* var←c39264 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd153 ))))((* ((( (ptr) formal←c45152)+4)) ), pd153); }; }; SOURCE(10438, 45) if ((0 != (* (( (ptr) formal←c45152)+9) ))) { SOURCE(10452, 31) { word pd154; pd154 = (* (( (ptr) (* (( (ptr) gf←c45120)+89)/* var←c39264 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd154 ))))((* ((( (ptr) formal←c45152)+5)) ), pd154); }; }; } static word FindKeyLen←P720(keyRope←v7080, rdr←v7108) word keyRope←v7080; word rdr←v7108; { register ptr gf←c45184 = (ptr) &globalframe; word len←v7152; word size←v10456; /* FindKeyLen: */ SOURCE(11150, 321) SOURCE(11227, 30) { word pd155; pd155 = (* (( (ptr) (* (( (ptr) gf←c45184)+91)/* var←c39392 */ ))+15) ); size←v10456 = (word) ( *( (fPt) ((* (ptr) pd155 ))))(keyRope←v7080, pd155); }; { word var←c42688; word c←v38128; word var←c42784; word c←v38320; SOURCE(11259, 25) if (( (int)size←v10456 == (int)0)) { SOURCE(11274, 10) return(0); }; SOURCE(11286, 37) { word reader←v35844; word rope←v35872; word var←c42656; word rope←v35920; reader←v35844 = rdr←v7108; rope←v35872 = keyRope←v7080; { word tc156; rope←v35920 = 0; var←c42656 = (* (( (ptr) reader←v35844)+2) ); if (((var←c42656 == rope←v35872) )) { tc156 = (word) ( (int)((* (( (ptr) reader←v35844)+3) ) + (* (( (ptr) reader←v35844)+1) )) == (int)0); } else { tc156 = (word) 0; }; if (tc156) { goto lab←L100074; }; }; (* (( (ptr) reader←v35844)+2) ) = rope←v35872; (* (( (ptr) reader←v35844)+1) ) = 0; (* (hPt) (* (ptr) reader←v35844 ) ) = 0; (* (( (ptr) reader←v35844)+3) ) = 0; lab←L100074: ; }; SOURCE(11325, 60) { word text←v36812; word i←v36840; text←v36812 = (* (ptr) rdr←v7108 ); i←v36840 = (* (( (ptr) rdr←v7108)+1) ); { word limit157; word pd158; if ((i←v36840 < (* (hPt) text←v36812 ))) { c←v38128 = (word) (* ((( (bPt) text←v36812)+4)+( limit157 = (word) (* (( (hPt) text←v36812)+1) ), BCK(i←v36840, limit157) )) ); } else { pd158 = (* (( (ptr) (* (( (ptr) gf←c45184)+89)/* var←c39264 */ ))+17) ); c←v38128 = (word) ( *( (fPt) ((* (ptr) pd158 ))))(rdr←v7108, 2, pd158); }; }; }; var←c42688 = ((word) (* (( (bPt) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c45184)+97)/* var←c40128 */ ))+4) ) ))+c←v38128) ) == 3); if (((0 != var←c42688) )) { SOURCE(11375, 10) return(1); }; SOURCE(11387, 7) len←v7152 = 0; SOURCE(11396, 75) lab←L100079: ; { word tc159; if (( (int)len←v7152 < (int)size←v10456)) { { word text←v37260; word i←v37288; text←v37260 = (* (ptr) rdr←v7108 ); i←v37288 = (* (( (ptr) rdr←v7108)+1) ); { word pd161; if ((i←v37288 < (* (hPt) text←v37260 ))) { (* (( (ptr) rdr←v7108)+1) ) = (i←v37288 + 1); { word limit160; c←v38320 = (word) (* ((( (bPt) text←v37260)+4)+( /*1*/ limit160 = (word) (* (( (hPt) text←v37260)+1) ), /*1*/ BCK(i←v37288, limit160) /*1*/ )) ); }; } else { pd161 = (* (( (ptr) (* (( (ptr) gf←c45184)+89)/* var←c39264 */ ))+17) ); c←v38320 = (word) ( *( (fPt) ((* (ptr) pd161 ))))(rdr←v7108, 0, pd161); }; }; }; var←c42784 = ((word) (* (( (bPt) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c45184)+97)/* var←c40128 */ ))+4) ) ))+c←v38320) ) == 2); tc159 = (word) (0 != var←c42784); } else { tc159 = (word) 0; }; if (tc159) { } else { goto lab←L100077; }; }; SOURCE(11460, 11) len←v7152 = (len←v7152 + 1); goto lab←L100079; lab←L100077: ; }; SOURCE(11150, 321) return(len←v7152); } static word FindKeyStart←P780(keyRope←v7212, keyEnd←v7240, rdr←v7268) word keyRope←v7212; word keyEnd←v7240; word rdr←v7268; { register ptr gf←c45216 = (ptr) &globalframe; word start←v7312; /* FindKeyStart: */ SOURCE(11486, 373) { word var←c42912; word c←v38080; word var←c43072; word c←v38272; SOURCE(11580, 55) { word pd162; pd162 = (* (( (ptr) (* (( (ptr) gf←c45216)+91)/* var←c39392 */ ))+15) ); if (( (int)(word) ( *( (fPt) ((* (ptr) pd162 ))))(keyRope←v7212, pd162) == (int)0) || ( (int)keyEnd←v7240 == (int)0)) { SOURCE(11625, 10) return(0); }; }; SOURCE(11637, 42) { word reader←v35696; word rope←v35724; word index←v35752; word var←c42880; word rope←v35800; reader←v35696 = rdr←v7268; rope←v35724 = keyRope←v7212; index←v35752 = keyEnd←v7240; { word tc163; rope←v35800 = 0; var←c42880 = (* (( (ptr) reader←v35696)+2) ); if (((var←c42880 == rope←v35724) )) { tc163 = (word) ( (int)((* (( (ptr) reader←v35696)+3) ) + (* (( (ptr) reader←v35696)+1) )) == (int)index←v35752); } else { tc163 = (word) 0; }; if (tc163) { goto lab←L100083; }; }; (* (( (ptr) reader←v35696)+2) ) = rope←v35724; (* (( (ptr) reader←v35696)+1) ) = 0; (* (hPt) (* (ptr) reader←v35696 ) ) = 0; (* (( (ptr) reader←v35696)+3) ) = index←v35752; lab←L100083: ; }; SOURCE(11681, 76) { word i←v24200; i←v24200 = (* (( (ptr) rdr←v7268)+1) ); { word pd165; if ((i←v24200 > 0)) { { word var←c42976; word var←c43008; var←c42976 = (i←v24200 - 1); var←c43008 = (* (ptr) rdr←v7268 ); { word limit164; c←v38080 = (word) (* ((( (bPt) var←c43008)+4)+( limit164 = (word) (* (( (hPt) var←c43008)+1) ), BCK(var←c42976, limit164) )) ); }; }; } else { pd165 = (* (( (ptr) (* (( (ptr) gf←c45216)+89)/* var←c39264 */ ))+17) ); c←v38080 = (word) ( *( (fPt) ((* (ptr) pd165 ))))(rdr←v7268, 3, pd165); }; }; }; var←c42912 = ((word) (* (( (bPt) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c45216)+97)/* var←c40128 */ ))+4) ) ))+c←v38080) ) == 3); if (((0 != var←c42912) )) { SOURCE(11740, 17) return((keyEnd←v7240 - 1)); }; SOURCE(11759, 14) start←v7312 = keyEnd←v7240; SOURCE(11775, 84) lab←L100088: ; { word tc166; if (( (int)start←v7312 > (int)0)) { { word reader←v37740; reader←v37740 = rdr←v7268; { word i←v37772; i←v37772 = (* (( (ptr) reader←v37740)+1) ); { word pd168; if ((i←v37772 > 0)) { { word var←c43168; word var←c43200; var←c43168 = SGNCK((i←v37772 - 1)); (* (( (ptr) reader←v37740)+1) ) = var←c43168; var←c43200 = (* (ptr) reader←v37740 ); { /*1*/ word limit167; /*1*/ c←v38272 = (word) (* ((( (bPt) var←c43200)+4)+( /*1*/ limit167 = (word) (* (( (hPt) var←c43200)+1) ), /*1*/ BCK(var←c43168, limit167) /*1*/ )) ); /*1*/ }; }; } else { pd168 = (* (( (ptr) (* (( (ptr) gf←c45216)+89)/* var←c39264 */ ))+17) ); c←v38272 = (word) ( *( (fPt) ((* (ptr) pd168 ))))(reader←v37740, 1, pd168); }; }; }; }; var←c43072 = ((word) (* (( (bPt) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c45216)+97)/* var←c40128 */ ))+4) ) ))+c←v38272) ) == 2); tc166 = (word) (0 != var←c43072); } else { tc166 = (word) 0; }; if (tc166) { } else { goto lab←L100086; }; }; SOURCE(11844, 15) start←v7312 = (start←v7312 - 1); goto lab←L100088; lab←L100086: ; }; SOURCE(11486, 373) return(start←v7312); } static word GetDict←P840(formal←c0559) word formal←c0559; { W8 var←c45248; /* declaration of dictName←v7372 skipped */ register ptr gf←c45280 = (ptr) &globalframe; word entry←v7416; word prop←v10500 = 0; W2 var←c0348; var←c45248.f4/* dictName←v7372 */ = formal←c0559; /* GetDict: */ SOURCE(11918, 420) SOURCE(11918, 420) entry←v7416 = 0; SOURCE(11991, 44) { word pd169; pd169 = (* (( (ptr) (* (( (ptr) gf←c45280)+88)/* var←c39104 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd169 ))))((word) &var←c0348, (* (( (ptr) gf←c45280)+8)/* dictTable←v3644 */ ), var←c45248.f4/* dictName←v7372 */ , pd169) ; }; prop←v10500 = var←c0348.f1; SOURCE(12037, 301) { word var←c43264; word var←c43296; var←c43264 = prop←v10500; if ((var←c43264 == 0)) { goto lab←L100091; }; var←c43296 = XR←GetReferentType(var←c43264); if (((* (( (ptr) gf←c45280)+30) ) == var←c43296)) { { word x←v10556; x←v10556 = var←c43264; SOURCE(12071, 10) return(x←v10556); }; } else { if (((* (( (ptr) gf←c45280)+23) ) == var←c43296)) { { word x←v10600; x←v10600 = var←c43264; SOURCE(12094, 41) if ((x←v10600 == (* (( (ptr) gf←c45280)+42) ))) { SOURCE(12117, 18) return(0); } else { SOURCE(12135, 5) (void) XR←RaiseUnnamedError(); }; }; } else { lab←L100091: ; SOURCE(12153, 187) { word ok←v10644 = 0; SOURCE(12191, 81) SOURCE(12191, 81) { W2 var←c43392; { /* declaration of var←c43328 skipped */ var←c45248.f5/* var←c43328 */ = (word) GetFileID←P960(var←c45248.f4/* dictName←v7372 */ ); { /* declaration of var←c010 skipped */ { word var←c011; { /*1*/ word var←c0507; /*1*/ var←c0507 = (word) &var←c45248; /*1*/ var←c011 = (word) XR←Enable(( ((word) (fPt) NoName←Q6300) ), ( ((word) (fPt) NoName←Q6600) ), var←c0507); /*1*/ }; if ((var←c011 == 4)) { /*1*/ goto lab←L100093; /*1*/ }; }; var←c43392 = (* (W2Pt) (( (ptr) &var←c45248)+6)/* var←c010 */ ); }; }; ok←v10644 = var←c43392.f0; }; lab←L100093: ; SOURCE(12283, 55) if ((0 != ok←v10644)) { SOURCE(12294, 32) return((word) GetDict←P840(var←c45248.f4/* dictName←v7372 */ )); } else { SOURCE(12326, 12) return(0); }; }; }; }; }; } static word NoName←Q6300(formal←c0476) word formal←c0476; { SOURCE(12191, 81) (void) LoadInternal←P60((word) (( (bPt) formal←c0476)+24), (* (( (ptr) formal←c0476)+4) ), (* (( (ptr) formal←c0476)+5) )) ; return(0); } static word Same←P900(a←v7644, b←v7672) word a←v7644; word b←v7672; { register ptr gf←c45312 = (ptr) &globalframe; word var←c7716; /* Same: */ SOURCE(12521, 110) SOURCE(12566, 65) { word var←c0508; if (XR←EqualWords((( (ptr) a←v7644)+1), (( (ptr) b←v7672)+1), 4)) { { word var←c43488; word n1←v37908; word n2←v37936; n1←v37908 = (* (ptr) a←v7644 ); n2←v37936 = (* (ptr) b←v7672 ); { word pd170; pd170 = (* (( (ptr) (* (( (ptr) gf←c45312)+102)/* var←c43552 */ ))+11) ); var←c43488 = ((word) ( *( (fPt) ((* (ptr) pd170 ))))(n1←v37908, n2←v37936, 0, pd170) == 1); }; var←c0508 = (0 != var←c43488); }; } else { var←c0508 = 0; }; return(var←c0508); }; } static word GetFileID←P960(shortName←v7776) word shortName←v7776; { W15 var←c45344; register ptr gf←c45376 = (ptr) &globalframe; word var←c7820; word dirs←v10688; word name←v10716; word fileNamePath←v10744 = 0; W4 uid←v10772; /* GetFileID: */ SOURCE(12634, 606) SOURCE(12689, 6) { word pd171; pd171 = (* (( (ptr) (* (( (ptr) gf←c45376)+103)/* var←c43584 */ ))+7) ); dirs←v10688 = (word) ( *( (fPt) ((* (ptr) pd171 ))))((* (( (ptr) gf←c45376)+40) ), (* (( (ptr) gf←c45376)+10)/* defaultSearch←v4232 */ ), pd171) ; }; SOURCE(12777, 68) { word var←c43616; { word pd172; pd172 = (* (( (ptr) (* (( (ptr) gf←c45376)+99)/* var←c41152 */ ))+9) ); var←c43616 = (word) ( *( (fPt) ((* (ptr) pd172 ))))(shortName←v7776, pd172); }; { word pd173; pd173 = (* (( (ptr) (* (( (ptr) gf←c45376)+91)/* var←c39392 */ ))+6) ); name←v10716 = (word) ( *( (fPt) ((* (ptr) pd173 ))))(var←c43616, (* (( (ptr) gf←c45376)+41) ), pd173); }; }; SOURCE(12873, 36) uid←v10772.f0 = 2147483647; uid←v10772.f1 = 0; uid←v10772.f2 = 0; uid←v10772.f3 = 0; SOURCE(12911, 232) lab←L100099: ; if ( ( (fileNamePath←v10744 == 0) ? (dirs←v10688 != 0) : 0 ) ) { } else { goto lab←L100097; }; SOURCE(12954, 162) SOURCE(12954, 162) { W9 var←c43776; { /* declaration of var←c43680 skipped */ { word var←c43712; word var←c43744; { word pd174; pd174 = (* (( (ptr) (* (( (ptr) gf←c45376)+90)/* var←c39360 */ ))+5) ); var←c43712 = (word) ( *( (fPt) ((* (ptr) pd174 ))))(name←v10716, pd174); }; { word pd175; pd175 = (* (( (ptr) (* (( (ptr) gf←c45376)+90)/* var←c39360 */ ))+5) ); var←c43744 = (word) ( *( (fPt) ((* (ptr) pd175 ))))((* (ptr) (dirs←v10688) ), pd175); }; { word pd176; pd176 = (* (( (ptr) (* (( (ptr) gf←c45376)+90)/* var←c39360 */ ))+8) ); (* (( (ptr) &var←c45344)+4)/* var←c43680 */ ) = (word) ( *( (fPt) ((* (ptr) pd176 ))))(var←c43712, var←c43744, pd176); }; }; { /* declaration of var←c012 skipped */ (* (( (ptr) &var←c45344)+5)/* var←c012 */ ) = (* (( (ptr) (* (( (ptr) gf←c45376)+90)/* var←c39360 */ ))+12) ); { /* declaration of var←c013 skipped */ { word var←c014; { word var←c0509; var←c0509 = (word) &var←c45344; var←c014 = (word) XR←Enable(( ((word) (fPt) NoName←Q6360) ), ( ((word) (fPt) NoName←Q6540) ), var←c0509); }; if ((var←c014 == 5)) { goto lab←L100101; }; }; var←c43776 = (* (W9Pt) (( (ptr) &var←c45344)+6)/* var←c013 */ ); }; }; }; uid←v10772 = (* (W4Pt) (( (ptr) &var←c43776)+2) ); fileNamePath←v10744 = (* (ptr) &var←c43776 ); }; lab←L100101: ; SOURCE(13127, 16) dirs←v10688 = (* (( (ptr) dirs←v10688)+1) ); goto lab←L100099; lab←L100097: ; SOURCE(13154, 39) if ((fileNamePath←v10744 == 0)) { SOURCE(13181, 12) return(0); }; SOURCE(13195, 45) { word var←c43840; var←c43840 = XR←NewObject(20, (* (( (ptr) gf←c45376)+22) )); (* (ptr) var←c43840 ) = fileNamePath←v10744; (* (W4Pt) (( (ptr) var←c43840)+1) ) = uid←v10772; return(var←c43840); }; } static word NoName←Q6360(formal←c0480) word formal←c0480; { register ptr gf←c0479 = (ptr) &globalframe; SOURCE(12954, 162) { word pd177; pd177 = (* (( (ptr) formal←c0480)+5) ); (void) ( *( (fPt) ((* (ptr) pd177 ))))((word) (( (bPt) formal←c0480)+24), (* (( (ptr) formal←c0480)+4) ), (* (W4Pt) (( (ptr) gf←c0479)+84) /* var←c39072 */ ), pd177); }; return(0); } static void DoLocked←P1020(formal←c0560) word formal←c0560; { W11 var←c45408; /* declaration of action←v7896 skipped */ register ptr gf←c45440 = (ptr) &globalframe; /* declaration of var←c43872 skipped */ /* declaration of var←c43904 skipped */ /* declaration of me←v10900 skipped */ (* (( (ptr) &var←c45408)+4)/* action←v7896 */ ) = formal←c0560; /* DoLocked: */ SOURCE(13339, 423) { word tmpAddr178; tmpAddr178 = (word) (( (ptr) &var←c45408)+5)/* var←c43872 */ ; (* (ptr) tmpAddr178 ) = ( ((word) (fPt) Unlock←P2580) ); (* (( (ptr) tmpAddr178) + 1) ) = 1; }; { word tmpAddr179; tmpAddr179 = (word) (( (ptr) &var←c45408)+7)/* var←c43904 */ ; (* (ptr) tmpAddr179 ) = ( ((word) (fPt) Lock←P2520) ); (* (( (ptr) tmpAddr179) + 1) ) = 1; }; SOURCE(13380, 41) { word pd180; pd180 = (* (( (ptr) (* (( (ptr) gf←c45440)+104)/* var←c43936 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd180 ))))((word) ((( (bPt) &var←c45408)+36)/* me←v10900 */ ), pd180); }; SOURCE(13715, 6) (void) Lock←P2520((word) ((( (bPt) &var←c45408)+28)/* var←c43904 */ )); SOURCE(13723, 29) { word var←c0510; var←c0510 = (word) &var←c45408; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q6420) ), ( ((word) (fPt) NoName←Q6480) ), var←c0510); }; SOURCE(13754, 8) (void) Unlock←P2580((word) ((( (bPt) &var←c45408)+20)/* var←c43872 */ )); } static word NoName←Q6420(formal←c0482) word formal←c0482; { SOURCE(13723, 29) { word pd181; pd181 = (* (( (ptr) formal←c0482)+4) ); (void) ( *( (fPt) ((* (ptr) pd181 ))))(pd181); }; return(0); } static void Lock←P2520(formal←c45504) word formal←c45504; { register ptr gf←c45472 = (ptr) &globalframe; formal←c45504 = (formal←c45504 - 28); /* Lock: */ SOURCE(13423, 154) (void) (XR←MonitorEntry((word) (( (bPt) gf←c45472)+16)/* LOCK←v3504 */ )); SOURCE(13444, 76) lab←L100108: ; if ( ( ( ! XR←EqualWords((( (ptr) gf←c45472)+11)/* abbrLockProcess←v4372 */ , (( (ptr) formal←c45504)+9), 2)) ? ((* (( (ptr) gf←c45472)+13) /* abbrLockCount←v4400 */ ) != 0) : 0 ) ) { } else { goto lab←L100106; }; SOURCE(13495, 25) (void) (XR←Wait((word) (( (bPt) gf←c45472)+16)/* LOCK←v3504 */ , (word) (( (bPt) gf←c45472)+56)/* abbrLockFree←v4428 */ ) ); goto lab←L100108; lab←L100106: ; SOURCE(13522, 20) (* (W2Pt) (( (ptr) gf←c45472)+11)/* abbrLockProcess←v4372 */ ) = (* (W2Pt) (( (ptr) formal←c45504)+9) ); SOURCE(13544, 33) (* (( (ptr) gf←c45472)+13)/* abbrLockCount←v4400 */ ) = ((* (( (ptr) gf←c45472)+13)/* abbrLockCount←v4400 */ ) + 1); SOURCE(13423, 154) (void) (XR←MonitorExit((word) (( (bPt) gf←c45472)+16)/* LOCK←v3504 */ )); return; } static void Unlock←P2580(formal←c45568) word formal←c45568; { register ptr gf←c45536 = (ptr) &globalframe; formal←c45568 = (formal←c45568 - 20); /* Unlock: */ SOURCE(13582, 127) (void) (XR←MonitorEntry((word) (( (bPt) gf←c45536)+16)/* LOCK←v3504 */ )); SOURCE(13605, 33) (* (( (ptr) gf←c45536)+13)/* abbrLockCount←v4400 */ ) = ((* (( (ptr) gf←c45536)+13)/* abbrLockCount←v4400 */ ) - 1); SOURCE(13640, 69) if (((* (( (ptr) gf←c45536)+13)/* abbrLockCount←v4400 */ ) == 0)) { SOURCE(13667, 21) { word tmpAddr182; tmpAddr182 = (word) (( (ptr) gf←c45536)+11)/* abbrLockProcess←v4372 */ ; (* (ptr) tmpAddr182 ) = 0; (* (( (ptr) tmpAddr182) + 1) ) = 0; }; SOURCE(13690, 19) (void) (XR←Notify((word) (( (bPt) gf←c45536)+56)/* abbrLockFree←v4428 */ )); }; SOURCE(13582, 127) (void) (XR←MonitorExit((word) (( (bPt) gf←c45536)+16)/* LOCK←v3504 */ )); return; } static word ValidateAll←P1080() { W7 var←c45600; /* declaration of changed←v7972 skipped */ /* declaration of var←c43968 skipped */ /* ValidateAll: */ SOURCE(13813, 263) { word tmpAddr183; tmpAddr183 = (word) (( (ptr) &var←c45600)+5)/* var←c43968 */ ; (* (ptr) tmpAddr183 ) = ( ((word) (fPt) Locked←P2640) ); (* (( (ptr) tmpAddr183) + 1) ) = 1; }; SOURCE(13813, 263) var←c45600.f4/* changed←v7972 */ = 0; SOURCE(14060, 16) (void) DoLocked←P1020((word) ((( (bPt) &var←c45600)+20)/* var←c43968 */ )); SOURCE(13813, 263) return(var←c45600.f4/* changed←v7972 */ ); } static void Locked←P2640(formal←c45696) word formal←c45696; { W6 var←c45632; register ptr gf←c45664 = (ptr) &globalframe; /* declaration of var←c44000 skipped */ formal←c45696 = (formal←c45696 - 20); var←c45632.f0 = formal←c45696; /* Locked: */ SOURCE(13874, 181) { word tmpAddr184; tmpAddr184 = (word) (( (ptr) &var←c45632)+4)/* var←c44000 */ ; (* (ptr) tmpAddr184 ) = ( ((word) (fPt) Action←P2700) ); (* (( (ptr) tmpAddr184) + 1) ) = 1; }; SOURCE(14017, 38) { word var←c44032; word pd185; pd185 = (* (( (ptr) (* (( (ptr) gf←c45664)+88)/* var←c39104 */ ))+13) ); var←c44032 = (word) ( *( (fPt) ((* (ptr) pd185 ))))((* (( (ptr) gf←c45664)+20)/* fileForAbbr←v4484 */ ), (word) (( (bPt) &var←c45632)+16) /* var←c44000 */ , pd185); }; } static word Action←P2700(key←v11184, val←v11212, formal←c45760) word key←v11184; word val←v11212; word formal←c45760; { register ptr gf←c45728 = (ptr) &globalframe; word quit←v11280; word var←c44064; formal←c45760 = (formal←c45760 - 16); /* Action: */ SOURCE(13891, 123) SOURCE(13953, 44) var←c44064 = XR←Narrow(key←v11184, (* (( (ptr) gf←c45728)+23) )); if ((0 != (word) Validate←P1140(var←c44064))) { SOURCE(13983, 14) (* (( (ptr) (* (ptr) formal←c45760 ))+4) ) = 1; }; SOURCE(13999, 15) return(0); } static word Validate←P1140(formal←c0561) word formal←c0561; { W8 var←c45792; /* declaration of name←v8032 skipped */ /* declaration of changed←v8076 skipped */ /* declaration of var←c44096 skipped */ var←c45792.f4/* name←v8032 */ = formal←c0561; /* Validate: */ SOURCE(14082, 347) { word tmpAddr186; tmpAddr186 = (word) (( (ptr) &var←c45792)+6)/* var←c44096 */ ; (* (ptr) tmpAddr186 ) = ( ((word) (fPt) Locked←P2760) ); (* (( (ptr) tmpAddr186) + 1) ) = 1; }; SOURCE(14082, 347) var←c45792.f5/* changed←v8076 */ = 0; SOURCE(14413, 16) (void) DoLocked←P1020((word) ((( (bPt) &var←c45792)+24)/* var←c44096 */ )); SOURCE(14082, 347) return(var←c45792.f5/* changed←v8076 */ ); } static void Locked←P2760(formal←c45856) word formal←c45856; { register ptr gf←c45824 = (ptr) &globalframe; word fileID←v11368; word oldFileID←v11396; formal←c45856 = (formal←c45856 - 24); /* Locked: */ SOURCE(14153, 254) SOURCE(14170, 32) fileID←v11368 = (word) GetFileID←P960((* ((( (ptr) formal←c45856)+4)) )); SOURCE(14204, 63) { W2 var←c0394; word var←c0511; { word pd187; pd187 = (* (( (ptr) (* (( (ptr) gf←c45824)+88)/* var←c39104 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd187 ))))((word) &var←c0394, (* (( (ptr) gf←c45824)+20)/* fileForAbbr←v4484 */ ), (* (( (ptr) formal←c45856)+4) ), pd187); }; var←c0511 = var←c0394.f1; oldFileID←v11396 = XR←Narrow(var←c0511, (* (( (ptr) gf←c45824)+22) )); }; SOURCE(14269, 138) if (((oldFileID←v11396 == 0) || (fileID←v11368 == 0)) || (0 != (word) Same←P900(fileID←v11368, oldFileID←v11396))) { SOURCE(14336, 21) (* (( (ptr) formal←c45856)+5) ) = 0; } else { SOURCE(14359, 31) { W2 var←c44128; (void) LoadInternal←P60((word) &var←c44128, (* (( (ptr) formal←c45856)+4) ), fileID←v11368); }; SOURCE(14392, 15) (* (( (ptr) formal←c45856)+5) ) = 1; }; } static void NoName←Q6480(formal←c0401, formal←c200028, formal←c200029, formal←c200030, formal←c200031) word formal←c0401; word formal←c200028; word formal←c200029; word formal←c200030; word formal←c200031; { if ((formal←c200029 == XR←Unwind)) { SOURCE(13743, 9) (void) Unlock←P2580((word) ((( (bPt) formal←c200028)+20))); }; (* (ptr) formal←c0401 ) = 0; (* (( (ptr) formal←c0401)+1) ) = 0; return; } static void NoName←Q6540(formal←c0407, formal←c200024, formal←c200025, formal←c200026, formal←c200027) word formal←c0407; word formal←c200024; word formal←c200025; word formal←c200026; word formal←c200027; { register ptr gf←c0493 = (ptr) &globalframe; if ((formal←c200025 == (* (( (ptr) (* (( (ptr) gf←c0493)+90)/* var←c39360 */ ))+9) ))) { { W4 error←v35376; error←v35376 = (* (W4Pt) formal←c200027 ); SOURCE(13116, 9) (* (ptr) formal←c0407 ) = 2; (* (( (ptr) formal←c0407)+1) ) = 5; return; }; }; (* (ptr) formal←c0407 ) = 0; (* (( (ptr) formal←c0407)+1) ) = 0; return; } static void NoName←Q6600(formal←c0414, formal←c200020, formal←c200021, formal←c200022, formal←c200023) word formal←c0414; word formal←c200020; word formal←c200021; word formal←c200022; word formal←c200023; { register ptr gf←c0494 = (ptr) &globalframe; if ((formal←c200021 == (* (( (ptr) (* (( (ptr) gf←c0494)+101)/* var←c43360 */ ))+22) ))) { { word signal←v35288; word parameters←v35316; signal←v35288 = (* (ptr) formal←c200023 ); parameters←v35316 = (* (( (ptr) formal←c200023)+1) ); SOURCE(12272, 9) (* (ptr) formal←c0414 ) = 2; (* (( (ptr) formal←c0414)+1) ) = 4; return; }; }; (* (ptr) formal←c0414 ) = 0; (* (( (ptr) formal←c0414)+1) ) = 0; return; } static void NoName←Q6660(formal←c0419, formal←c200016, formal←c200017, formal←c200018, formal←c200019) word formal←c0419; word formal←c200016; word formal←c200017; word formal←c200018; word formal←c200019; { register ptr gf←c0495 = (ptr) &globalframe; if ((formal←c200017 == XR←Unwind)) { (void) (XR←MonitorExit((word) (( (bPt) gf←c0495)+16)/* LOCK←v3504 */ )); }; (* (ptr) formal←c0419 ) = 0; (* (( (ptr) formal←c0419)+1) ) = 0; return; } static void NoName←Q6720(formal←c0424, formal←c200012, formal←c200013, formal←c200014, formal←c200015) word formal←c0424; word formal←c200012; word formal←c200013; word formal←c200014; word formal←c200015; { register ptr gf←c0496 = (ptr) &globalframe; if ((formal←c200013 == XR←Unwind)) { (void) (XR←MonitorExit((word) (( (bPt) gf←c0496)+16)/* LOCK←v3504 */ )); }; (* (ptr) formal←c0424 ) = 0; (* (( (ptr) formal←c0424)+1) ) = 0; return; } static void NoName←Q6780(formal←c0429, formal←c200008, formal←c200009, formal←c200010, formal←c200011) word formal←c0429; word formal←c200008; word formal←c200009; word formal←c200010; word formal←c200011; { register ptr gf←c0497 = (ptr) &globalframe; if ((formal←c200009 == (* (( (ptr) (* (( (ptr) gf←c0497)+89)/* var←c39264 */ ))+4) ))) { SOURCE(4237, 8) (* (ptr) formal←c0429 ) = 2; (* (( (ptr) formal←c0429)+1) ) = 3; return; }; (* (ptr) formal←c0429 ) = 0; (* (( (ptr) formal←c0429)+1) ) = 0; return; } static void NoName←Q6840(formal←c0434, formal←c200004, formal←c200005, formal←c200006, formal←c200007) word formal←c0434; word formal←c200004; word formal←c200005; word formal←c200006; word formal←c200007; { register ptr gf←c0498 = (ptr) &globalframe; if ((formal←c200005 == XR←Unwind)) { (void) (XR←MonitorExit((word) (( (bPt) gf←c0498)+16)/* LOCK←v3504 */ )); }; (* (ptr) formal←c0434 ) = 0; (* (( (ptr) formal←c0434)+1) ) = 0; return; } static void NoName←Q6900(formal←c0440, formal←c200000, formal←c200001, formal←c200002, formal←c200003) word formal←c0440; word formal←c200000; word formal←c200001; word formal←c200002; word formal←c200003; { register ptr gf←c0499 = (ptr) &globalframe; if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0499)+90)/* var←c39360 */ ))+9) ))) { { W4 error←v33760; error←v33760 = (* (W4Pt) formal←c200003 ); SOURCE(2538, 61) { word pd188; pd188 = (* (( (ptr) (* (( (ptr) gf←c0499)+92)/* var←c39424 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd188 ))))((* (( (ptr) gf←c0499)+38) ), 3, (* (( (ptr) gf←c0499)+33) ), error←v33760.f2, pd188) ; }; SOURCE(2601, 36) { word pd189; pd189 = (* (( (ptr) (* (( (ptr) gf←c0499)+92)/* var←c39424 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd189 ))))((* (( (ptr) gf←c0499)+38) ), (* (( (ptr) gf←c0499)+33) ), pd189); }; SOURCE(2639, 8) (* (ptr) formal←c0440 ) = 2; (* (( (ptr) formal←c0440)+1) ) = 2; return; }; }; (* (ptr) formal←c0440 ) = 0; (* (( (ptr) formal←c0440)+1) ) = 0; return; } /* file: AbbrevExpandImpl, module: AbbrevExpandImpl, compiled at: March 13, 1992 11:30:38 am PST */ extern void XR←install←AbbrevExpandImpl() { NoName←Q5940(); } extern void XR←run←AbbrevExpandImpl() { XR←Start(&globalframe); }