/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1992 by Xerox Corporation.  All rights reserved. */
/* time: February 21, 1992 9:35:34 pm PST */
/* C2C version: October 16, 1990 (native) */
/* ref-counting: off */
/* file: IOEditedStreamImpl, module: IOEditedStreamImpl */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [4237070766,2745193541] IOEditedStreamImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {W8 f; W8 r;} W16;
typedef struct {word f0, f1, f2;} W3;
typedef struct {W16 f; W3 r;} W19;
typedef word (*fPt)();
typedef struct {word f0, f1;} W2;
typedef struct {word f0, f1, f2, f3;} W4;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
typedef struct {W16 f; word r;} W17;
#define SOURCE(p, l) /* source p, l */
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
#define MIN(cast, x, y)  ( ( cast x) < ( cast y) ? (x) : (y) )
#define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i )
#define IOP2(op, x, y)  ( (word) ((x) op (y)) )
static void NoName←Q3108();
static void IOEditedStreamImpl←P0();
static word InlineLookupProc←P60();
static void GetDeliverWhen←P120();
static void SetDeliverWhen←P180();
static void AppendBufferChars←P240();
static void UnAppendBufferChars←P300();
static void SetMode←P360();
static void IsACR←P420();
static void IsANL←P480();
static word Create←P540();
static void EditedStreamAppendBufferChars←P600();
static word Append1←P2208();
static void AppendBufferChar←P660();
static void EditedStreamUnAppendBufferChars←P720();
static void UnAppendBufferChar←P780();
static void EditedStreamSetMode←P840();
static void EditedStreamGetDeliverWhen←P900();
static void EditedStreamSetDeliverWhen←P960();
static word EditedStreamGetChar←P1020();
static word NoName←Q3168();
static word NoName←Q3228();
static word IsEditCommand←P2364();
static void BackChar←P2424();
static void BackWord←P2484();
static void BackLine←P2544();
static word EditedStreamEndOf←P1080();
static word EditedStreamCharsAvail←P1140();
static void EditedStreamBackup←P1200();
static void EditedStreamSetEcho←P1260();
static word EditedStreamGetEcho←P1320();
static void EditedStreamReset←P1380();
static void SetEcho←P1440();
static word GetEcho←P1500();
static void DefaultSetEchoSetEcho←P1560();
static word DefaultSetEchoGetEcho←P1620();
static void DefaultSetEchoBackup←P1680();
static word NoName←Q3288();
static word DefaultSetEchoGetChar←P1740();
static word DefaultSetEchoGetBlock←P1800();
static word DefaultSetEchoUnsafeGetBlock←P1860();
static word DefaultSetEchoEndOf←P1920();
static word DefaultSetEchoCharsAvail←P1980();
static void DefaultSetEchoReset←P2040();
static word AddStreamProcs←P2100();
static void NoName←Q3348();
static void NoName←Q3408();
static void NoName←Q3468();
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[52];} string3 = {3145780, "\262\260\005\004\163\145\154\146\216\257\300\015\277\004\146\300\034\367\146\045\112\064\261\260\010\007\157\154\144\105\143\150\157\216\257\300\015\277\004\146\300\034\367\146\045\112\064\261\000\000\000"};
static struct {unsigned f; char r[16];} string4 = {851984, "\257\300\374\214\221\256\300\243\240\124\105\102\124\000\000"};
static struct {unsigned f; char r[4];} string5 = {131074, "\004\003\000"};
static struct {unsigned f; char r[164];} string6 = {10485924, "\262\260\005\004\163\145\154\146\216\257\300\015\277\004\146\300\034\367\146\045\112\064\261\260\005\004\160\162\157\143\262\260\005\004\143\150\141\162\243\007\006\142\165\146\146\145\162\216\260\007\006\154\145\156\147\164\150\210\241\000\200\177\377\005\004\164\145\170\164\254\206\012\011\155\141\170\114\145\156\147\164\150\210\241\000\200\177\377\243\261\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\010\007\143\157\156\164\145\170\164\217\261\260\013\012\141\160\160\145\156\144\103\150\141\162\232\011\010\141\143\164\151\166\141\164\145\232\261\010\007\143\157\156\164\145\170\164\217\261\000\000\000"};
static struct {unsigned f; char r[48];} string7 = {3080240, "\262\260\005\004\163\145\154\146\216\257\300\015\277\004\146\300\034\367\146\045\112\064\007\006\145\143\150\157\124\157\216\257\300\015\277\004\146\300\034\367\146\045\112\064\261\260\261"};
static struct {unsigned f; char r[164];} string8 = {10485924, "\262\260\005\004\163\145\154\146\216\257\300\015\277\004\146\300\034\367\146\045\112\064\005\004\160\162\157\143\262\260\005\004\143\150\141\162\243\007\006\142\165\146\146\145\162\216\260\007\006\154\145\156\147\164\150\210\241\000\200\177\377\005\004\164\145\170\164\254\206\012\011\155\141\170\114\145\156\147\164\150\210\241\000\200\177\377\243\261\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\010\007\143\157\156\164\145\170\164\217\261\260\013\012\141\160\160\145\156\144\103\150\141\162\232\011\010\141\143\164\151\166\141\164\145\232\261\010\007\143\157\156\164\145\170\164\217\261\260\261\000\000\000"};
static struct {unsigned f; char r[44];} string9 = {2752556, "\260\007\006\154\145\156\147\164\150\210\241\000\200\177\377\005\004\164\145\170\164\254\206\012\011\155\141\170\114\145\156\147\164\150\210\241\000\200\177\377\243\261\000"};
static struct {unsigned f; char r[52];} string10 = {3145780, "\262\260\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\006\005\143\150\141\162\163\216\257\300\363\223\326\161\300\017\164\046\072\104\350\261\260\261\000\000\000"};
static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\374\214\221\256\300\243\240\124\105\101\114\000\000"};
static struct {unsigned f; char r[4];} string12 = {131074, "\004-\000"};
static struct {unsigned f; char r[44];} string13 = {2818092, "\262\260\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\007\006\156\103\150\141\162\163\210\241\000\300\177\377\377\377\261\260\261"};
static struct {unsigned f; char r[84];} string14 = {5242964, "\262\260\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\006\005\163\164\165\146\146\216\257\300\363\223\326\161\300\017\164\046\072\104\350\016\015\160\145\156\144\151\156\147\104\145\154\145\164\145\232\016\015\145\143\150\157\101\163\164\145\162\151\163\153\163\232\261\260\261\000\000\000"};
static struct {unsigned f; char r[8];} string15 = {458760, "SetMode"};
static struct {unsigned f; char r[8];} string16 = {458760, "SetEcho"};
static struct {unsigned f; char r[20];} string17 = {1245204, "UnAppendBufferChars"};
static struct {unsigned f; char r[20];} string18 = {1114132, "AppendBufferChars\000\000"};
static struct {unsigned f; char r[16];} string19 = {917520, "SetDeliverWhen\000"};
static struct {unsigned f; char r[16];} string20 = {917520, "GetDeliverWhen\000"};
static struct {unsigned f; char r[8];} string21 = {458760, "GetEcho"};
static struct {unsigned f; char r[8];} string22 = {393224, "Edited\000"};
static struct {unsigned f; char r[16];} string23 = {851984, "\257\300\374\214\221\256\300\243\240\124\105\100\164\000\000"};
static struct {unsigned f; char r[12];} string24 = {720907, "\006\003\020\001\024\001\100\114\004\100\377"};
static struct {unsigned f; char r[16];} string25 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"};
static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\165\000\243\166\300\177\026\106\323\100\150\000\000"};
static struct {unsigned f; char r[16];} string27 = {851984, "\257\300\332\223\177\020\300\304\076\102\260\100\164\000\000"};
static struct {unsigned f; char r[16];} string28 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {unsigned f; char r[16];} string29 = {851984, "\257\300\275\320\070\317\300\004\110\363\366\100\150\000\000"};
static struct {unsigned f; char r[16];} string30 = {851984, "\257\300\235\332\224\345\300\052\031\354\223\100\150\000\000"};
static struct {
   word f0[27]; word f27; word f28; word f29; 
   word f30; word f31; word f32; word f33; 
   word f34; word f35; word f36; word f37; 
   word f38; word f39; word f40; word f41; 
   word f42; word f43; word f44; word f45; 
   word f46; word f47; word f48; word f49; 
   word f50; word f51; word f52; word f53; 
   word f54; word f55; word f56; word f57; 
   word f58; word f59; word f60; word f61; 
   word f62; word f63; word f64; word f65; 
   word f66; word f67; word f68; word f69; 
   word f70; word f71; word f72; word f73; 
   word f74; word f75; word f76; word f77; 
   word f78; word f79; word f80; word f81; 
   word f82; word f83; word f84; word f85; 
   word f86; word f87; word f88; word f89; 
   word f90; word f91; word f92; word f93; 
   word f94; word f95; word f96; word f97; 
   word f98[7]; 
   } globalframe = {
   {0}, (word) AddStreamProcs←P2100, 0, (word) DefaultSetEchoReset←P2040, 
   0, (word) DefaultSetEchoCharsAvail←P1980, 0, (word) DefaultSetEchoEndOf←P1920, 
   0, (word) DefaultSetEchoUnsafeGetBlock←P1860, 0, (word) DefaultSetEchoGetBlock←P1800, 
   0, (word) DefaultSetEchoGetChar←P1740, 0, (word) DefaultSetEchoBackup←P1680, 
   0, (word) DefaultSetEchoGetEcho←P1620, 0, (word) DefaultSetEchoSetEcho←P1560, 
   0, (word) GetEcho←P1500, 0, (word) SetEcho←P1440, 
   0, (word) EditedStreamReset←P1380, 0, (word) EditedStreamGetEcho←P1320, 
   0, (word) EditedStreamSetEcho←P1260, 0, (word) EditedStreamBackup←P1200, 
   0, (word) EditedStreamCharsAvail←P1140, 0, (word) EditedStreamEndOf←P1080, 
   0, (word) EditedStreamGetChar←P1020, 0, (word) EditedStreamSetDeliverWhen←P960, 
   0, (word) EditedStreamGetDeliverWhen←P900, 0, (word) EditedStreamSetMode←P840, 
   0, (word) UnAppendBufferChar←P780, 0, (word) EditedStreamUnAppendBufferChars←P720, 
   0, (word) AppendBufferChar←P660, 0, (word) EditedStreamAppendBufferChars←P600, 
   0, (word) Create←P540, 0, (word) IsANL←P480, 
   0, (word) IsACR←P420, 0, (word) SetMode←P360, 
   0, (word) UnAppendBufferChars←P300, 0, (word) AppendBufferChars←P240, 
   0, (word) SetDeliverWhen←P180, 0, (word) GetDeliverWhen←P120, 
   0, (word) InlineLookupProc←P60, 0, (word) IOEditedStreamImpl←P0, 
   {0}
   };

static void NoName←Q3108()
   {
   register ptr gf←c0287 =  (ptr) &globalframe;
   word var←c26664;
   (* (( (ptr) gf←c0287)+7) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
   (* (( (ptr) gf←c0287)+8) ) = (word) XR←GetTypeIndexS((word) (&string3));
   (* (( (ptr) gf←c0287)+10) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string5);
   (* (( (ptr) gf←c0287)+11) ) = (word) XR←GetTypeIndexS((word) (&string6));
   (* (( (ptr) gf←c0287)+12) ) = (word) XR←GetTypeIndexS((word) (&string7));
   (* (( (ptr) gf←c0287)+13) ) = (word) XR←GetTypeIndexS((word) (&string8));
   (* (( (ptr) gf←c0287)+14) ) = (word) XR←GetTypeIndexS((word) (&string9));
   (* (( (ptr) gf←c0287)+15) ) = (word) XR←GetTypeIndexS((word) (&string10));
   (* (( (ptr) gf←c0287)+16) ) = (word) XR←GetTypeIndex((word) &string11, 0, (word) &string12);
   (* (( (ptr) gf←c0287)+17) ) = (word) XR←GetTypeIndexS((word) (&string13));
   (* (( (ptr) gf←c0287)+18) ) = (word) XR←GetTypeIndexS((word) (&string14));
   (*  (ptr) (( (bPt) gf←c0287)+76) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string15);
   (*  (ptr) (( (bPt) gf←c0287)+80) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string16);
   (*  (ptr) (( (bPt) gf←c0287)+84) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string17);
   (*  (ptr) (( (bPt) gf←c0287)+88) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string18);
   (*  (ptr) (( (bPt) gf←c0287)+92) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string19);
   (*  (ptr) (( (bPt) gf←c0287)+96) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string20);
   (*  (ptr) (( (bPt) gf←c0287)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string21);
   (*  (ptr) (( (bPt) gf←c0287)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string22);
   (void) XR←DeclareGlobalFrame((word) "IOEditedStreamImpl", &globalframe, (word) XR←GetTypeIndex((word) &string23, 0, (word) &string24)
      , (word) (( (bPt) gf←c0287)+388)/* var←c24424 */ );
   var←c26664 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string25)), 103);
   (* (( (ptr) gf←c0287)+99)/* var←c24488 */  ) = var←c26664;
   (void) XR←ImportProcS(var←c26664, 1053698);
   (void) XR←ImportProcS(var←c26664, 68160002);
   (void) XR←ImportProcS(var←c26664, 1053444);
   (void) XR←ImportProcS(var←c26664, 68159748);
   (void) XR←ImportProcS(var←c26664, 268033);
   (void) XR←ImportProcS(var←c26664, 67636482);
   (void) XR←ImportProcS(var←c26664, 67373825);
   (void) XR←ImportProcS(var←c26664, 67372801);
   (void) XR←ImportProcS(var←c26664, 529922);
   (void) XR←ImportProcS(var←c26664, 528642);
   (void) XR←ImportProcS(var←c26664, 67921155);
   (void) XR←ImportProcS(var←c26664, 72115219);
   var←c26664 = (word) XR←ImportInterface((word) "IOUtils", (word) XR←GetTypeIndexS((word) (&string26)), 27);
   (* (( (ptr) gf←c0287)+100)/* var←c24584 */  ) = var←c26664;
   (void) XR←ImportProcS(var←c26664, 267521);
   (void) XR←ImportProcS(var←c26664, 1053700);
   (void) XR←ImportProcS(var←c26664, 792835);
   var←c26664 = (word) XR←ImportInterface((word) "RefText", (word) XR←GetTypeIndexS((word) (&string27)), 26);
   (* (( (ptr) gf←c0287)+102)/* var←c25320 */  ) = var←c26664;
   (void) XR←ImportProcS(var←c26664, 67371009);
   (void) XR←ImportProcS(var←c26664, 68158468);
   (void) XR←ImportProcS(var←c26664, 67634946);
   var←c26664 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string28)), 43);
   (* (( (ptr) gf←c0287)+101)/* var←c25160 */  ) = var←c26664;
   (void) XR←ImportProcS(var←c26664, 68163076);
   var←c26664 = (word) XR←ImportInterface((word) "RuntimeError", (word) XR←GetTypeIndexS((word) (&string29)), 27);
   (* (( (ptr) gf←c0287)+103)/* var←c26312 */  ) = var←c26664;
   var←c26664 = (word) XR←ExportInterface((word) "EditedStream", (word) XR←GetTypeIndexS((word) (&string30)), 11);
   (* (( (ptr) gf←c0287)+104)/* var←c26696 */  ) = var←c26664;
   (void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+316)/* var←c24136 */ , 68157444);
   (void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+332)/* var←c24200 */ , 135266564);
   (void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+324)/* var←c24168 */ , 135266820);
   (void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+372)/* var←c24360 */ , 134480641);
   (void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+364)/* var←c24328 */ , 787459);
   (void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+356)/* var←c24296 */ , 525570);
   (void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+348)/* var←c24264 */ , 525826);
   (void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+340)/* var←c24232 */ , 1050372);
   (void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+196)/* var←c23656 */ , 526338);
   (void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+188)/* var←c23624 */ , 67373313);
   (void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+108)/* var←c23304 */ , 67897859);
   }

static void IOEditedStreamImpl←P0(formal←c068, formal←c053)
   word formal←c068;
   word formal←c053;
   {
   register ptr gf←c26728 =  (ptr) &globalframe;
   /* IOEditedStreamImpl: */ 
SOURCE(111, 14313)
SOURCE(13168, 300)
   {
      word var←c24456;
      {
         W19 var←c055;
         (*  (ptr) (word) &var←c055 ) = 0;
         (* (( (ptr) (word) &var←c055) + 1) ) = (* (( (ptr) gf←c26728)+26) );
         (* (( (ptr) (word) &var←c055) + 2) ) = (word) (( (bPt) gf←c26728)+252)/* var←c23880 */ ;
         (* (( (ptr) (word) &var←c055) + 3) ) = 0;
         (* (( (ptr) (word) &var←c055) + 4) ) = 0;
         (* (( (ptr) (word) &var←c055) + 5) ) = (word) (( (bPt) gf←c26728)+244)/* var←c23848 */ ;
         (* (( (ptr) (word) &var←c055) + 6) ) = (word) (( (bPt) gf←c26728)+236)/* var←c23816 */ ;
         (* (( (ptr) (word) &var←c055) + 7) ) = (word) (( (bPt) gf←c26728)+228)/* var←c23784 */ ;
         (* (( (ptr) (word) &var←c055) + 8) ) = 0;
         (* (( (ptr) (word) &var←c055) + 9) ) = 0;
         (* (( (ptr) (word) &var←c055) + 10) ) = 0;
         (* (( (ptr) (word) &var←c055) + 11) ) = 0;
         (* (( (ptr) (word) &var←c055) + 12) ) = (word) (( (bPt) gf←c26728)+204)/* var←c23688 */ ;
         (* (( (ptr) (word) &var←c055) + 13) ) = 0;
         (* (( (ptr) (word) &var←c055) + 14) ) = 0;
         (* (( (ptr) (word) &var←c055) + 15) ) = 0;
         (* (( (ptr) (word) &var←c055) + 16) ) = 0;
         (* (( (ptr) (word) &var←c055) + 17) ) = 0;
         (* (( (ptr) (word) &var←c055) + 18) ) = 0;
         {
            word pd31;
            pd31 = (* (( (ptr) (* (( (ptr) gf←c26728)+99)/* var←c24488 */  ))+104) );
            var←c24456 = (word) ( *( (fPt) ((*  (ptr) pd31 ))))((word) (&var←c055), pd31);
            };
         };
      (* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */  ) = (word) AddStreamProcs←P2100(var←c24456, (word) (( (bPt) gf←c26728)+220)
         /* var←c23752 */ , (word) (( (bPt) gf←c26728)+212)/* var←c23720 */ );
      };
SOURCE(13470, 109)
   {
      word var←c24520;
      {
         word var←c24552;
         var←c24552 = XR←NewObject(4, (* (( (ptr) gf←c26728)+11) ));
         (*  (ptr) var←c24552 ) = (word) (( (bPt) gf←c26728)+268)/* var←c23944 */ ;
         var←c24520 = var←c24552;
         };
      {
         word pd32;
         pd32 = (* (( (ptr) (* (( (ptr) gf←c26728)+100)/* var←c24584 */  ))+29) );
         (void) ( *( (fPt) ((*  (ptr) pd32 ))))((* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */  ), (* (( (ptr) gf←c26728)+24)
             ), var←c24520, pd32);
         };
      };
SOURCE(13581, 109)
   {
      word var←c24616;
      {
         word var←c24648;
         var←c24648 = XR←NewObject(4, (* (( (ptr) gf←c26728)+13) ));
         (*  (ptr) var←c24648 ) = (word) (( (bPt) gf←c26728)+260)/* var←c23912 */ ;
         var←c24616 = var←c24648;
         };
      {
         word pd33;
         pd33 = (* (( (ptr) (* (( (ptr) gf←c26728)+100)/* var←c24584 */  ))+29) );
         (void) ( *( (fPt) ((*  (ptr) pd33 ))))((* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */  ), (* (( (ptr) gf←c26728)+23)
             ), var←c24616, pd33);
         };
      };
SOURCE(13692, 118)
   {
      word var←c24680;
      {
         word var←c24712;
         var←c24712 = XR←NewObject(4, (* (( (ptr) gf←c26728)+15) ));
         (*  (ptr) var←c24712 ) = (word) (( (bPt) gf←c26728)+308)/* var←c24104 */ ;
         var←c24680 = var←c24712;
         };
      {
         word pd34;
         pd34 = (* (( (ptr) (* (( (ptr) gf←c26728)+100)/* var←c24584 */  ))+29) );
         (void) ( *( (fPt) ((*  (ptr) pd34 ))))((* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */  ), (* (( (ptr) gf←c26728)+22)
             ), var←c24680, pd34);
         };
      };
SOURCE(13812, 124)
   {
      word var←c24744;
      {
         word var←c24776;
         var←c24776 = XR←NewObject(4, (* (( (ptr) gf←c26728)+17) ));
         (*  (ptr) var←c24776 ) = (word) (( (bPt) gf←c26728)+292)/* var←c24040 */ ;
         var←c24744 = var←c24776;
         };
      {
         word pd35;
         pd35 = (* (( (ptr) (* (( (ptr) gf←c26728)+100)/* var←c24584 */  ))+29) );
         (void) ( *( (fPt) ((*  (ptr) pd35 ))))((* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */  ), (* (( (ptr) gf←c26728)+21)
             ), var←c24744, pd35);
         };
      };
SOURCE(13938, 88)
   {
      word var←c24808;
      {
         word var←c24840;
         var←c24840 = XR←NewObject(4, (* (( (ptr) gf←c26728)+18) ));
         (*  (ptr) var←c24840 ) = (word) (( (bPt) gf←c26728)+276)/* var←c23976 */ ;
         var←c24808 = var←c24840;
         };
      {
         word pd36;
         pd36 = (* (( (ptr) (* (( (ptr) gf←c26728)+100)/* var←c24584 */  ))+29) );
         (void) ( *( (fPt) ((*  (ptr) pd36 ))))((* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */  ), (* (( (ptr) gf←c26728)+19)
             ), var←c24808, pd36);
         };
      };
SOURCE(14028, 396)
   {
      word var←c24872;
      {
         W19 var←c067;
         (*  (ptr) (word) &var←c067 ) = 2;
         (* (( (ptr) (word) &var←c067) + 1) ) = (* (( (ptr) gf←c26728)+20) );
         (* (( (ptr) (word) &var←c067) + 2) ) = (word) (( (bPt) gf←c26728)+156)/* var←c23496 */ ;
         (* (( (ptr) (word) &var←c067) + 3) ) = (word) (( (bPt) gf←c26728)+148)/* var←c23464 */ ;
         (* (( (ptr) (word) &var←c067) + 4) ) = (word) (( (bPt) gf←c26728)+140)/* var←c23432 */ ;
         (* (( (ptr) (word) &var←c067) + 5) ) = (word) (( (bPt) gf←c26728)+132)/* var←c23400 */ ;
         (* (( (ptr) (word) &var←c067) + 6) ) = (word) (( (bPt) gf←c26728)+124)/* var←c23368 */ ;
         (* (( (ptr) (word) &var←c067) + 7) ) = (word) (( (bPt) gf←c26728)+164)/* var←c23528 */ ;
         (* (( (ptr) (word) &var←c067) + 8) ) = 0;
         (* (( (ptr) (word) &var←c067) + 9) ) = 0;
         (* (( (ptr) (word) &var←c067) + 10) ) = 0;
         (* (( (ptr) (word) &var←c067) + 11) ) = 0;
         (* (( (ptr) (word) &var←c067) + 12) ) = (word) (( (bPt) gf←c26728)+116)/* var←c23336 */ ;
         (* (( (ptr) (word) &var←c067) + 13) ) = 0;
         (* (( (ptr) (word) &var←c067) + 14) ) = 0;
         (* (( (ptr) (word) &var←c067) + 15) ) = 0;
         (* (( (ptr) (word) &var←c067) + 16) ) = 0;
         (* (( (ptr) (word) &var←c067) + 17) ) = 0;
         (* (( (ptr) (word) &var←c067) + 18) ) = 0;
         {
            word pd37;
            pd37 = (* (( (ptr) (* (( (ptr) gf←c26728)+99)/* var←c24488 */  ))+104) );
            var←c24872 = (word) ( *( (fPt) ((*  (ptr) pd37 ))))((word) (&var←c067), pd37);
            };
         };
      (* (( (ptr) gf←c26728)+5)/* setEchoProcs←v3896 */  ) = (word) AddStreamProcs←P2100(var←c24872, (word) (( (bPt) gf←c26728)+180)
         /* var←c23592 */ , (word) (( (bPt) gf←c26728)+172)/* var←c23560 */ );
      };
   }

static word InlineLookupProc←P60(self←v5100, operation←v5128)
   word self←v5100;
   word operation←v5128;
   {
   word proc←v5172;
   /* InlineLookupProc: */ 
SOURCE(984, 219)
SOURCE(984, 219)
   proc←v5172 = 0;
SOURCE(1078, 125)
   {
      register word l←v9412;
      l←v9412 = (* (( (ptr) (*  (ptr) self←v5100 ))+17) );
      lab←L100003: ;
      if ((l←v9412 != 0)) {
         }
      else {
         goto lab←L100000;
         };
SOURCE(1152, 51)
      if (((*  (ptr) (*  (ptr) l←v9412 ) ) == operation←v5128)) {
SOURCE(1184, 19)
         return((* (( (ptr) (*  (ptr) l←v9412 ))+1) ));
         };
      l←v9412 = (* (( (ptr) l←v9412)+1) );
      goto lab←L100003;
      lab←L100000: ;
      };
SOURCE(984, 219)
   return(proc←v5172);
   }

static void GetDeliverWhen←P120(formal←c080, self←v5244)
   word formal←c080;
   word self←v5244;
   {
   register ptr gf←c26760 =  (ptr) &globalframe;
   word proc←v5288;
   word context←v5316;
   word p←v9456;
   /* GetDeliverWhen: */ 
SOURCE(1219, 298)
SOURCE(1219, 298)
   proc←v5288 = 0;
SOURCE(1219, 298)
   context←v5316 = 0;
SOURCE(1316, 52)
   p←v9456 = (word) InlineLookupProc←P60(self←v5244, (* (( (ptr) gf←c26760)+24) ));
SOURCE(1370, 147)
   if ((p←v9456 != 0)) {
SOURCE(1388, 63)
      {
         W2 var←c24904;
         {
            word pd38;
            pd38 = (*  (ptr) XR←Narrow(p←v9456, (* (( (ptr) gf←c26760)+11) )) );
            (void) ( *( (fPt) ((*  (ptr) pd38 ))))((word) &var←c24904, self←v5244, pd38);
            };
         context←v5316 = var←c24904.f1;
         proc←v5288 = XR←CheckProc(var←c24904.f0);
         };
      /* removed tail goto */ 
      }
   else {
SOURCE(1467, 50)
      {
         W4 var←c079;
         (*  (ptr) (word) &var←c079 ) = 1;
         (* (( (ptr) (word) &var←c079) + 1) ) = self←v5244;
         (* (( (ptr) (word) &var←c079) + 2) ) = 0;
         (* (( (ptr) (word) &var←c079) + 3) ) = 0;
         (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26760)+99)/* var←c24488 */  ))+5) ), (word) &var←c079);
         };
      };
   (*  (ptr) formal←c080 ) = proc←v5288;
   (* (( (ptr) formal←c080)+1) ) = context←v5316;
   return;
   }

static void SetDeliverWhen←P180(self←v5388, proc←v5416, context←v5444)
   word self←v5388;
   word proc←v5416;
   word context←v5444;
   {
   register ptr gf←c26792 =  (ptr) &globalframe;
   word p←v9524;
   /* SetDeliverWhen: */ 
SOURCE(1523, 286)
SOURCE(1611, 52)
   p←v9524 = (word) InlineLookupProc←P60(self←v5388, (* (( (ptr) gf←c26792)+23) ));
SOURCE(1665, 144)
   if ((p←v9524 != 0)) {
SOURCE(1683, 60)
      {
         word pd39;
         pd39 = (*  (ptr) XR←Narrow(p←v9524, (* (( (ptr) gf←c26792)+13) )) );
         (void) ( *( (fPt) ((*  (ptr) pd39 ))))(self←v5388, proc←v5416, context←v5444, pd39);
         };
SOURCE(1745, 7)
      return;
      }
   else {
SOURCE(1759, 50)
      {
         W4 var←c085;
         (*  (ptr) (word) &var←c085 ) = 1;
         (* (( (ptr) (word) &var←c085) + 1) ) = self←v5388;
         (* (( (ptr) (word) &var←c085) + 2) ) = 0;
         (* (( (ptr) (word) &var←c085) + 3) ) = 0;
         (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26792)+99)/* var←c24488 */  ))+5) ), (word) &var←c085);
         };
      };
   }

static void AppendBufferChars←P240(stream←v5516, chars←v5544)
   word stream←v5516;
   word chars←v5544;
   {
   register ptr gf←c26824 =  (ptr) &globalframe;
   word p←v9592;
   /* AppendBufferChars: */ 
SOURCE(1815, 267)
SOURCE(1880, 57)
   p←v9592 = (word) InlineLookupProc←P60(stream←v5516, (* (( (ptr) gf←c26824)+22) ));
SOURCE(1939, 143)
   if ((p←v9592 != 0)) {
SOURCE(1957, 57)
      {
         word pd40;
         pd40 = (*  (ptr) XR←Narrow(p←v9592, (* (( (ptr) gf←c26824)+15) )) );
         (void) ( *( (fPt) ((*  (ptr) pd40 ))))(stream←v5516, chars←v5544, pd40);
         };
SOURCE(2016, 7)
      return;
      }
   else {
SOURCE(2030, 52)
      {
         W4 var←c089;
         (*  (ptr) (word) &var←c089 ) = 1;
         (* (( (ptr) (word) &var←c089) + 1) ) = stream←v5516;
         (* (( (ptr) (word) &var←c089) + 2) ) = 0;
         (* (( (ptr) (word) &var←c089) + 3) ) = 0;
         (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26824)+99)/* var←c24488 */  ))+5) ), (word) &var←c089);
         };
      };
   }

static void UnAppendBufferChars←P300(stream←v5604, nChars←v5632)
   word stream←v5604;
   word nChars←v5632;
   {
   register ptr gf←c26856 =  (ptr) &globalframe;
   word p←v9660;
   /* UnAppendBufferChars: */ 
SOURCE(2088, 274)
SOURCE(2155, 59)
   p←v9660 = (word) InlineLookupProc←P60(stream←v5604, (* (( (ptr) gf←c26856)+21) ));
SOURCE(2216, 146)
   if ((p←v9660 != 0)) {
SOURCE(2234, 60)
      {
         word pd41;
         pd41 = (*  (ptr) XR←Narrow(p←v9660, (* (( (ptr) gf←c26856)+17) )) );
         (void) ( *( (fPt) ((*  (ptr) pd41 ))))(stream←v5604, nChars←v5632, pd41);
         };
SOURCE(2296, 7)
      return;
      }
   else {
SOURCE(2310, 52)
      {
         W4 var←c093;
         (*  (ptr) (word) &var←c093 ) = 1;
         (* (( (ptr) (word) &var←c093) + 1) ) = stream←v5604;
         (* (( (ptr) (word) &var←c093) + 2) ) = 0;
         (* (( (ptr) (word) &var←c093) + 3) ) = 0;
         (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26856)+99)/* var←c24488 */  ))+5) ), (word) &var←c093);
         };
      };
   }

static void SetMode←P360(stream←v5692, stuff←v5720, pendingDelete←v5748, echoAsterisks←v5776)
   word stream←v5692;
   word stuff←v5720;
   word pendingDelete←v5748;
   word echoAsterisks←v5776;
   {
   register ptr gf←c26888 =  (ptr) &globalframe;
   word p←v9728;
   /* SetMode: */ 
SOURCE(2368, 309)
SOURCE(2465, 47)
   p←v9728 = (word) InlineLookupProc←P60(stream←v5692, (* (( (ptr) gf←c26888)+19) ));
SOURCE(2514, 163)
   if ((p←v9728 != 0)) {
SOURCE(2532, 77)
      {
         word pd42;
         pd42 = (*  (ptr) XR←Narrow(p←v9728, (* (( (ptr) gf←c26888)+18) )) );
         (void) ( *( (fPt) ((*  (ptr) pd42 ))))(stream←v5692, stuff←v5720, pendingDelete←v5748, echoAsterisks←v5776, pd42);
         };
SOURCE(2611, 7)
      return;
      }
   else {
SOURCE(2625, 52)
      {
         W4 var←c099;
         (*  (ptr) (word) &var←c099 ) = 1;
         (* (( (ptr) (word) &var←c099) + 1) ) = stream←v5692;
         (* (( (ptr) (word) &var←c099) + 2) ) = 0;
         (* (( (ptr) (word) &var←c099) + 3) ) = 0;
         (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26888)+99)/* var←c24488 */  ))+5) ), (word) &var←c099);
         };
      };
   }

static void IsACR←P420(formal←c0106, char←v12688, buffer←v12716, stream←v12744, context←v12772)
   word formal←c0106;
   word char←v12688;
   word buffer←v12716;
   word stream←v12744;
   word context←v12772;
   {
   word appendChar←v12816;
   word activate←v12844;
   /* IsACR: */ 
SOURCE(3064, 104)
SOURCE(3098, 70)
   appendChar←v12816 = 1;
   if ((char←v12688 == 13)) {
      activate←v12844 = 1;
      }
   else {
      activate←v12844 = (char←v12688 == 10);
      };
   /* removed tail goto */ 
   (*  (ptr) formal←c0106 ) = appendChar←v12816;
   (* (( (ptr) formal←c0106)+1) ) = activate←v12844;
   return;
   }

static void IsANL←P480(formal←c0113, char←v12904, buffer←v12932, stream←v12960, context←v12988)
   word formal←c0113;
   word char←v12904;
   word buffer←v12932;
   word stream←v12960;
   word context←v12988;
   {
   word appendChar←v13032;
   word activate←v13060;
   /* IsANL: */ 
SOURCE(3172, 104)
SOURCE(3206, 70)
   appendChar←v13032 = 1;
   if ((char←v12904 == 13)) {
      activate←v13060 = 1;
      }
   else {
      activate←v13060 = (char←v12904 == 10);
      };
   /* removed tail goto */ 
   (*  (ptr) formal←c0113 ) = appendChar←v13032;
   (* (( (ptr) formal←c0113)+1) ) = activate←v13060;
   return;
   }

static word Create←P540(in←v6136, echoTo←v6164, deliverWhen←v6192, context←v6220)
   word in←v6136;
   word echoTo←v6164;
   word deliverWhen←v6192;
   word context←v6220;
   {
   register ptr gf←c26920 =  (ptr) &globalframe;
   word var←c6276;
   word h←v9796;
   /* Create: */ 
SOURCE(3282, 385)
SOURCE(3400, 214)
   {
      word var←c24936;
      {
         word var←c24968;
         word var←c25032;
         word var←c25096;
         {
            word var←c25000;
            var←c25000 = XR←NewObject(260, (* (( (ptr) gf←c26920)+14) ));
            (* (( (hPt) var←c25000)+1) ) = 256;
            var←c24968 = var←c25000;
            };
         {
            word var←c25064;
            var←c25064 = XR←NewObject(260, (* (( (ptr) gf←c26920)+14) ));
            (* (( (hPt) var←c25064)+1) ) = 256;
            var←c25032 = var←c25064;
            };
         var←c25096 = XR←NewObject(32, (* (( (ptr) gf←c26920)+16) ));
         (*  (ptr) var←c25096 ) = var←c24968;
         (* (( (ptr) var←c25096)+2) ) = var←c25032;
         (* (( (ptr) var←c25096)+4) ) = XR←CheckProc(deliverWhen←v6192);
         (* (( (ptr) var←c25096)+5) ) = context←v6220;
         var←c24936 = var←c25096;
         };
      {
         word pd43;
         pd43 = (* (( (ptr) (* (( (ptr) gf←c26920)+99)/* var←c24488 */  ))+105) );
         h←v9796 = (word) ( *( (fPt) ((*  (ptr) pd43 ))))((* (( (ptr) gf←c26920)+4)/* EditedStreamProcs←v3336 */  ), var←c24936, in←v6136, pd43)
         ;
         };
      };
SOURCE(3616, 16)
   (void) SetEcho←P1440(in←v6136, 0);
SOURCE(3635, 18)
   (void) SetEcho←P1440(h←v9796, echoTo←v6164);
SOURCE(3656, 11)
   return(h←v9796);
   }

static void EditedStreamAppendBufferChars←P600(stream←v6336, chars←v6364)
   word stream←v6336;
   word chars←v6364;
   {
   W7 var←c26952;
   register ptr gf←c26984 =  (ptr) &globalframe;
   /* declaration of var←c25128 skipped */ 
   /* declaration of data←v9840 skipped */ 
   /* EditedStreamAppendBufferChars: */ 
SOURCE(3671, 253)
   {
      word tmpAddr44;
      tmpAddr44 = (word) (( (ptr) &var←c26952)+4)/* var←c25128 */ ;
      (*  (ptr) tmpAddr44 ) = ( ((word)  (fPt) Append1←P2208) );
      (* (( (ptr) tmpAddr44) + 1) ) = 1;
      };
SOURCE(3741, 50)
   var←c26952.f6/* data←v9840 */  = XR←Narrow((* (( (ptr) stream←v6336)+1) ), (* (( (ptr) gf←c26984)+16) ));
SOURCE(3893, 31)
   {
      word var←c25192;
      word pd45;
      pd45 = (* (( (ptr) (* (( (ptr) gf←c26984)+101)/* var←c25160 */  ))+26) );
      var←c25192 = (word) ( *( (fPt) ((*  (ptr) pd45 ))))(chars←v6364, 0, 2147483647, (word) (( (bPt) &var←c26952)+16)/* var←c25128 */ , pd45)
      ;
      };
   }

static word Append1←P2208(c←v9944, formal←c27016)
   word c←v9944;
   word formal←c27016;
   {
   word quit←v9988;
   formal←c27016 = (formal←c27016 - 16);
   /* Append1: */ 
SOURCE(3793, 97)
SOURCE(3842, 25)
   (void) AppendBufferChar←P660((* (( (ptr) formal←c27016)+6) ), c←v9944);
SOURCE(3869, 21)
   return(0);
   }

static void AppendBufferChar←P660(data←v6424, char←v6452)
   word data←v6424;
   word char←v6452;
   {
   register ptr gf←c27048 =  (ptr) &globalframe;
   /* AppendBufferChar: */ 
SOURCE(3930, 272)
SOURCE(4005, 57)
   {
      word var←c25224;
      {
         word var←c25256;
         word to←v23228;
         word from←v23256;
         to←v23228 = (* (( (ptr) data←v6424)+2) );
         from←v23256 = char←v6452;
         if (((*  (hPt) to←v23228 ) >= (* (( (hPt) to←v23228)+1) ))) {
            {
               word pd46;
               pd46 = (* (( (ptr) (* (( (ptr) gf←c27048)+102)/* var←c25320 */  ))+11) );
               var←c25256 = (word) ( *( (fPt) ((*  (ptr) pd46 ))))(to←v23228, from←v23256, pd46);
               };
            goto lab←L100007;
            };
         {
            word idx47;
            word limit48;
            (* ((( (bPt) to←v23228)+4)+(
                  idx47 = (word) (*  (hPt) to←v23228 ),
                  limit48 = (word) (* (( (hPt) to←v23228)+1) ),
                  BCK(idx47, limit48)
                  )) ) = from←v23256;
            };
         {
            word idx49;
            (*  (hPt) to←v23228 ) = (
               idx49 = (word) ((*  (hPt) to←v23228 ) + 1),
               BCK(idx49, 32768)
               );
            };
         var←c25256 = to←v23228;
         lab←L100007: ;
         var←c25224 = var←c25256;
         };
      (* (( (ptr) data←v6424)+2) ) = var←c25224;
      };
SOURCE(4064, 138)
   if (((* (( (ptr) data←v6424)+3) ) != 0)) {
SOURCE(4096, 106)
      if ( ( (0 != (* (( (ptr) data←v6424)+6) )) ? (char←v6452 > 32) : 0 ) ) {
SOURCE(4140, 33)
         {
            word pd50;
            pd50 = (* (( (ptr) (* (( (ptr) gf←c27048)+99)/* var←c24488 */  ))+21) );
            (void) ( *( (fPt) ((*  (ptr) pd50 ))))((* (( (ptr) data←v6424)+3) ), 42, pd50);
            };
         }
      else {
SOURCE(4173, 29)
         {
            word pd51;
            pd51 = (* (( (ptr) (* (( (ptr) gf←c27048)+99)/* var←c24488 */  ))+21) );
            (void) ( *( (fPt) ((*  (ptr) pd51 ))))((* (( (ptr) data←v6424)+3) ), char←v6452, pd51);
            };
         };
      };
   }

static void EditedStreamUnAppendBufferChars←P720(stream←v6512, nChars←v6540)
   word stream←v6512;
   word nChars←v6540;
   {
   register ptr gf←c27080 =  (ptr) &globalframe;
   word data←v10016;
   /* EditedStreamUnAppendBufferChars: */ 
SOURCE(4211, 219)
SOURCE(4290, 50)
   data←v10016 = XR←Narrow((* (( (ptr) stream←v6512)+1) ), (* (( (ptr) gf←c27080)+16) ));
SOURCE(4342, 88)
   {
      register word i←v10060 = 0;
      register word noName←c25352;
      {
         word x52;
         noName←c25352 = (x52 = (*  (hPt) (* (( (ptr) data←v10016)+2) ) ),
            MIN( (unsigned) , nChars←v6540, x52));
         };
      if ((i←v10060 >= noName←c25352)) {
         goto lab←L100008;
         };
      lab←L100011: ;
SOURCE(4398, 32)
      (void) UnAppendBufferChar←P780(data←v10016);
      i←v10060 = (i←v10060 + 1);
      if ((i←v10060 < noName←c25352)) {
         goto lab←L100011;
         };
      lab←L100008: ;
      };
   }

static void UnAppendBufferChar←P780(data←v6600)
   word data←v6600;
   {
   register ptr gf←c27112 =  (ptr) &globalframe;
   /* UnAppendBufferChar: */ 
SOURCE(4436, 304)
SOURCE(4501, 193)
   if (((* (( (ptr) data←v6600)+3) ) != 0)) {
SOURCE(4531, 163)
      {
         word char←v10104;
SOURCE(4533, 48)
         {
            word var←c25384;
            word var←c25416;
            var←c25384 = ((*  (hPt) (* (( (ptr) data←v6600)+2) ) ) - 1);
            var←c25416 = (* (( (ptr) data←v6600)+2) );
            {
               word limit53;
               char←v10104 = (word) (* ((( (bPt) var←c25416)+4)+(
                     limit53 = (word) (* (( (hPt) var←c25416)+1) ),
                     BCK(var←c25384, limit53)
                     )) );
               };
            };
SOURCE(4583, 111)
         if ( ( (0 != (* (( (ptr) data←v6600)+6) )) ? (char←v10104 > 32) : 0 ) ) {
SOURCE(4627, 35)
            {
               word pd54;
               pd54 = (* (( (ptr) (* (( (ptr) gf←c27112)+99)/* var←c24488 */  ))+26) );
               (void) ( *( (fPt) ((*  (ptr) pd54 ))))((* (( (ptr) data←v6600)+3) ), 42, pd54);
               };
            }
         else {
SOURCE(4662, 32)
            {
               word pd55;
               pd55 = (* (( (ptr) (* (( (ptr) gf←c27112)+99)/* var←c24488 */  ))+26) );
               (void) ( *( (fPt) ((*  (ptr) pd55 ))))((* (( (ptr) data←v6600)+3) ), char←v10104, pd55);
               };
            };
         };
      };
SOURCE(4697, 43)
   {
      word idx56;
      (*  (hPt) (* (( (ptr) data←v6600)+2) ) ) = (
         idx56 = (word) ((*  (hPt) (* (( (ptr) data←v6600)+2) ) ) - 1),
         BCK(idx56, 32768)
         );
      };
   }

static void EditedStreamSetMode←P840(stream←v6660, stuff←v6688, pendingDelete←v6716, echoAsterisks←v6744)
   word stream←v6660;
   word stuff←v6688;
   word pendingDelete←v6716;
   word echoAsterisks←v6744;
   {
   register ptr gf←c27144 =  (ptr) &globalframe;
   word data←v10148;
   /* EditedStreamSetMode: */ 
SOURCE(4746, 318)
SOURCE(4849, 50)
   data←v10148 = XR←Narrow((* (( (ptr) stream←v6660)+1) ), (* (( (ptr) gf←c27144)+16) ));
SOURCE(4901, 22)
   (*  (hPt) (* (( (ptr) data←v10148)+2) ) ) = 0;
SOURCE(4925, 33)
   (* (( (ptr) data←v10148)+1) ) = (*  (hPt) (*  (ptr) data←v10148 ) );
SOURCE(4960, 34)
   (* (( (ptr) data←v10148)+7) ) = pendingDelete←v6716;
SOURCE(4996, 34)
   (* (( (ptr) data←v10148)+6) ) = echoAsterisks←v6744;
SOURCE(5032, 32)
   (void) AppendBufferChars←P240(stream←v6660, stuff←v6688);
   }

static void EditedStreamGetDeliverWhen←P900(formal←c0159, self←v6804)
   word formal←c0159;
   word self←v6804;
   {
   register ptr gf←c27176 =  (ptr) &globalframe;
   word proc←v6848;
   word context←v6876;
   word data←v10192;
   /* EditedStreamGetDeliverWhen: */ 
SOURCE(5070, 191)
SOURCE(5070, 191)
   proc←v6848 = 0;
SOURCE(5070, 191)
   context←v6876 = 0;
SOURCE(5172, 48)
   data←v10192 = XR←Narrow((* (( (ptr) self←v6804)+1) ), (* (( (ptr) gf←c27176)+16) ));
SOURCE(5222, 39)
   proc←v6848 = XR←CheckProc(* (( (ptr) data←v10192)+4) );
   context←v6876 = (* (( (ptr) data←v10192)+5) );
   /* removed tail goto */ 
   (*  (ptr) formal←c0159 ) = proc←v6848;
   (* (( (ptr) formal←c0159)+1) ) = context←v6876;
   return;
   }

static void EditedStreamSetDeliverWhen←P960(self←v6948, proc←v6976, context←v7004)
   word self←v6948;
   word proc←v6976;
   word context←v7004;
   {
   register ptr gf←c27208 =  (ptr) &globalframe;
   word data←v10236;
   /* EditedStreamSetDeliverWhen: */ 
SOURCE(5267, 191)
SOURCE(5360, 48)
   data←v10236 = XR←Narrow((* (( (ptr) self←v6948)+1) ), (* (( (ptr) gf←c27208)+16) ));
SOURCE(5410, 23)
   (* (( (ptr) data←v10236)+4) ) = XR←CheckProc(proc←v6976);
SOURCE(5436, 22)
   (* (( (ptr) data←v10236)+5) ) = context←v7004;
   }

static word EditedStreamGetChar←P1020(formal←c0344)
   word formal←c0344;
   {
   W17 var←c27240;
   /* declaration of self←v7076 skipped */ 
   register ptr gf←c27272 =  (ptr) &globalframe;
   word char←v7120;
   /* declaration of var←c25512 skipped */ 
   /* declaration of var←c25544 skipped */ 
   /* declaration of var←c25576 skipped */ 
   /* declaration of var←c25608 skipped */ 
   /* declaration of data←v10280 skipped */ 
   (* (( (ptr) &var←c27240)+4)/* self←v7076 */  ) = formal←c0344;
   /* EditedStreamGetChar: */ 
SOURCE(5464, 1983)
   {
      word tmpAddr57;
      tmpAddr57 = (word) (( (ptr) &var←c27240)+5)/* var←c25512 */ ;
      (*  (ptr) tmpAddr57 ) = ( ((word)  (fPt) BackLine←P2544) );
      (* (( (ptr) tmpAddr57) + 1) ) = 1;
      };
   {
      word tmpAddr58;
      tmpAddr58 = (word) (( (ptr) &var←c27240)+7)/* var←c25544 */ ;
      (*  (ptr) tmpAddr58 ) = ( ((word)  (fPt) BackWord←P2484) );
      (* (( (ptr) tmpAddr58) + 1) ) = 1;
      };
   {
      word tmpAddr59;
      tmpAddr59 = (word) (( (ptr) &var←c27240)+9)/* var←c25576 */ ;
      (*  (ptr) tmpAddr59 ) = ( ((word)  (fPt) BackChar←P2424) );
      (* (( (ptr) tmpAddr59) + 1) ) = 1;
      };
   {
      word tmpAddr60;
      tmpAddr60 = (word) (( (ptr) &var←c27240)+11)/* var←c25608 */ ;
      (*  (ptr) tmpAddr60 ) = ( ((word)  (fPt) IsEditCommand←P2364) );
      (* (( (ptr) tmpAddr60) + 1) ) = 1;
      };
SOURCE(5530, 48)
   (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ) = XR←Narrow((* (( (ptr) (* (( (ptr) &var←c27240)+4)/* self←v7076 */  ))+1)
       ), (* (( (ptr) gf←c27272)+16) ));
SOURCE(6272, 1175)
   lab←L100015: ;
SOURCE(6275, 126)
   if (( (int)(* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+1) ) <  (int)(*  (hPt) (*  (ptr) (* (( (ptr) &var←c27240)+13)
   /* data←v10280 */  ) ) ))) {
SOURCE(6319, 32)
      {
         word var←c25640;
         var←c25640 = (*  (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ) );
         {
            word idx61;
            word limit62;
            char←v7120 = (word) (* ((( (bPt) var←c25640)+4)+(
                  idx61 = (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+1) ),
                  limit62 = (word) (* (( (hPt) var←c25640)+1) ),
                  BCK(idx61, limit62)
                  )) );
            };
         };
SOURCE(6353, 33)
      (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+1) ) = ((* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+1)
       ) + 1);
SOURCE(6388, 13)
      return(char←v7120);
      };
SOURCE(6406, 1041)
SOURCE(6408, 26)
   {
      word appendChar←v10588;
      word activate←v10616;
SOURCE(6436, 86)
      {
         /* declaration of var←c01 skipped */ 
         /* declaration of var←c02 skipped */ 
         (* (( (ptr) &var←c27240)+14)/* var←c01 */  ) = (* (( (ptr) (* (( (ptr) &var←c27240)+4)/* self←v7076 */  ))+3) );
         (* (( (ptr) &var←c27240)+15)/* var←c02 */  ) = (* (( (ptr) (* (( (ptr) gf←c27272)+99)/* var←c24488 */  ))+11) );
         {
            /* declaration of var←c03 skipped */ 
            {
               word var←c04;
               {
                  word var←c0333;
                  var←c0333 = (word) &var←c27240;
                  var←c04 = (word) XR←Enable(( ((word)  (fPt) NoName←Q3228) ), ( ((word)  (fPt) NoName←Q3468) ), var←c0333);
                  };
               if ((var←c04 == 2)) {
                  goto lab←L100016;
                  };
               };
            char←v7120 = (* (( (ptr) &var←c27240)+16)/* var←c03 */  );
            };
         };
SOURCE(6556, 102)
      {
         W2 var←c25672;
         {
            word pd63;
            pd63 = (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+4) );
            (void) ( *( (fPt) ((*  (ptr) pd63 ))))((word) &var←c25672, char←v7120, (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+2)
                ), (* (( (ptr) &var←c27240)+4)/* self←v7076 */  ), (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+5) ), pd63)
            ;
            };
         activate←v10616 = var←c25672.f1;
         appendChar←v10588 = var←c25672.f0;
         };
SOURCE(6660, 166)
      if ((0 != (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+7) ))) {
SOURCE(6689, 26)
         (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+7) ) = 0;
SOURCE(6717, 109)
         if ( (  ( (0 == activate←v10616) ? (0 != appendChar←v10588) : 0 )  ? (0 == (word) IsEditCommand←P2364(char←v7120, (word) (
               ( (bPt) &var←c27240)+44)/* var←c25608 */ )) : 0 ) ) {
SOURCE(6781, 45)
            (void) UnAppendBufferChars←P300((* (( (ptr) &var←c27240)+4)/* self←v7076 */  ), (*  (hPt) (* (( (ptr) (* (( (ptr) &var←c27240)+13)
                  /* data←v10280 */  ))+2) ) ));
            };
         };
SOURCE(6831, 397)
      if ((0 != appendChar←v10588)) {
SOURCE(6852, 376)
         {
            word var←c25704;
            var←c25704 = char←v7120;
            switch (var←c25704) {
               case 127: 
SOURCE(6884, 62)
                  {
                     word var←c0334;
                     var←c0334 = (word) &var←c27240;
                      (void) (word) XR←Enable(( ((word)  (fPt) NoName←Q3168) ), ( ((word)  (fPt) NoName←Q3408) ), var←c0334);
                     };
                  break;
               case 1: case 8: 
SOURCE(6979, 10)
                  (void) BackChar←P2424((word) ((( (bPt) &var←c27240)+36)/* var←c25576 */ ));
                  break;
               case 23: 
SOURCE(7009, 10)
                  (void) BackWord←P2484((word) ((( (bPt) &var←c27240)+28)/* var←c25544 */ ));
                  break;
               case 17: 
SOURCE(7039, 10)
                  (void) BackLine←P2544((word) ((( (bPt) &var←c27240)+20)/* var←c25512 */ ));
                  break;
               case 27: 
SOURCE(7064, 112)
                  if (((*  (hPt) (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+2) ) ) == 0)) {
SOURCE(7097, 79)
                     {
                        register word i←v10660 = 0;
                        register word noName←c25736;
                        {
                           word idx64;
                           noName←c25736 = (
/*1*/   idx64 = (word) ((*  (hPt) (*  (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ) ) ) - 1),
/*1*/   SGNCK(idx64)
/*1*/   );
                           };
                        if ((i←v10660 >= noName←c25736)) {
                           goto lab←L100021;
                           };
                        lab←L100024: ;
SOURCE(7139, 37)
                        {
                           word var←c25768;
                           word var←c0335;
                           var←c25768 = (*  (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ) );
                           {
/*1*/   word limit65;
/*1*/   var←c0335 = (word) (* ((( (bPt) var←c25768)+4)+(
/*1*/         limit65 = (word) (* (( (hPt) var←c25768)+1) ),
/*1*/         BCK(i←v10660, limit65)
/*1*/         )) );
/*1*/   };
                           (void) AppendBufferChar←P660((* (( (ptr) &var←c27240)+13)/* data←v10280 */  ), var←c0335);
                           };
                        i←v10660 = (i←v10660 + 1);
                        if ((i←v10660 < noName←c25736)) {
                           goto lab←L100024;
                           };
                        lab←L100021: ;
                        };
                     };
                  break;
               default: 
SOURCE(7200, 28)
                  (void) AppendBufferChar←P660((* (( (ptr) &var←c27240)+13)/* data←v10280 */  ), char←v7120);
                  break;
               };
            };
         };
SOURCE(7233, 17)
      if ((0 != activate←v10616)) {
SOURCE(7250, 19)
         goto lab←L100016;
         };
      };
   goto lab←L100025;
   lab←L100016: ;
SOURCE(7297, 21)
   (*  (hPt) (*  (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ) ) ) = 0;
SOURCE(7320, 52)
   {
      word pd66;
      pd66 = (* (( (ptr) (* (( (ptr) gf←c27272)+102)/* var←c25320 */  ))+8) );
      (*  (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ) ) = (word) ( *( (fPt) ((*  (ptr) pd66 ))))((*  (ptr) (* (( (ptr) &var←c27240)+13)
         /* data←v10280 */  ) ), (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+2) ), 0, 32767, pd66);
      };
SOURCE(7374, 17)
   (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+1) ) = 0;
SOURCE(7393, 22)
   (*  (hPt) (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+2) ) ) = 0;
SOURCE(7417, 26)
   (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */  ))+6) ) = 0;
   lab←L100025: ;
   goto lab←L100015;
   }

static word NoName←Q3168(formal←c0305)
   word formal←c0305;
   {
   register ptr gf←c0304 =  (ptr) &globalframe;
SOURCE(6925, 21)
   {
      word var←c0180;
      var←c0180 = (* (( (ptr) formal←c0305)+4) );
      (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c0304)+99)/* var←c24488 */  ))+8) ), (word) &var←c0180);
      };
   /* removed dead code */ 
   }

static word NoName←Q3228(formal←c0306)
   word formal←c0306;
   {
SOURCE(6436, 86)
   {
      word pd67;
      pd67 = (* (( (ptr) formal←c0306)+15) );
      (* (( (ptr) formal←c0306)+16) ) = (word) ( *( (fPt) ((*  (ptr) pd67 ))))((* ((( (ptr) formal←c0306)+14)) ), pd67);
      };
   return(0);
   }

static word IsEditCommand←P2364(char←v10468, formal←c27304)
   word char←v10468;
   word formal←c27304;
   {
   word var←c10512;
   formal←c27304 = (formal←c27304 - 44);
   /* IsEditCommand: */ 
SOURCE(5580, 171)
SOURCE(5632, 119)
   {
      word var←c25800;
      var←c25800 = char←v10468;
      switch (var←c25800) {
         case 127: case 1: case 8: case 23: case 17: 
            return(1);
         default: 
            return(0);
         };
      };
   }

static void BackChar←P2424(formal←c27336)
   word formal←c27336;
   {
   formal←c27336 = (formal←c27336 - 36);
   /* BackChar: */ 
SOURCE(5756, 76)
SOURCE(5775, 57)
   if (((*  (hPt) (* (( (ptr) (* (( (ptr) formal←c27336)+13) ))+2) ) ) > 0)) {
SOURCE(5808, 24)
      (void) UnAppendBufferChar←P780((* ((( (ptr) formal←c27336)+13)) ));
      };
   }

static void BackWord←P2484(formal←c27368)
   word formal←c27368;
   {
   word alphaSeen←v10704 = 0;
   formal←c27368 = (formal←c27368 - 28);
   /* BackWord: */ 
SOURCE(5839, 242)
SOURCE(5883, 198)
   lab←L100028: ;
   if (((*  (hPt) (* (( (ptr) (* (( (ptr) formal←c27368)+13) ))+2) ) ) != 0)) {
      }
   else {
      goto lab←L100026;
      };
SOURCE(5915, 136)
   {
      word var←c25896;
      {
         word var←c25832;
         word var←c25864;
         var←c25832 = ((*  (hPt) (* (( (ptr) (* (( (ptr) formal←c27368)+13) ))+2) ) ) - 1);
         var←c25864 = (* (( (ptr) (* (( (ptr) formal←c27368)+13) ))+2) );
         {
            word limit68;
            var←c25896 = (word) (* ((( (bPt) var←c25864)+4)+(
                  limit68 = (word) (* (( (hPt) var←c25864)+1) ),
                  BCK(var←c25832, limit68)
                  )) );
            };
         };
      if ((((var←c25896 - 65) <= 25) || ((var←c25896 - 97) <= 25)) || ((var←c25896 - 48) <= 9)) {
SOURCE(6004, 16)
         alphaSeen←v10704 = 1;
         }
      else {
SOURCE(6033, 18)
         if ((0 != alphaSeen←v10704)) {
SOURCE(6051, 4)
            goto lab←L100027;
            };
         };
      };
SOURCE(6057, 24)
   (void) UnAppendBufferChar←P780((* ((( (ptr) formal←c27368)+13)) ));
   goto lab←L100028;
   lab←L100026: ;
   lab←L100027: ;
   }

static void BackLine←P2544(formal←c27400)
   word formal←c27400;
   {
   formal←c27400 = (formal←c27400 - 20);
   /* BackLine: */ 
SOURCE(6095, 163)
SOURCE(6114, 144)
   lab←L100031: ;
   if (((*  (hPt) (* (( (ptr) (* (( (ptr) formal←c27400)+13) ))+2) ) ) != 0)) {
      }
   else {
      goto lab←L100029;
      };
   {
      word c←v10748;
SOURCE(6146, 45)
      {
         word var←c25928;
         word var←c25960;
         var←c25928 = ((*  (hPt) (* (( (ptr) (* (( (ptr) formal←c27400)+13) ))+2) ) ) - 1);
         var←c25960 = (* (( (ptr) (* (( (ptr) formal←c27400)+13) ))+2) );
         {
            word limit69;
            c←v10748 = (word) (* ((( (bPt) var←c25960)+4)+(
                  limit69 = (word) (* (( (hPt) var←c25960)+1) ),
                  BCK(var←c25928, limit69)
                  )) );
            };
         };
SOURCE(6193, 35)
      if ((c←v10748 == 13) || (c←v10748 == 10)) {
SOURCE(6228, 4)
         goto lab←L100030;
         };
SOURCE(6234, 24)
      (void) UnAppendBufferChar←P780((* ((( (ptr) formal←c27400)+13)) ));
      };
   goto lab←L100031;
   lab←L100029: ;
   lab←L100030: ;
   }

static word EditedStreamEndOf←P1080(self←v7180)
   word self←v7180;
   {
   register ptr gf←c27432 =  (ptr) &globalframe;
   word var←c7224;
   word data←v10792;
   /* EditedStreamEndOf: */ 
SOURCE(7462, 180)
SOURCE(7520, 48)
   data←v10792 = XR←Narrow((* (( (ptr) self←v7180)+1) ), (* (( (ptr) gf←c27432)+16) ));
SOURCE(7570, 72)
   {
      word tc70;
      word pd71;
      if (( (int)(* (( (ptr) data←v10792)+1) ) ==  (int)(*  (hPt) (*  (ptr) data←v10792 ) ))) {
         pd71 = (* (( (ptr) (* (( (ptr) gf←c27432)+99)/* var←c24488 */  ))+15) );
         tc70 =  (word) (0 != (word) ( *( (fPt) ((*  (ptr) pd71 ))))((* ((( (ptr) self←v7180)+3)) ), pd71));
         }
      else {
         tc70 =  (word) 0;
         };
      return(tc70);
      };
   }

static word EditedStreamCharsAvail←P1140(self←v7284, wait←v7312)
   word self←v7284;
   word wait←v7312;
   {
   register ptr gf←c27464 =  (ptr) &globalframe;
   word var←c7356;
   word data←v10836;
   /* EditedStreamCharsAvail: */ 
SOURCE(7649, 251)
SOURCE(7723, 48)
   data←v10836 = XR←Narrow((* (( (ptr) self←v7284)+1) ), (* (( (ptr) gf←c27464)+16) ));
SOURCE(7773, 82)
   if (( (int)(* (( (ptr) data←v10836)+1) ) <  (int)(*  (hPt) (*  (ptr) data←v10836 ) ))) {
SOURCE(7815, 40)
      return(((*  (hPt) (*  (ptr) data←v10836 ) ) - (* (( (ptr) data←v10836)+1) )));
      };
SOURCE(7857, 43)
   {
      word pd72;
      pd72 = (* (( (ptr) (* (( (ptr) gf←c27464)+99)/* var←c24488 */  ))+17) );
      return((word) ( *( (fPt) ((*  (ptr) pd72 ))))((* (( (ptr) self←v7284)+3) ), wait←v7312, pd72));
      };
   }

static void EditedStreamBackup←P1200(self←v7416, char←v7444)
   word self←v7416;
   word char←v7444;
   {
   register ptr gf←c27496 =  (ptr) &globalframe;
   word data←v10880;
   word var←c26056;
   word var←c26088;
   word var←c0336;
   /* EditedStreamBackup: */ 
SOURCE(7906, 237)
SOURCE(7962, 48)
   data←v10880 = XR←Narrow((* (( (ptr) self←v7416)+1) ), (* (( (ptr) gf←c27496)+16) ));
SOURCE(8012, 96)
   if (( (int)(* (( (ptr) data←v10880)+1) ) ==  (int)0)) { goto then073;};
   var←c26056 = ((* (( (ptr) data←v10880)+1) ) - 1);
   var←c26088 = (*  (ptr) data←v10880 );
   {
      word limit74;
      var←c0336 = (word) (* ((( (bPt) var←c26088)+4)+(
            limit74 = (word) (* (( (hPt) var←c26088)+1) ),
            BCK(var←c26056, limit74)
            )) );
      };
   if ((var←c0336 != char←v7444)) {
      then073: ;
SOURCE(8078, 30)
      {
         W4 var←c0203;
         (*  (ptr) (word) &var←c0203 ) = 4;
         (* (( (ptr) (word) &var←c0203) + 1) ) = self←v7416;
         (* (( (ptr) (word) &var←c0203) + 2) ) = 0;
         (* (( (ptr) (word) &var←c0203) + 3) ) = 0;
         (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c27496)+99)/* var←c24488 */  ))+5) ), (word) &var←c0203);
         };
      };
SOURCE(8110, 33)
   (* (( (ptr) data←v10880)+1) ) = ((* (( (ptr) data←v10880)+1) ) - 1);
   }

static void EditedStreamSetEcho←P1260(self←v7504, echoTo←v7532)
   word self←v7504;
   word echoTo←v7532;
   {
   register ptr gf←c27528 =  (ptr) &globalframe;
   word data←v10924;
   /* EditedStreamSetEcho: */ 
SOURCE(8149, 135)
SOURCE(8210, 48)
   data←v10924 = XR←Narrow((* (( (ptr) self←v7504)+1) ), (* (( (ptr) gf←c27528)+16) ));
SOURCE(8260, 24)
   (* (( (ptr) data←v10924)+3) ) = echoTo←v7532;
   }

static word EditedStreamGetEcho←P1320(self←v7592)
   word self←v7592;
   {
   register ptr gf←c27560 =  (ptr) &globalframe;
   word var←c7636;
   word data←v10968;
   /* EditedStreamGetEcho: */ 
SOURCE(8290, 136)
SOURCE(8352, 48)
   data←v10968 = XR←Narrow((* (( (ptr) self←v7592)+1) ), (* (( (ptr) gf←c27560)+16) ));
SOURCE(8402, 24)
   return((* (( (ptr) data←v10968)+3) ));
   }

static void EditedStreamReset←P1380(self←v7696)
   word self←v7696;
   {
   register ptr gf←c27592 =  (ptr) &globalframe;
   word data←v11012;
   /* EditedStreamReset: */ 
SOURCE(8432, 240)
SOURCE(8475, 48)
   data←v11012 = XR←Narrow((* (( (ptr) self←v7696)+1) ), (* (( (ptr) gf←c27592)+16) ));
SOURCE(8525, 22)
   (*  (hPt) (* (( (ptr) data←v11012)+2) ) ) = 0;
SOURCE(8549, 21)
   (*  (hPt) (*  (ptr) data←v11012 ) ) = 0;
SOURCE(8572, 17)
   (* (( (ptr) data←v11012)+1) ) = 0;
SOURCE(8591, 26)
   {
      word pd75;
      pd75 = (* (( (ptr) (* (( (ptr) gf←c27592)+99)/* var←c24488 */  ))+27) );
      (void) ( *( (fPt) ((*  (ptr) pd75 ))))((* ((( (ptr) self←v7696)+3)) ), pd75);
      };
SOURCE(8619, 53)
   if (((* (( (ptr) data←v11012)+3) ) != 0)) {
SOURCE(8649, 23)
      {
         word pd76;
         pd76 = (* (( (ptr) (* (( (ptr) gf←c27592)+99)/* var←c24488 */  ))+27) );
         (void) ( *( (fPt) ((*  (ptr) pd76 ))))((* ((( (ptr) data←v11012)+3)) ), pd76);
         };
      };
   }

static void SetEcho←P1440(self←v7864, echoTo←v7892)
   word self←v7864;
   word echoTo←v7892;
   {
   register ptr gf←c27624 =  (ptr) &globalframe;
   word origSelf←v11056;
   /* SetEcho: */ 
SOURCE(8818, 510)
SOURCE(8874, 23)
   origSelf←v11056 = self←v7864;
SOURCE(8899, 204)
   lab←L100034: ;
SOURCE(8899, 204)
   {
      word proc←v11100;
SOURCE(8902, 48)
      proc←v11100 = (word) InlineLookupProc←P60(self←v7864, (* (( (ptr) gf←c27624)+20) ));
SOURCE(8952, 151)
      if ((proc←v11100 != 0)) {
SOURCE(8973, 49)
         {
            word pd77;
            pd77 = (*  (ptr) XR←Narrow(proc←v11100, (* (( (ptr) gf←c27624)+12) )) );
            (void) ( *( (fPt) ((*  (ptr) pd77 ))))(self←v7864, echoTo←v7892, pd77);
            };
SOURCE(9024, 6)
         return;
         }
      else {
SOURCE(9039, 64)
         if (((* (( (ptr) self←v7864)+3) ) != 0)) {
SOURCE(9072, 31)
            self←v7864 = (* (( (ptr) self←v7864)+3) );
            }
         else {
SOURCE(9103, 4)
            goto lab←L100033;
            };
         };
      };
   goto lab←L100034;
   lab←L100033: ;
SOURCE(9118, 27)
   if ((echoTo←v7892 == 0)) {
SOURCE(9139, 6)
      return;
      };
SOURCE(9147, 140)
   {
      word var←c26120;
      {
         word var←c26152;
         word var←c26184;
         {
            word pd78;
            pd78 = (* (( (ptr) (* (( (ptr) gf←c27624)+102)/* var←c25320 */  ))+4) );
            var←c26152 = (word) ( *( (fPt) ((*  (ptr) pd78 ))))(8, pd78);
            };
         var←c26184 = XR←NewObject(8, (* (( (ptr) gf←c27624)+10) ));
         (* (( (ptr) var←c26184)+1) ) = var←c26152;
         var←c26120 = var←c26184;
         };
      {
         word pd79;
         pd79 = (* (( (ptr) (* (( (ptr) gf←c27624)+100)/* var←c24584 */  ))+24) );
         (void) ( *( (fPt) ((*  (ptr) pd79 ))))(origSelf←v11056, (* (( (ptr) gf←c27624)+5)/* setEchoProcs←v3896 */  ), var←c26120, 0, pd79)
         ;
         };
      };
SOURCE(9289, 39)
   (void) DefaultSetEchoSetEcho←P1560(origSelf←v11056, echoTo←v7892);
   }

static word GetEcho←P1500(self←v7952)
   word self←v7952;
   {
   register ptr gf←c27656 =  (ptr) &globalframe;
   word oldEcho←v7996;
   word origSelf←v11168;
   /* GetEcho: */ 
SOURCE(9335, 310)
SOURCE(9335, 310)
   oldEcho←v7996 = 0;
SOURCE(9401, 23)
   origSelf←v11168 = self←v7952;
SOURCE(9426, 192)
   lab←L100037: ;
SOURCE(9426, 192)
   {
      word proc←v11212;
SOURCE(9429, 48)
      proc←v11212 = (word) InlineLookupProc←P60(self←v7952, (* (( (ptr) gf←c27656)+25) ));
SOURCE(9479, 139)
      if ((proc←v11212 != 0)) {
SOURCE(9498, 56)
         {
            word pd80;
            pd80 = (*  (ptr) XR←Narrow(proc←v11212, (* (( (ptr) gf←c27656)+8) )) );
            return((word) ( *( (fPt) ((*  (ptr) pd80 ))))(self←v7952, pd80));
            };
         }
      else {
SOURCE(9554, 64)
         if (((* (( (ptr) self←v7952)+3) ) != 0)) {
SOURCE(9587, 31)
            self←v7952 = (* (( (ptr) self←v7952)+3) );
            }
         else {
SOURCE(9618, 4)
            goto lab←L100036;
            };
         };
      };
   goto lab←L100037;
   lab←L100036: ;
SOURCE(9633, 12)
   return(0);
   }

static void DefaultSetEchoSetEcho←P1560(self←v8056, echoTo←v8084)
   word self←v8056;
   word echoTo←v8084;
   {
   register ptr gf←c27688 =  (ptr) &globalframe;
   word data←v11280;
   /* DefaultSetEchoSetEcho: */ 
SOURCE(9651, 210)
SOURCE(9714, 43)
   data←v11280 = XR←Narrow((* (( (ptr) self←v8056)+1) ), (* (( (ptr) gf←c27688)+10) ));
SOURCE(9759, 24)
   (*  (ptr) data←v11280 ) = echoTo←v8084;
SOURCE(9785, 76)
   {
      word tc81;
      if ((echoTo←v8084 == 0)) {
         tc81 =  (word) ((*  (hPt) (* (( (ptr) data←v11280)+1) ) ) == 0);
         }
      else {
         tc81 =  (word) 0;
         };
      if (tc81) {
SOURCE(9833, 28)
         {
            word pd82;
            pd82 = (* (( (ptr) (* (( (ptr) gf←c27688)+100)/* var←c24584 */  ))+25) );
            (void) ( *( (fPt) ((*  (ptr) pd82 ))))(self←v8056, pd82);
            };
         };
      };
   }

static word DefaultSetEchoGetEcho←P1620(self←v8144)
   word self←v8144;
   {
   register ptr gf←c27720 =  (ptr) &globalframe;
   word oldEcho←v8188;
   word data←v11324;
   /* DefaultSetEchoGetEcho: */ 
SOURCE(9867, 141)
SOURCE(9867, 141)
   oldEcho←v8188 = 0;
SOURCE(9940, 43)
   data←v11324 = XR←Narrow((* (( (ptr) self←v8144)+1) ), (* (( (ptr) gf←c27720)+10) ));
SOURCE(9985, 23)
   return((*  (ptr) data←v11324 ));
   }

static void DefaultSetEchoBackup←P1680(formal←c0345, char←v8276)
   word formal←c0345;
   word char←v8276;
   {
   W8 var←c27752;
   /* declaration of self←v8248 skipped */ 
   register ptr gf←c27784 =  (ptr) &globalframe;
   word data←v11368;
   var←c27752.f4/* self←v8248 */  = formal←c0345;
   /* DefaultSetEchoBackup: */ 
SOURCE(10014, 228)
SOURCE(10072, 43)
   data←v11368 = XR←Narrow((* (( (ptr) var←c27752.f4/* self←v8248 */ )+1) ), (* (( (ptr) gf←c27784)+10) ));
SOURCE(10117, 125)
   {
      word var←c26248;
      {
         /* declaration of var←c26280 skipped */ 
         /* declaration of to←v23136 skipped */ 
         /* declaration of from←v23164 skipped */ 
         var←c27752.f6/* to←v23136 */  = (* (( (ptr) data←v11368)+1) );
         var←c27752.f7/* from←v23164 */  = char←v8276;
         {
            word var←c05;
            {
               word var←c0337;
               var←c0337 = (word) &var←c27752;
               var←c05 = (word) XR←Enable(( ((word)  (fPt) NoName←Q3288) ), ( ((word)  (fPt) NoName←Q3348) ), var←c0337);
               };
            /* removed trivial cond node */ 
            };
         var←c26248 = var←c27752.f5/* var←c26280 */ ;
         };
      (* (( (ptr) data←v11368)+1) ) = var←c26248;
      };
   }

static word NoName←Q3288(formal←c0323)
   word formal←c0323;
   {
   register ptr gf←c0322 =  (ptr) &globalframe;
   if (((*  (hPt) (* (( (ptr) formal←c0323)+6) ) ) >= (* (( (hPt) (* (( (ptr) formal←c0323)+6) ))+1) ))) {
      {
         word pd83;
         pd83 = (* (( (ptr) (* (( (ptr) gf←c0322)+102)/* var←c25320 */  ))+11) );
         (* (( (ptr) formal←c0323)+5) ) = (word) ( *( (fPt) ((*  (ptr) pd83 ))))((* (( (ptr) formal←c0323)+6) ), (* (( (ptr) formal←c0323)+7)
             ), pd83);
         };
      return(3);
      };
   {
      word idx84;
      word limit85;
      (* ((( (bPt) (* (( (ptr) formal←c0323)+6) ))+4)+(
            idx84 = (word) (*  (hPt) (* (( (ptr) formal←c0323)+6) ) ),
            limit85 = (word) (* (( (hPt) (* (( (ptr) formal←c0323)+6) ))+1) ),
            BCK(idx84, limit85)
            )) ) = (* (( (bPt) formal←c0323)+31) );
      };
   {
      word idx86;
      (*  (hPt) (* (( (ptr) formal←c0323)+6) ) ) = (
         idx86 = (word) ((*  (hPt) (* (( (ptr) formal←c0323)+6) ) ) + 1),
         BCK(idx86, 32768)
         );
      };
   (* (( (ptr) formal←c0323)+5) ) = (* (( (ptr) formal←c0323)+6) );
   return(3);
   /* c2c skipped dead code */ 
   }

static word DefaultSetEchoGetChar←P1740(self←v8336)
   word self←v8336;
   {
   register ptr gf←c27816 =  (ptr) &globalframe;
   word char←v8380;
   word data←v11412;
   /* DefaultSetEchoGetChar: */ 
SOURCE(10248, 344)
SOURCE(10316, 43)
   data←v11412 = XR←Narrow((* (( (ptr) self←v8336)+1) ), (* (( (ptr) gf←c27816)+10) ));
SOURCE(10361, 130)
   if (((*  (hPt) (* (( (ptr) data←v11412)+1) ) ) > 0)) {
SOURCE(10394, 43)
      {
         word idx87;
         (*  (hPt) (* (( (ptr) data←v11412)+1) ) ) = (
            idx87 = (word) ((*  (hPt) (* (( (ptr) data←v11412)+1) ) ) - 1),
            BCK(idx87, 32768)
            );
         };
SOURCE(10439, 38)
      {
         word var←c26376;
         var←c26376 = (* (( (ptr) data←v11412)+1) );
         {
            word idx88;
            word limit89;
            char←v8380 = (word) (* ((( (bPt) var←c26376)+4)+(
                  idx88 = (word) (*  (hPt) (* (( (ptr) data←v11412)+1) ) ),
                  limit89 = (word) (* (( (hPt) var←c26376)+1) ),
                  BCK(idx88, limit89)
                  )) );
            };
         };
SOURCE(10479, 12)
      return(char←v8380);
      };
SOURCE(10496, 35)
   {
      word pd90;
      pd90 = (* (( (ptr) (* (( (ptr) gf←c27816)+99)/* var←c24488 */  ))+11) );
      char←v8380 = (word) ( *( (fPt) ((*  (ptr) pd90 ))))((* ((( (ptr) self←v8336)+3)) ), pd90);
      };
SOURCE(10533, 59)
   if (((*  (ptr) data←v11412 ) != 0)) {
SOURCE(10563, 29)
      {
         word pd91;
         pd91 = (* (( (ptr) (* (( (ptr) gf←c27816)+99)/* var←c24488 */  ))+21) );
         (void) ( *( (fPt) ((*  (ptr) pd91 ))))((*  (ptr) data←v11412 ), char←v8380, pd91);
         };
      };
SOURCE(10248, 344)
   return(char←v8380);
   }

static word DefaultSetEchoGetBlock←P1800(self←v8440, block←v8468, startIndex←v8496, count←v8524)
   word self←v8440;
   word block←v8468;
   word startIndex←v8496;
   word count←v8524;
   {
   register ptr gf←c27848 =  (ptr) &globalframe;
   word nBytesRead←v8580;
   word data←v11456;
   /* DefaultSetEchoGetBlock: */ 
SOURCE(10598, 669)
SOURCE(10718, 43)
   data←v11456 = XR←Narrow((* (( (ptr) self←v8440)+1) ), (* (( (ptr) gf←c27848)+10) ));
SOURCE(10763, 14)
   nBytesRead←v8580 = 0;
SOURCE(10779, 277)
   lab←L100043: ;
   if (((*  (hPt) (* (( (ptr) data←v11456)+1) ) ) > 0)) {
      }
   else {
      goto lab←L100041;
      };
SOURCE(10811, 70)
   if ((count←v8524 == 0)) { goto then092;};
   if ((startIndex←v8496 >= (* (( (hPt) block←v8468)+1) ))) {
      then092: ;
SOURCE(10862, 19)
      return(nBytesRead←v8580);
      };
SOURCE(10883, 43)
   {
      word idx93;
      (*  (hPt) (* (( (ptr) data←v11456)+1) ) ) = (
         idx93 = (word) ((*  (hPt) (* (( (ptr) data←v11456)+1) ) ) - 1),
         BCK(idx93, 32768)
         );
      };
SOURCE(10928, 51)
   {
      word var←c26408;
      var←c26408 = (* (( (ptr) data←v11456)+1) );
      {
         word limit94;
         word idx95;
         word limit96;
         (* ((( (bPt) block←v8468)+4)+(
               limit94 = (word) (* (( (hPt) block←v8468)+1) ),
               BCK(startIndex←v8496, limit94)
               )) ) = (word) (* ((( (bPt) var←c26408)+4)+(
               idx95 = (word) (*  (hPt) (* (( (ptr) data←v11456)+1) ) ),
               limit96 = (word) (* (( (hPt) var←c26408)+1) ),
               BCK(idx95, limit96)
               )) );
         };
      };
SOURCE(10981, 27)
   startIndex←v8496 = (startIndex←v8496 + 1);
SOURCE(11010, 17)
   count←v8524 = SGNCK((count←v8524 - 1));
SOURCE(11029, 27)
   nBytesRead←v8580 = (nBytesRead←v8580 + 1);
   goto lab←L100043;
   lab←L100041: ;
SOURCE(11067, 79)
   {
      word pd97;
      word idx98;
      pd97 = (* (( (ptr) (* (( (ptr) gf←c27848)+99)/* var←c24488 */  ))+13) );
      nBytesRead←v8580 = (
         idx98 = (word) (nBytesRead←v8580 + (word) ( *( (fPt) ((*  (ptr) pd97 ))))((* (( (ptr) self←v8440)+3) ), block←v8468, startIndex←v8496, count←v8524, pd97)
         ),
         SGNCK(idx98)
         );
      };
SOURCE(11148, 98)
   if (((*  (ptr) data←v11456 ) != 0)) {
SOURCE(11178, 68)
      {
         word pd99;
         pd99 = (* (( (ptr) (* (( (ptr) gf←c27848)+99)/* var←c24488 */  ))+23) );
         (void) ( *( (fPt) ((*  (ptr) pd99 ))))((*  (ptr) data←v11456 ), block←v8468, startIndex←v8496, ((*  (hPt) block←v8468 ) - startIndex←v8496), pd99)
         ;
         };
      };
SOURCE(11248, 19)
   return(nBytesRead←v8580);
   }

static word DefaultSetEchoUnsafeGetBlock←P1860(self←v8640, block←v8668)
   word self←v8640;
   W3 block←v8668;
   {
   register ptr gf←c27880 =  (ptr) &globalframe;
   word nBytesRead←v8712;
   word data←v11500;
   /* DefaultSetEchoUnsafeGetBlock: */ 
SOURCE(11273, 962)
SOURCE(11273, 962)
   nBytesRead←v8712 = 0;
SOURCE(11397, 43)
   data←v11500 = XR←Narrow((* (( (ptr) self←v8640)+1) ), (* (( (ptr) gf←c27880)+10) ));
SOURCE(11442, 253)
   if (((*  (hPt) (* (( (ptr) data←v11500)+1) ) ) > (2147483647 - block←v8668.f1))) {
SOURCE(11547, 150)
      {
         word offset←v11544;
SOURCE(11549, 50)
         offset←v11544 = IOP2( / ,  (int)block←v8668.f1,  (int)4);
SOURCE(11601, 30)
         block←v8668.f0 = (block←v8668.f0 + offset←v11544);
SOURCE(11633, 62)
         block←v8668.f1 = (block←v8668.f1 - IOP2( * ,  (int)offset←v11544,  (int)4));
         };
      };
SOURCE(11738, 328)
   lab←L100046: ;
   if (((*  (hPt) (* (( (ptr) data←v11500)+1) ) ) > 0)) {
      }
   else {
      goto lab←L100044;
      };
SOURCE(11770, 43)
   if (( (int)block←v8668.f2 ==  (int)0)) {
SOURCE(11794, 19)
      return(nBytesRead←v8712);
      };
SOURCE(11815, 43)
   {
      word idx100;
      (*  (hPt) (* (( (ptr) data←v11500)+1) ) ) = (
         idx100 = (word) ((*  (hPt) (* (( (ptr) data←v11500)+1) ) ) - 1),
         BCK(idx100, 32768)
         );
      };
SOURCE(11860, 105)
   {
      word var←c26440;
      var←c26440 = (* (( (ptr) data←v11500)+1) );
      {
         word idx101;
         word limit102;
         (* (( (bPt) block←v8668.f0)+block←v8668.f1) ) = (word) (* ((( (bPt) var←c26440)+4)+(
               idx101 = (word) (*  (hPt) (* (( (ptr) data←v11500)+1) ) ),
               limit102 = (word) (* (( (hPt) var←c26440)+1) ),
               BCK(idx101, limit102)
               )) );
         };
      };
SOURCE(11967, 39)
   block←v8668.f1 = (block←v8668.f1 + 1);
SOURCE(12008, 29)
   block←v8668.f2 = (block←v8668.f2 - 1);
SOURCE(12039, 27)
   nBytesRead←v8712 = (nBytesRead←v8712 + 1);
   goto lab←L100046;
   lab←L100044: ;
SOURCE(12077, 54)
   {
      word pd103;
      pd103 = (* (( (ptr) (* (( (ptr) gf←c27880)+99)/* var←c24488 */  ))+14) );
      block←v8668.f2 = (word) ( *( (fPt) ((*  (ptr) pd103 ))))((* (( (ptr) self←v8640)+3) ), block←v8668, pd103);
      };
SOURCE(12133, 67)
   if (((*  (ptr) data←v11500 ) != 0)) {
SOURCE(12163, 37)
      {
         word pd104;
         pd104 = (* (( (ptr) (* (( (ptr) gf←c27880)+99)/* var←c24488 */  ))+24) );
         (void) ( *( (fPt) ((*  (ptr) pd104 ))))((*  (ptr) data←v11500 ), block←v8668, pd104);
         };
      };
SOURCE(12202, 33)
   return((nBytesRead←v8712 + block←v8668.f2));
   }

static word DefaultSetEchoEndOf←P1920(self←v8772)
   word self←v8772;
   {
   register ptr gf←c27912 =  (ptr) &globalframe;
   word var←c8816;
   word data←v11600;
   /* DefaultSetEchoEndOf: */ 
SOURCE(12241, 167)
SOURCE(12302, 43)
   data←v11600 = XR←Narrow((* (( (ptr) self←v8772)+1) ), (* (( (ptr) gf←c27912)+10) ));
SOURCE(12347, 61)
   {
      word tc105;
      word pd106;
      if (((*  (hPt) (* (( (ptr) data←v11600)+1) ) ) == 0)) {
         pd106 = (* (( (ptr) (* (( (ptr) gf←c27912)+99)/* var←c24488 */  ))+15) );
         tc105 =  (word) (0 != (word) ( *( (fPt) ((*  (ptr) pd106 ))))((* ((( (ptr) self←v8772)+3)) ), pd106));
         }
      else {
         tc105 =  (word) 0;
         };
      return(tc105);
      };
   }

static word DefaultSetEchoCharsAvail←P1980(self←v8876, wait←v8904)
   word self←v8876;
   word wait←v8904;
   {
   register ptr gf←c27944 =  (ptr) &globalframe;
   word var←c8948;
   word data←v11644;
   /* DefaultSetEchoCharsAvail: */ 
SOURCE(12414, 224)
SOURCE(12490, 43)
   data←v11644 = XR←Narrow((* (( (ptr) self←v8876)+1) ), (* (( (ptr) gf←c27944)+10) ));
SOURCE(12535, 58)
   if (((*  (hPt) (* (( (ptr) data←v11644)+1) ) ) > 0)) {
SOURCE(12566, 27)
      return((*  (hPt) (* (( (ptr) data←v11644)+1) ) ));
      };
SOURCE(12595, 43)
   {
      word pd107;
      pd107 = (* (( (ptr) (* (( (ptr) gf←c27944)+99)/* var←c24488 */  ))+17) );
      return((word) ( *( (fPt) ((*  (ptr) pd107 ))))((* (( (ptr) self←v8876)+3) ), wait←v8904, pd107));
      };
   }

static void DefaultSetEchoReset←P2040(self←v9008)
   word self←v9008;
   {
   register ptr gf←c27976 =  (ptr) &globalframe;
   word data←v11688;
   /* DefaultSetEchoReset: */ 
SOURCE(12644, 141)
SOURCE(12690, 43)
   data←v11688 = XR←Narrow((* (( (ptr) self←v9008)+1) ), (* (( (ptr) gf←c27976)+10) ));
SOURCE(12735, 22)
   (*  (hPt) (* (( (ptr) data←v11688)+1) ) ) = 0;
SOURCE(12759, 26)
   {
      word pd108;
      pd108 = (* (( (ptr) (* (( (ptr) gf←c27976)+99)/* var←c24488 */  ))+27) );
      (void) ( *( (fPt) ((*  (ptr) pd108 ))))((* ((( (ptr) self←v9008)+3)) ), pd108);
      };
   }

static word AddStreamProcs←P2100(to←v9068, setEcho←v9096, getEcho←v9124)
   word to←v9068;
   word setEcho←v9096;
   word getEcho←v9124;
   {
   register ptr gf←c28008 =  (ptr) &globalframe;
   word var←c9372;
   /* AddStreamProcs: */ 
SOURCE(12791, 371)
SOURCE(12981, 83)
   if ((setEcho←v9096 != 0)) {
SOURCE(13003, 61)
      {
         word var←c26536;
         {
            word var←c26568;
            var←c26568 = XR←NewObject(4, (* (( (ptr) gf←c28008)+12) ));
            (*  (ptr) var←c26568 ) = XR←CheckProc(setEcho←v9096);
            var←c26536 = var←c26568;
            };
         {
            word pd109;
            pd109 = (* (( (ptr) (* (( (ptr) gf←c28008)+100)/* var←c24584 */  ))+29) );
            (void) ( *( (fPt) ((*  (ptr) pd109 ))))(to←v9068, (* (( (ptr) gf←c28008)+20) ), var←c26536, pd109);
            };
         };
      };
SOURCE(13066, 83)
   if ((getEcho←v9124 != 0)) {
SOURCE(13088, 61)
      {
         word var←c26600;
         {
            word var←c26632;
            var←c26632 = XR←NewObject(4, (* (( (ptr) gf←c28008)+8) ));
            (*  (ptr) var←c26632 ) = XR←CheckProc(getEcho←v9124);
            var←c26600 = var←c26632;
            };
         {
            word pd110;
            pd110 = (* (( (ptr) (* (( (ptr) gf←c28008)+100)/* var←c24584 */  ))+29) );
            (void) ( *( (fPt) ((*  (ptr) pd110 ))))(to←v9068, (* (( (ptr) gf←c28008)+25) ), var←c26600, pd110);
            };
         };
      };
SOURCE(13151, 11)
   return(to←v9068);
   }

static void NoName←Q3348(formal←c0275, formal←c200008, formal←c200009, formal←c200010, formal←c200011)
   word formal←c0275;
   word formal←c200008;
   word formal←c200009;
   word formal←c200010;
   word formal←c200011;
   {
   register ptr gf←c0331 =  (ptr) &globalframe;
   if ((formal←c200009 == (* (( (ptr) (* (( (ptr) gf←c0331)+103)/* var←c26312 */  ))+8) ))) {
SOURCE(10204, 38)
      {
         W4 var←c0274;
         (*  (ptr) (word) &var←c0274 ) = 5;
         (* (( (ptr) (word) &var←c0274) + 1) ) = (* (( (ptr) formal←c200008)+4) );
         (* (( (ptr) (word) &var←c0274) + 2) ) = 0;
         (* (( (ptr) (word) &var←c0274) + 3) ) = 0;
         (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c0331)+99)/* var←c24488 */  ))+5) ), (word) &var←c0274);
         };
      };
   (*  (ptr) formal←c0275 ) = 0;
   (* (( (ptr) formal←c0275)+1) ) = 0;
   return;
   }

static void NoName←Q3408(formal←c0280, formal←c200004, formal←c200005, formal←c200006, formal←c200007)
   word formal←c0280;
   word formal←c200004;
   word formal←c200005;
   word formal←c200006;
   word formal←c200007;
   {
   if ((formal←c200005 == XR←Unwind)) {
SOURCE(6901, 22)
      (*  (hPt) (* (( (ptr) (* (( (ptr) formal←c200004)+13) ))+2) ) ) = 0;
      };
   (*  (ptr) formal←c0280 ) = 0;
   (* (( (ptr) formal←c0280)+1) ) = 0;
   return;
   }

static void NoName←Q3468(formal←c0286, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
   word formal←c0286;
   word formal←c200000;
   word formal←c200001;
   word formal←c200002;
   word formal←c200003;
   {
   register ptr gf←c0332 =  (ptr) &globalframe;
   if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0332)+99)/* var←c24488 */  ))+4) ))) {
      {
         word stream←v20004;
         stream←v20004 = (*  (ptr) formal←c200003 );
SOURCE(6491, 31)
         if (((*  (hPt) (* (( (ptr) (* (( (ptr) formal←c200000)+13) ))+2) ) ) == 0)) {
            /* removed tail goto */ 
            }
         else {
SOURCE(6534, 20)
            (*  (ptr) formal←c0286 ) = 2;
            (* (( (ptr) formal←c0286)+1) ) = 2;
            return;
            };
         };
      };
   (*  (ptr) formal←c0286 ) = 0;
   (* (( (ptr) formal←c0286)+1) ) = 0;
   return;
   }

/* file: IOEditedStreamImpl, module: IOEditedStreamImpl, compiled at: February 21, 1992 9:35:33 pm PST */ 
extern void XR←install←IOEditedStreamImpl() {
   NoName←Q3108();
   }
extern void XR←run←IOEditedStreamImpl() { XR←Start(&globalframe); }