diff --git a/internal/envos/unixmail.tedit b/internal/envos/unixmail.tedit
index d0edeeb2..709c98f1 100644
Binary files a/internal/envos/unixmail.tedit and b/internal/envos/unixmail.tedit differ
diff --git a/library/GRAPHER b/library/GRAPHER
index 6a3331bf..4ec08f14 100644
--- a/library/GRAPHER
+++ b/library/GRAPHER
@@ -1,21 +1,18 @@
-(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
-(FILECREATED "14-Mar-2021 20:40:30" 
-{DSK}<Users>kaplan>Local>medley3.5>git-medley>library>GRAPHER.;5 214171 
+(DEFINE-FILE-INFO :PACKAGE "INTERLISP" :READTABLE "INTERLISP" :BASE 10)
 
-      changes to%:  (VARS GRAPHERCOMS)
+(FILECREATED "14-Apr-2026 22:19:19" {DSK}<home>frank>il>medley>library>GRAPHER.;3 215302 
 
-      previous date%: "14-May-2018 10:24:38" 
-{DSK}<Users>kaplan>Local>medley3.5>git-medley>library>GRAPHER.;4)
+      :EDIT-BY "FGH"
 
+      :CHANGES-TO (FNS DISPLAYLINK/RL DISPLAYLINK/LR DISPLAYLINK/BT DISPLAYLINK/TB)
+
+      :PREVIOUS-DATE "14-Mar-2021 20:40:30" {DSK}<home>frank>il>medley>library>GRAPHER.;1)
 
-(* ; "
-Copyright (c) 1983-1994, 2018, 2021 by Venue & Xerox Corporation.
-")
 
 (PRETTYCOMPRINT GRAPHERCOMS)
 
 (RPAQQ GRAPHERCOMS
-       [(COMS                                                (* ; "Graph Editing")
+       [(COMS                                                (* ; "Graph Editing")
               (FNS ADD/AND/DISPLAY/LINK APPLYTOSELECTEDNODE CALL.MOVENODEFN CHANGE.NODEFONT.SIZE 
                    DEFAULT.ADDNODEFN DELETE/AND/DISPLAY/LINK DISPLAY/NAME DISPLAYGRAPH DISPLAYLINK 
                    DISPLAYLINK/BT DISPLAYLINK/LR DISPLAYLINK/RL DISPLAYLINK/TB DISPLAYNODE 
@@ -38,18 +35,18 @@ Copyright (c) 1983-1994, 2018, 2021 by Venue & Xerox Corporation.
                  (CL:WHEN (GETD 'MODERNWINDOW.SETUP)
                      (MODERNWINDOW.SETUP 'APPLYTOSELECTEDNODE))]
               
-              (* ;; "Support for EDITSUBGRAPH and EDITREGION")
+              (* ;; "Support for EDITSUBGRAPH and EDITREGION")
 
               (FNS EDITMOVEREGION EDITMOVESUBTREE NOT.TRACKCURSOR RECURSIVE.COLLECTDESCENDENTS 
                    MOVEDESCENDENTS COLLECT.CHILD.NODES CREATE.NEW.NODEPOSITION 
                    GETBOXPOSITION.FROMINITIALREGION COLLECTDESCENDENTS))
-        (COMS                                                (* ; 
-                                                   "functions for finding larger and smaller fonts")
+        (COMS                                                (* ; 
+                                                     "functions for finding larger and smaller fonts")
               (FNS NEXTSIZEFONT DECREASING.FONT.LIST SCALE.FONT)
               [DECLARE%: DONTEVAL@LOAD DOCOPY (VARS (DECREASING.FONT.LIST (DECREASING.FONT.LIST]
               (GLOBALVARS DECREASING.FONT.LIST))
-                                                             (* ; 
-                                                      "functions for LAYOUTGRAPH And LAYOUTLATTICE")
+                                                             (* ; 
+                                                        "functions for LAYOUTGRAPH And LAYOUTLATTICE")
         (FNS BRH/LAYOUT BRH/LAYOUT/DAUGHTERS BRH/OFFSET BRHC/INTERTREE/SPACE BRHC/LAYOUT 
              BRHC/LAYOUT/DAUGHTERS BRHC/LAYOUT/TERMINAL BRHC/OFFSET BRHL/LAYOUT BRHL/LAYOUT/DAUGHTERS
              BRHL/MOVE/RIGHT BROWSE/LAYOUT/HORIZ BROWSE/LAYOUT/HORIZ/COMPACTLY BROWSE/LAYOUT/LATTICE
@@ -95,7 +92,7 @@ Copyright (c) 1983-1994, 2018, 2021 by Venue & Xerox Corporation.
         (LOCALVARS . T)
         (RECORDS GRAPHNODE GRAPH)
         (DECLARE%: DONTCOPY (MACROS HALF))
-        (COMS                                                (* ; "Grapher image objects")
+        (COMS                                                (* ; "Grapher image objects")
               (FNS GRAPHERIMAGEFNS)
               (FNS GRAPHERCOPYBUTTONEVENTFN GRAPHOBJ.FINDGRAPH)
               (FNS ALIGNMENTNODE GRAPHOBJ.CHECKALIGN)
@@ -303,96 +300,112 @@ Copyright (c) 1983-1994, 2018, 2021 by Venue & Xerox Corporation.
                 NIL])
 
 (DISPLAYLINK/BT
-  [LAMBDA (TRANS GNB GNT WIDTH OPERATION STREAM PARAMS)
+  [LAMBDA (TRANS GNB GNT WIDTH OPERATION STREAM PARAMS)      (* ; "Edited 14-Apr-2026 22:08 by FGH")
                                                           (* ; "Edited 29-Apr-94 13:59 by sybalsky")
 
-         (* draws a line from the bottom edge of GNB to the top edge of GNT translated 
-       by TRANS)
+         (* draws a line from the bottom edge of GNB to the top edge of GNT translated by 
+         TRANS)
 
-    (APPLY* (OR (LISTGET PARAMS 'DRAWLINKFN)
-                'DRAWLINE)
-           (IPLUS (fetch XCOORD of TRANS)
-                  (fetch XCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNB)))
-           (IPLUS (fetch YCOORD of TRANS)
-                  (SUB1 (GN/BOTTOM GNB)))
-           (IPLUS (fetch XCOORD of TRANS)
-                  (fetch XCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNT)))
-           (IPLUS (fetch YCOORD of TRANS)
-                  (ADD1 (GN/TOP GNT)))
-           (OR (LISTGET PARAMS 'LINEWIDTH)
-               WIDTH 1)
-           OPERATION STREAM (LISTGET PARAMS 'COLOR)
-           (LISTGET PARAMS 'DASHING)
-           PARAMS])
+    (LET* [(FN (LISTGET PARAMS 'DRAWLINKFN))
+           (DFN (AND FN (GETD FN]
+          (if (AND FN (NOT DFN))
+              then (PROMPTPRINT (CONCAT "DISPLAYLINK: DRAWLINKFN " FN " NOT FOUND")))
+          (APPLY* (OR (AND DFN FN)
+                      'DRAWLINE)
+                 (IPLUS (fetch XCOORD of TRANS)
+                        (fetch XCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNB)))
+                 (IPLUS (fetch YCOORD of TRANS)
+                        (SUB1 (GN/BOTTOM GNB)))
+                 (IPLUS (fetch XCOORD of TRANS)
+                        (fetch XCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNT)))
+                 (IPLUS (fetch YCOORD of TRANS)
+                        (ADD1 (GN/TOP GNT)))
+                 (OR (LISTGET PARAMS 'LINEWIDTH)
+                     WIDTH 1)
+                 OPERATION STREAM (LISTGET PARAMS 'COLOR)
+                 (LISTGET PARAMS 'DASHING)
+                 PARAMS])
 
 (DISPLAYLINK/LR
-  [LAMBDA (TRANS GNL GNR WIDTH OPERATION STREAM PARAMS)
+  [LAMBDA (TRANS GNL GNR WIDTH OPERATION STREAM PARAMS)      (* ; "Edited 14-Apr-2026 22:09 by FGH")
                                                           (* ; "Edited 29-Apr-94 13:59 by sybalsky")
 
-         (* draws a line from the left edge of GNL to the right edge of GNR, translated 
-       by TRANS)
+         (* draws a line from the left edge of GNL to the right edge of GNR, translated by 
+         TRANS)
 
-    (APPLY* (OR (LISTGET PARAMS 'DRAWLINKFN)
-                'DRAWLINE)
-           (IPLUS (fetch XCOORD of TRANS)
-                  (SUB1 (GN/LEFT GNL)))
-           (IPLUS (fetch YCOORD of TRANS)
-                  (fetch YCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNL)))
-           (IPLUS (fetch XCOORD of TRANS)
-                  (ADD1 (GN/RIGHT GNR)))
-           (IPLUS (fetch YCOORD of TRANS)
-                  (fetch YCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNR)))
-           (OR (LISTGET PARAMS 'LINEWIDTH)
-               WIDTH 1)
-           OPERATION STREAM (LISTGET PARAMS 'COLOR)
-           (LISTGET PARAMS 'DASHING)
-           PARAMS])
+    (LET* [(FN (LISTGET PARAMS 'DRAWLINKFN))
+           (DFN (AND FN (GETD FN]
+          (if (AND FN (NOT DFN))
+              then (PROMPTPRINT (CONCAT "DISPLAYLINK: DRAWLINKFN " FN " NOT FOUND")))
+          (APPLY* (OR (AND DFN FN)
+                      'DRAWLINE)
+                 (IPLUS (fetch XCOORD of TRANS)
+                        (SUB1 (GN/LEFT GNL)))
+                 (IPLUS (fetch YCOORD of TRANS)
+                        (fetch YCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNL)))
+                 (IPLUS (fetch XCOORD of TRANS)
+                        (ADD1 (GN/RIGHT GNR)))
+                 (IPLUS (fetch YCOORD of TRANS)
+                        (fetch YCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNR)))
+                 (OR (LISTGET PARAMS 'LINEWIDTH)
+                     WIDTH 1)
+                 OPERATION STREAM (LISTGET PARAMS 'COLOR)
+                 (LISTGET PARAMS 'DASHING)
+                 PARAMS])
 
 (DISPLAYLINK/RL
-  [LAMBDA (TRANS GNR GNL WIDTH OPERATION STREAM PARAMS)
+  [LAMBDA (TRANS GNR GNL WIDTH OPERATION STREAM PARAMS)      (* ; "Edited 14-Apr-2026 22:09 by FGH")
                                                           (* ; "Edited 29-Apr-94 13:59 by sybalsky")
 
-         (* draws a line from the right edge of GNR, to the left edge of GNL translated 
-       by TRANS)
+         (* draws a line from the right edge of GNR, to the left edge of GNL translated by 
+         TRANS)
 
-    (APPLY* (OR (LISTGET PARAMS 'DRAWLINKFN)
-                'DRAWLINE)
-           (IPLUS (fetch XCOORD of TRANS)
-                  (ADD1 (GN/RIGHT GNR)))
-           (IPLUS (fetch YCOORD of TRANS)
-                  (fetch YCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNR)))
-           (IPLUS (fetch XCOORD of TRANS)
-                  (SUB1 (GN/LEFT GNL)))
-           (IPLUS (fetch YCOORD of TRANS)
-                  (fetch YCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNL)))
-           (OR (LISTGET PARAMS 'LINEWIDTH)
-               WIDTH 1)
-           OPERATION STREAM (LISTGET PARAMS 'COLOR)
-           (LISTGET PARAMS 'DASHING)
-           PARAMS])
+    (LET* [(FN (LISTGET PARAMS 'DRAWLINKFN))
+           (DFN (AND FN (GETD FN]
+          (if (AND FN (NOT DFN))
+              then (PROMPTPRINT (CONCAT "DISPLAYLINK: DRAWLINKFN " FN " NOT FOUND")))
+          (APPLY* (OR (AND DFN FN)
+                      'DRAWLINE)
+                 (IPLUS (fetch XCOORD of TRANS)
+                        (ADD1 (GN/RIGHT GNR)))
+                 (IPLUS (fetch YCOORD of TRANS)
+                        (fetch YCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNR)))
+                 (IPLUS (fetch XCOORD of TRANS)
+                        (SUB1 (GN/LEFT GNL)))
+                 (IPLUS (fetch YCOORD of TRANS)
+                        (fetch YCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNL)))
+                 (OR (LISTGET PARAMS 'LINEWIDTH)
+                     WIDTH 1)
+                 OPERATION STREAM (LISTGET PARAMS 'COLOR)
+                 (LISTGET PARAMS 'DASHING)
+                 PARAMS])
 
 (DISPLAYLINK/TB
-  [LAMBDA (TRANS GNT GNB WIDTH OPERATION STREAM PARAMS)
+  [LAMBDA (TRANS GNT GNB WIDTH OPERATION STREAM PARAMS)      (* ; "Edited 14-Apr-2026 22:09 by FGH")
                                                           (* ; "Edited 29-Apr-94 13:59 by sybalsky")
 
-         (* draws a line from the top edge of GNT to the bottom edge of GNR, translated 
-       by TRANS)
+         (* draws a line from the top edge of GNT to the bottom edge of GNR, translated by 
+         TRANS)
 
-    (APPLY* (OR (LISTGET PARAMS 'DRAWLINKFN)
-                'DRAWLINE)
-           (IPLUS (fetch XCOORD of TRANS)
-                  (fetch XCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNT)))
-           (IPLUS (fetch YCOORD of TRANS)
-                  (ADD1 (GN/TOP GNT)))
-           (IPLUS (fetch XCOORD of TRANS)
-                  (fetch XCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNB)))
-           (IPLUS (fetch YCOORD of TRANS)
-                  (SUB1 (GN/BOTTOM GNB)))
-           (OR (LISTGET PARAMS 'LINEWIDTH)
-               WIDTH 1)
-           OPERATION STREAM (LISTGET PARAMS 'COLOR)
-           (LISTGET PARAMS 'DASHING)
-           PARAMS])
+    (LET* [(FN (LISTGET PARAMS 'DRAWLINKFN))
+           (DFN (AND FN (GETD FN]
+          (if (AND FN (NOT DFN))
+              then (PROMPTPRINT (CONCAT "DISPLAYLINK: DRAWLINKFN " FN " NOT FOUND")))
+          (APPLY* (OR (AND DFN FN)
+                      'DRAWLINE)
+                 (IPLUS (fetch XCOORD of TRANS)
+                        (fetch XCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNT)))
+                 (IPLUS (fetch YCOORD of TRANS)
+                        (ADD1 (GN/TOP GNT)))
+                 (IPLUS (fetch XCOORD of TRANS)
+                        (fetch XCOORD of (fetch (GRAPHNODE NODEPOSITION) of GNB)))
+                 (IPLUS (fetch YCOORD of TRANS)
+                        (SUB1 (GN/BOTTOM GNB)))
+                 (OR (LISTGET PARAMS 'LINEWIDTH)
+                     WIDTH 1)
+                 OPERATION STREAM (LISTGET PARAMS 'COLOR)
+                 (LISTGET PARAMS 'DASHING)
+                 PARAMS])
 
 (DISPLAYNODE
   [LAMBDA (NODE TRANS STREAM G TOSONLY)                  (* kvl "10-Aug-84 19:08")
@@ -2014,7 +2027,7 @@ Copyright (c) 1983-1994, 2018, 2021 by Venue & Xerox Corporation.
                                                                                 of N])
 )
 
-                                                             (* Was MODERNIZE loaded before?)
+                                                             (* Was MODERNIZE loaded before?)
 
 (CL:WHEN (GETD 'MODERNWINDOW.SETUP)
     (MODERNWINDOW.SETUP 'APPLYTOSELECTEDNODE))
@@ -3075,7 +3088,7 @@ Copyright (c) 1983-1994, 2018, 2021 by Venue & Xerox Corporation.
 (RPAQQ GRAPH/HARDCOPY/FORMAT (MODE PORTRAIT PAGENUMBERS T TRANS NIL))
 
 (RPAQ? DEFAULT.GRAPH.WINDOWSIZE (LIST (TIMES SCREENWIDTH 0.7)
-                                          (TIMES SCREENHEIGHT 0.4)))
+                                      (TIMES SCREENHEIGHT 0.4)))
 
 (RPAQ? EDITGRAPHMENUCOMMANDS
        '((Move% Node 'MOVENODE "Moves a single node in the graph." (SUBITEMS (|Move Single Node|
@@ -3113,19 +3126,19 @@ Copyright (c) 1983-1994, 2018, 2021 by Venue & Xerox Corporation.
 (DECLARE%: EVAL@COMPILE
 
 (RECORD GRAPHNODE (NODEID NODEPOSITION NODELABELBITMAP NIL NODELABELSHADE NODEWIDTH NODEHEIGHT 
-                             TONODES FROMNODES NODEFONT NODELABEL NODEBORDER)
-                      NODEBORDER _ DEFAULT.GRAPH.NODEBORDER NODELABELSHADE _ 
-                      DEFAULT.GRAPH.NODELABELSHADE NODEFONT _ DEFAULT.GRAPH.NODEFONT)
+                         TONODES FROMNODES NODEFONT NODELABEL NODEBORDER)
+                  NODEBORDER _ DEFAULT.GRAPH.NODEBORDER NODELABELSHADE _ DEFAULT.GRAPH.NODELABELSHADE
+                  NODEFONT _ DEFAULT.GRAPH.NODEFONT)
 
-(RECORD GRAPH (GRAPHNODES SIDESFLG DIRECTEDFLG GRAPH.MOVENODEFN GRAPH.ADDNODEFN 
-                         GRAPH.DELETENODEFN GRAPH.ADDLINKFN GRAPH.DELETELINKFN GRAPH.FONTCHANGEFN 
-                         GRAPH.INVERTBORDERFN GRAPH.INVERTLABELFN GRAPH.CHANGELABELFN . GRAPH.PROPS))
+(RECORD GRAPH (GRAPHNODES SIDESFLG DIRECTEDFLG GRAPH.MOVENODEFN GRAPH.ADDNODEFN GRAPH.DELETENODEFN 
+                     GRAPH.ADDLINKFN GRAPH.DELETELINKFN GRAPH.FONTCHANGEFN GRAPH.INVERTBORDERFN 
+                     GRAPH.INVERTLABELFN GRAPH.CHANGELABELFN . GRAPH.PROPS))
 )
 (DECLARE%: DONTCOPY 
 (DECLARE%: EVAL@COMPILE 
 
 (PUTPROPS HALF MACRO ((X)
-                              (LRSH X 1)))
+                      (LRSH X 1)))
 )
 )
 
@@ -3789,61 +3802,59 @@ Copyright (c) 1983-1994, 2018, 2021 by Venue & Xerox Corporation.
 )
 
 (ADDTOVAR IMAGEOBJGETFNS (GRAPHOBJ.GETFN))
-(PUTPROPS GRAPHER COPYRIGHT ("Venue & Xerox Corporation" 1983 1984 1985 1986 1987 1988 1989 1990 1991 
-1992 1993 1994 2018 2021))
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (7195 111244 (ADD/AND/DISPLAY/LINK 7205 . 7907) (APPLYTOSELECTEDNODE 7909 . 8397) (
-CALL.MOVENODEFN 8399 . 8748) (CHANGE.NODEFONT.SIZE 8750 . 10062) (DEFAULT.ADDNODEFN 10064 . 10862) (
-DELETE/AND/DISPLAY/LINK 10864 . 12431) (DISPLAY/NAME 12433 . 12604) (DISPLAYGRAPH 12606 . 14977) (
-DISPLAYLINK 14979 . 17532) (DISPLAYLINK/BT 17534 . 18556) (DISPLAYLINK/LR 18558 . 19581) (
-DISPLAYLINK/RL 19583 . 20606) (DISPLAYLINK/TB 20608 . 21631) (DISPLAYNODE 21633 . 21981) (
-ERASE/GRAPHNODE 21983 . 23090) (DISPLAYNODE 23092 . 23440) (DISPLAYNODELINKS 23442 . 24586) (
-DRAW/GRAPHNODE/BORDER 24588 . 25507) (DRAWAREABOX 25509 . 26710) (EDITADDLINK 26712 . 27110) (
-EDITADDNODE 27112 . 29201) (EDITAPPLYTOLINK 29203 . 31282) (EDITCHANGEFONT 31284 . 32456) (
-EDITCHANGELABEL 32458 . 33999) (EDITDELETELINK 34001 . 34407) (EDITDELETENODE 34409 . 37110) (
-EDITGRAPH 37112 . 37179) (EDITGRAPH1 37181 . 37939) (EDITGRAPH2 37941 . 39672) (EDITMOVENODE 39674 . 
-41251) (EDITTOGGLEBORDER 41253 . 42549) (EDITTOGGLELABEL 42551 . 43848) (FILL/GRAPHNODE/LABEL 43850 . 
-44678) (FIX/SCALE 44680 . 45236) (FLIPNODE 45238 . 45842) (FONTNAMELIST 45844 . 46063) (FROMLINKS 
-46065 . 46235) (GETNODEFROMID 46237 . 47256) (GN/BOTTOM 47258 . 47534) (GN/LEFT 47536 . 47809) (
-GN/RIGHT 47811 . 48202) (GN/TOP 48204 . 48628) (GRAPHADDLINK 48630 . 49189) (GRAPHADDNODE 49191 . 
-49980) (GRAPHBUTTONEVENTFN 49982 . 52162) (GRAPHCHANGELABEL 52164 . 52607) (GRAPHDELETELINK 52609 . 
-53917) (GRAPHDELETENODE 53919 . 54451) (GRAPHEDITCOMMANDFN 54453 . 55837) (GRAPHEDITEVENTFN 55839 . 
-56550) (GRAPHER/CENTERPRINTINAREA 56552 . 57316) (GRAPHERPROP 57318 . 57862) (GRAPHNODE/BORDER/WIDTH 
-57864 . 58385) (GRAPHREGION 58387 . 59556) (HARDCOPYGRAPH 59558 . 66940) (INTERSECT/REGIONP/LBWH 66942
- . 68218) (INVERTED/GRAPHNODE/BORDER 68220 . 68804) (INVERTED/SHADE/FOR/GRAPHER 68806 . 69438) (
-LAYOUT/POSITION 69440 . 69619) (LINKPARAMETERS 69621 . 70073) (MAX/RIGHT 70075 . 70277) (MAX/TOP 70279
- . 70477) (MEASUREGRAPHNODE 70479 . 70928) (MEMBTONODES 70930 . 71455) (MIN/BOTTOM 71457 . 71838) (
-MIN/LEFT 71840 . 72215) (MOVENODE 72217 . 73460) (NODECREATE 73462 . 74242) (NODELST/AS/MENU 74244 . 
-75844) (NODEREGION 75846 . 76306) (PRINTDISPLAYNODE 76308 . 81366) (PROMPTINWINDOW 81368 . 84177) (
-READ/NODE 84179 . 85293) (REDISPLAYGRAPH 85295 . 85737) (REMOVETONODES 85739 . 86260) (
-RESET/NODE/BORDER 86262 . 88049) (RESET/NODE/LABELSHADE 88051 . 89566) (SCALE/GRAPH 89568 . 95854) (
-SCALE/GRAPHNODE/BORDER 95856 . 96551) (SCALE/TONODES 96553 . 97434) (SET/LABEL/SIZE 97436 . 100382) (
-SET/LAYOUT/POSITION 100384 . 100869) (SHOWGRAPH 100871 . 102670) (SIZE/GRAPH/WINDOW 102672 . 106156) (
-TOGGLE/DIRECTEDFLG 106158 . 106788) (TOGGLE/SIDESFLG 106790 . 107278) (TOLINKS 107280 . 107446) (
-TRACKCURSOR 107448 . 108855) (TRACKNODE 108857 . 109493) (TRANSGRAPH 109495 . 111242)) (111485 128102 
-(EDITMOVEREGION 111495 . 115298) (EDITMOVESUBTREE 115300 . 117077) (NOT.TRACKCURSOR 117079 . 120057) (
-RECURSIVE.COLLECTDESCENDENTS 120059 . 121547) (MOVEDESCENDENTS 121549 . 123611) (COLLECT.CHILD.NODES 
-123613 . 124729) (CREATE.NEW.NODEPOSITION 124731 . 125271) (GETBOXPOSITION.FROMINITIALREGION 125273 . 
-126745) (COLLECTDESCENDENTS 126747 . 128100)) (128166 130455 (NEXTSIZEFONT 128176 . 129366) (
-DECREASING.FONT.LIST 129368 . 129694) (SCALE.FONT 129696 . 130453)) (130679 169831 (BRH/LAYOUT 130689
- . 132433) (BRH/LAYOUT/DAUGHTERS 132435 . 133381) (BRH/OFFSET 133383 . 134061) (BRHC/INTERTREE/SPACE 
-134063 . 135381) (BRHC/LAYOUT 135383 . 137239) (BRHC/LAYOUT/DAUGHTERS 137241 . 140195) (
-BRHC/LAYOUT/TERMINAL 140197 . 140878) (BRHC/OFFSET 140880 . 141776) (BRHL/LAYOUT 141778 . 144002) (
-BRHL/LAYOUT/DAUGHTERS 144004 . 145762) (BRHL/MOVE/RIGHT 145764 . 146907) (BROWSE/LAYOUT/HORIZ 146909
- . 147633) (BROWSE/LAYOUT/HORIZ/COMPACTLY 147635 . 150441) (BROWSE/LAYOUT/LATTICE 150443 . 151299) (
-BRV/OFFSET 151301 . 152164) (EXTEND/TRANSITION/CHAIN 152166 . 153437) (FOREST/BREAK/CYCLES 153439 . 
-154369) (INIT/NODES/FOR/LAYOUT 154371 . 155866) (INTERPRET/MARK/FORMAT 155868 . 157135) (
-LATTICE/BREAK/CYCLES 157137 . 157841) (LAYOUTFOREST 157843 . 158544) (LAYOUTGRAPH 158546 . 162013) (
-LAYOUTLATTICE 162015 . 163468) (LAYOUTSEXPR 163470 . 164541) (LAYOUTSEXPR1 164543 . 165245) (
-MARK/GRAPH/NODE 165247 . 165977) (NEW/INSTANCE/OF/GRAPHNODE 165979 . 167348) (RAISE/TRANSITION/CHAIN 
-167350 . 167751) (REFLECT/GRAPH/DIAGONALLY 167753 . 168482) (REFLECT/GRAPH/HORIZONTALLY 168484 . 
-169010) (REFLECT/GRAPH/VERTICALLY 169012 . 169536) (SWITCH/NODE/HEIGHT/WIDTH 169538 . 169829)) (173177
- 174528 (GRAPHERIMAGEFNS 173187 . 174526)) (174529 176257 (GRAPHERCOPYBUTTONEVENTFN 174539 . 175518) (
-GRAPHOBJ.FINDGRAPH 175520 . 176255)) (176258 178878 (ALIGNMENTNODE 176268 . 177690) (
-GRAPHOBJ.CHECKALIGN 177692 . 178876)) (178879 194729 (GRAPHEROBJ 178889 . 180635) (
-GRAPHOBJ.BUTTONEVENTINFN 180637 . 182064) (GRAPHOBJ.COPYBUTTONEVENTFN 182066 . 182503) (
-GRAPHOBJ.COPYFN 182505 . 183429) (GRAPHOBJ.DISPLAYFN 183431 . 186246) (GRAPHOBJ.GETALIGN 186248 . 
-186987) (GRAPHOBJ.GETFN 186989 . 188494) (GRAPHOBJ.IMAGEBOXFN 188496 . 192512) (GRAPHOBJ.PUTALIGN 
-192514 . 193344) (GRAPHOBJ.PUTFN 193346 . 194727)) (194730 213882 (COPYGRAPH 194740 . 196288) (
-DUMPGRAPH 196290 . 206546) (READGRAPH 206548 . 213880)))))
+  (FILEMAP (NIL (7149 112538 (ADD/AND/DISPLAY/LINK 7159 . 7861) (APPLYTOSELECTEDNODE 7863 . 8351) (
+CALL.MOVENODEFN 8353 . 8702) (CHANGE.NODEFONT.SIZE 8704 . 10016) (DEFAULT.ADDNODEFN 10018 . 10816) (
+DELETE/AND/DISPLAY/LINK 10818 . 12385) (DISPLAY/NAME 12387 . 12558) (DISPLAYGRAPH 12560 . 14931) (
+DISPLAYLINK 14933 . 17486) (DISPLAYLINK/BT 17488 . 18845) (DISPLAYLINK/LR 18847 . 20205) (
+DISPLAYLINK/RL 20207 . 21565) (DISPLAYLINK/TB 21567 . 22925) (DISPLAYNODE 22927 . 23275) (
+ERASE/GRAPHNODE 23277 . 24384) (DISPLAYNODE 24386 . 24734) (DISPLAYNODELINKS 24736 . 25880) (
+DRAW/GRAPHNODE/BORDER 25882 . 26801) (DRAWAREABOX 26803 . 28004) (EDITADDLINK 28006 . 28404) (
+EDITADDNODE 28406 . 30495) (EDITAPPLYTOLINK 30497 . 32576) (EDITCHANGEFONT 32578 . 33750) (
+EDITCHANGELABEL 33752 . 35293) (EDITDELETELINK 35295 . 35701) (EDITDELETENODE 35703 . 38404) (
+EDITGRAPH 38406 . 38473) (EDITGRAPH1 38475 . 39233) (EDITGRAPH2 39235 . 40966) (EDITMOVENODE 40968 . 
+42545) (EDITTOGGLEBORDER 42547 . 43843) (EDITTOGGLELABEL 43845 . 45142) (FILL/GRAPHNODE/LABEL 45144 . 
+45972) (FIX/SCALE 45974 . 46530) (FLIPNODE 46532 . 47136) (FONTNAMELIST 47138 . 47357) (FROMLINKS 
+47359 . 47529) (GETNODEFROMID 47531 . 48550) (GN/BOTTOM 48552 . 48828) (GN/LEFT 48830 . 49103) (
+GN/RIGHT 49105 . 49496) (GN/TOP 49498 . 49922) (GRAPHADDLINK 49924 . 50483) (GRAPHADDNODE 50485 . 
+51274) (GRAPHBUTTONEVENTFN 51276 . 53456) (GRAPHCHANGELABEL 53458 . 53901) (GRAPHDELETELINK 53903 . 
+55211) (GRAPHDELETENODE 55213 . 55745) (GRAPHEDITCOMMANDFN 55747 . 57131) (GRAPHEDITEVENTFN 57133 . 
+57844) (GRAPHER/CENTERPRINTINAREA 57846 . 58610) (GRAPHERPROP 58612 . 59156) (GRAPHNODE/BORDER/WIDTH 
+59158 . 59679) (GRAPHREGION 59681 . 60850) (HARDCOPYGRAPH 60852 . 68234) (INTERSECT/REGIONP/LBWH 68236
+ . 69512) (INVERTED/GRAPHNODE/BORDER 69514 . 70098) (INVERTED/SHADE/FOR/GRAPHER 70100 . 70732) (
+LAYOUT/POSITION 70734 . 70913) (LINKPARAMETERS 70915 . 71367) (MAX/RIGHT 71369 . 71571) (MAX/TOP 71573
+ . 71771) (MEASUREGRAPHNODE 71773 . 72222) (MEMBTONODES 72224 . 72749) (MIN/BOTTOM 72751 . 73132) (
+MIN/LEFT 73134 . 73509) (MOVENODE 73511 . 74754) (NODECREATE 74756 . 75536) (NODELST/AS/MENU 75538 . 
+77138) (NODEREGION 77140 . 77600) (PRINTDISPLAYNODE 77602 . 82660) (PROMPTINWINDOW 82662 . 85471) (
+READ/NODE 85473 . 86587) (REDISPLAYGRAPH 86589 . 87031) (REMOVETONODES 87033 . 87554) (
+RESET/NODE/BORDER 87556 . 89343) (RESET/NODE/LABELSHADE 89345 . 90860) (SCALE/GRAPH 90862 . 97148) (
+SCALE/GRAPHNODE/BORDER 97150 . 97845) (SCALE/TONODES 97847 . 98728) (SET/LABEL/SIZE 98730 . 101676) (
+SET/LAYOUT/POSITION 101678 . 102163) (SHOWGRAPH 102165 . 103964) (SIZE/GRAPH/WINDOW 103966 . 107450) (
+TOGGLE/DIRECTEDFLG 107452 . 108082) (TOGGLE/SIDESFLG 108084 . 108572) (TOLINKS 108574 . 108740) (
+TRACKCURSOR 108742 . 110149) (TRACKNODE 110151 . 110787) (TRANSGRAPH 110789 . 112536)) (112779 129396 
+(EDITMOVEREGION 112789 . 116592) (EDITMOVESUBTREE 116594 . 118371) (NOT.TRACKCURSOR 118373 . 121351) (
+RECURSIVE.COLLECTDESCENDENTS 121353 . 122841) (MOVEDESCENDENTS 122843 . 124905) (COLLECT.CHILD.NODES 
+124907 . 126023) (CREATE.NEW.NODEPOSITION 126025 . 126565) (GETBOXPOSITION.FROMINITIALREGION 126567 . 
+128039) (COLLECTDESCENDENTS 128041 . 129394)) (129460 131749 (NEXTSIZEFONT 129470 . 130660) (
+DECREASING.FONT.LIST 130662 . 130988) (SCALE.FONT 130990 . 131747)) (131973 171125 (BRH/LAYOUT 131983
+ . 133727) (BRH/LAYOUT/DAUGHTERS 133729 . 134675) (BRH/OFFSET 134677 . 135355) (BRHC/INTERTREE/SPACE 
+135357 . 136675) (BRHC/LAYOUT 136677 . 138533) (BRHC/LAYOUT/DAUGHTERS 138535 . 141489) (
+BRHC/LAYOUT/TERMINAL 141491 . 142172) (BRHC/OFFSET 142174 . 143070) (BRHL/LAYOUT 143072 . 145296) (
+BRHL/LAYOUT/DAUGHTERS 145298 . 147056) (BRHL/MOVE/RIGHT 147058 . 148201) (BROWSE/LAYOUT/HORIZ 148203
+ . 148927) (BROWSE/LAYOUT/HORIZ/COMPACTLY 148929 . 151735) (BROWSE/LAYOUT/LATTICE 151737 . 152593) (
+BRV/OFFSET 152595 . 153458) (EXTEND/TRANSITION/CHAIN 153460 . 154731) (FOREST/BREAK/CYCLES 154733 . 
+155663) (INIT/NODES/FOR/LAYOUT 155665 . 157160) (INTERPRET/MARK/FORMAT 157162 . 158429) (
+LATTICE/BREAK/CYCLES 158431 . 159135) (LAYOUTFOREST 159137 . 159838) (LAYOUTGRAPH 159840 . 163307) (
+LAYOUTLATTICE 163309 . 164762) (LAYOUTSEXPR 164764 . 165835) (LAYOUTSEXPR1 165837 . 166539) (
+MARK/GRAPH/NODE 166541 . 167271) (NEW/INSTANCE/OF/GRAPHNODE 167273 . 168642) (RAISE/TRANSITION/CHAIN 
+168644 . 169045) (REFLECT/GRAPH/DIAGONALLY 169047 . 169776) (REFLECT/GRAPH/HORIZONTALLY 169778 . 
+170304) (REFLECT/GRAPH/VERTICALLY 170306 . 170830) (SWITCH/NODE/HEIGHT/WIDTH 170832 . 171123)) (174438
+ 175789 (GRAPHERIMAGEFNS 174448 . 175787)) (175790 177518 (GRAPHERCOPYBUTTONEVENTFN 175800 . 176779) (
+GRAPHOBJ.FINDGRAPH 176781 . 177516)) (177519 180139 (ALIGNMENTNODE 177529 . 178951) (
+GRAPHOBJ.CHECKALIGN 178953 . 180137)) (180140 195990 (GRAPHEROBJ 180150 . 181896) (
+GRAPHOBJ.BUTTONEVENTINFN 181898 . 183325) (GRAPHOBJ.COPYBUTTONEVENTFN 183327 . 183764) (
+GRAPHOBJ.COPYFN 183766 . 184690) (GRAPHOBJ.DISPLAYFN 184692 . 187507) (GRAPHOBJ.GETALIGN 187509 . 
+188248) (GRAPHOBJ.GETFN 188250 . 189755) (GRAPHOBJ.IMAGEBOXFN 189757 . 193773) (GRAPHOBJ.PUTALIGN 
+193775 . 194605) (GRAPHOBJ.PUTFN 194607 . 195988)) (195991 215143 (COPYGRAPH 196001 . 197549) (
+DUMPGRAPH 197551 . 207807) (READGRAPH 207809 . 215141)))))
 STOP
diff --git a/library/GRAPHER.LCOM b/library/GRAPHER.LCOM
index b2dd5625..dc21e426 100644
Binary files a/library/GRAPHER.LCOM and b/library/GRAPHER.LCOM differ
diff --git a/sources/FILEIO b/sources/FILEIO
index 433ead86..115d7836 100644
--- a/sources/FILEIO
+++ b/sources/FILEIO
@@ -1,12 +1,12 @@
-(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
+(DEFINE-FILE-INFO :PACKAGE "INTERLISP" :READTABLE "INTERLISP" :BASE 10)
 
-(FILECREATED " 6-Feb-2026 23:22:00" {WMEDLEY}<sources>FILEIO.;142 166519 
+(FILECREATED "21-Apr-2026 20:57:55" {DSK}<home>matt>Interlisp>medley>sources>FILEIO.;17 166496 
 
-      :EDIT-BY rmk
+      :EDIT-BY "mth"
 
-      :CHANGES-TO (FNS DIRECTORYNAME)
+      :CHANGES-TO (FNS \DO.PARAMS.AT.OPEN)
 
-      :PREVIOUS-DATE "12-Sep-2025 08:19:06" {WMEDLEY}<sources>FILEIO.;141)
+      :PREVIOUS-DATE "21-Apr-2026 20:24:53" {DSK}<home>matt>Interlisp>medley>sources>FILEIO.;15)
 
 
 (PRETTYCOMPRINT FILEIOCOMS)
@@ -1446,7 +1446,9 @@
                 (GO RETRY])
 
 (\DO.PARAMS.AT.OPEN
-  [LAMBDA (STREAM ACCESS PARAMETERS)                         (* ; "Edited 25-Dec-2024 10:54 by rmk")
+  [LAMBDA (STREAM ACCESS PARAMETERS)                         (* ; "Edited 21-Apr-2026 20:57 by mth")
+                                                             (* ; "Edited 20-Apr-2026 17:36 by mth")
+                                                             (* ; "Edited 25-Dec-2024 10:54 by rmk")
                                                              (* ; "Edited 15-Jul-2024 22:29 by rmk")
                                                              (* ; "Edited 25-Aug-2023 08:43 by rmk")
                                                              (* ; "Edited  6-Jul-2022 00:00 by rmk")
@@ -1469,40 +1471,49 @@
 
     (DECLARE (USEDFREE STREAM-AFTER-OPEN-FNS))
     (\EXTERNALFORMAT STREAM :DEFAULT)
-    [for X ATTR VAL EOL in PARAMETERS do [(COND
-                                             [(LISTP X)
-                                              (SETQ ATTR (CAR X))
-                                              (SETQ VAL (CAR (LISTP (CDR X]
-                                             (T (SETQ ATTR X)
-                                                (SETQ VAL T)))
-                                          (SELECTQ ATTR
-                                              (BUFFERS (SETFILEINFO STREAM 'BUFFERS VAL))
-                                              (ENDOFSTREAMOP (SETFILEINFO STREAM 'ENDOFSTREAMOP VAL))
-                                              (CHARSET (CHARSET STREAM VAL))
-                                              ((FORMAT EXTERNALFORMAT :EXTERNAL-FORMAT) 
+    (for X ATTR VAL EOL in PARAMETERS
+       do (COND
+             [(LISTP X)
+              (SETQ ATTR (CAR X))
+              (SETQ VAL (CAR (LISTP (CDR X]
+             (T (SETQ ATTR X)
+                (SETQ VAL T)))
+          (SELECTQ ATTR
+              (BUFFERS (SETFILEINFO STREAM 'BUFFERS VAL))
+              (ENDOFSTREAMOP (SETFILEINFO STREAM 'ENDOFSTREAMOP VAL))
+              (CHARSET (CHARSET STREAM VAL))
+              ((FORMAT EXTERNALFORMAT :EXTERNAL-FORMAT) 
+                                                        (* ;; 
+                                                "Ignore the case of the non-LISTP X setting VAL to T")
 
-                                                                   (* ;; 
-                                 "VAL can be :UTF-8, CR, (UTF:8 CR), i.e. specify either one or both")
+                   [if (LISTP X)
+                       then 
+                            (* ;; 
+                            "VAL can be :UTF-8, CR, (UTF:8 CR), i.e. specify either one or both")
 
-                                                   (if (LISTP VAL)
-                                                       then  (* ; 
-                                                         "VAL could be (:UTF-8 CR) e.g. from CL:OPEN")
-                                                            (\EXTERNALFORMAT STREAM (CAR VAL)) 
-                                                             (* ; 
-                                                             "Can override the EOL of the format")
-                                                            (SETQ EOL (CADR VAL))
-                                                     elseif (SETQ EOL (CAR)
-                                                             VAL)
-                                                     else (\EXTERNALFORMAT STREAM VAL)))
-                                              (CONVHANKAKU (CONVHANKAKU STREAM VAL))
-                                              ((EOL EOLCONVENTION EOLC)
-                                               (SETQ EOL VAL] finally 
+                            (for V in (MKLIST VAL) do 
+                                                      (* ;; 
+                                                     "FIND-FORMAT doesn't know about :DEFAULT, so...")
 
-                                                              (* ;; 
+                                                      (if (OR (EQ V :DEFAULT)
+                                                              (FIND-FORMAT V T))
+                                                          then (\EXTERNALFORMAT STREAM V)
+                                                        else (SETQ EOL V])
+              (CONVHANKAKU (CONVHANKAKU STREAM VAL))
+              ((EOL EOLCONVENTION EOLC) 
+                   (SETQ EOL VAL))
+              NIL) finally 
+
+                         (* ;; 
                         "If not specified, default EOL to ANY--SETFILEINFO checks for output streams")
 
-                                                                    (SETFILEINFO STREAM 'EOL
-                                                                           (OR EOL 'ANY]
+                         (* ;; 
+                " Cannot depend on SETFILEINFO checking for ANY on output stream, because it ERRORs!")
+
+                         (CL:WHEN (OR (NEQ (SETQ EOL (OR EOL 'ANY))
+                                           'ANY)
+                                      (EQ ACCESS 'INPUT))
+                             (SETFILEINFO STREAM 'EOL EOL)))
     (FOR FN IN STREAM-AFTER-OPEN-FNS DO (APPLY* FN STREAM ACCESS PARAMETERS])
 
 (\RENAMEFILE
@@ -3161,39 +3172,39 @@ update the map")
 (ADDTOVAR LAMA \IS.NOT.RANDACCESSP \ILLEGAL.DEVICEOP STREAMPROP)
 )
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (27706 31822 (STREAMPROP 27716 . 28150) (GETSTREAMPROP 28152 . 28901) (PUTSTREAMPROP 
-28903 . 31670) (STREAMP 31672 . 31820)) (31865 35244 (\DEFPRINT.BY.NAME 31875 . 33027) (
-\STREAM.DEFPRINT 33029 . 34937) (\FDEV.DEFPRINT 34939 . 35242)) (35502 40543 (\GETACCESS 35512 . 35966
-) (\SETACCESS 35968 . 40541)) (60769 66738 (\DEFINEDEVICE 60779 . 63095) (\GETDEVICEFROMNAME 63097 . 
-63570) (\GETDEVICEFROMHOSTNAME 63572 . 64616) (\REMOVEDEVICE 64618 . 65741) (\REMOVEDEVICE.NAMES 65743
- . 66736)) (66778 94509 (\CLOSEFILE 66788 . 67613) (\DELETEFILE 67615 . 67909) (\DEVICEEVENT 67911 . 
-69681) (\GENERATEFILES 69683 . 70630) (\GENERATENEXTFILE 70632 . 71283) (\GENERATEFILEINFO 71285 . 
-71746) (\GETFILENAME 71748 . 72137) (\GENERIC.OUTFILEP 72139 . 72609) (\OPENFILE 72611 . 75189) (
-\DO.PARAMS.AT.OPEN 75191 . 79387) (\RENAMEFILE 79389 . 80345) (\REVALIDATEFILE 80347 . 82949) (
-\PAGED.REVALIDATEFILELST 82951 . 84509) (\PAGED.REVALIDATEFILES 84511 . 86230) (\PAGED.REVALIDATEFILE 
-86232 . 88515) (\BUFFERED.REVALIDATEFILE 88517 . 90803) (\BUFFERED.REVALIDATEFILELST 90805 . 91989) (
-\PRINT-REVALIDATION-RESULT 91991 . 92833) (\TRUNCATEFILE 92835 . 93226) (\FILE-CONFLICT 93228 . 94507)
-) (94545 99208 (\GENERATENOFILES 94555 . 96651) (\NULLFILEGENERATOR 96653 . 96897) (\NOFILESNEXTFILEFN
- 96899 . 98890) (\NOFILESINFOFN 98892 . 99206)) (99327 101235 (\FILE.NOT.OPEN 99337 . 99850) (
-\FILE.WONT.OPEN 99852 . 100180) (\ILLEGAL.DEVICEOP 100182 . 100464) (\IS.NOT.RANDACCESSP 100466 . 
-100912) (\STREAM.NOT.OPEN 100914 . 101233)) (101370 103668 (\FDEVINSTANCE 101380 . 103666)) (104870 
-111841 (CNDIR 104880 . 106185) (DIRECTORYNAME 106187 . 109967) (DIRECTORYNAMEP 109969 . 110585) (
-HOSTNAMEP 110587 . 111394) (\ADD.CONNECTED.DIR 111396 . 111839)) (111886 140833 (\BACKFILEPTR 111896
- . 112084) (\BACKPEEKBIN 112086 . 112447) (\BACKBIN 112449 . 112800) (BIN 112802 . 113019) (\BIN 
-113021 . 113298) (\BINS 113300 . 113586) (BOUT 113588 . 113950) (\BOUT 113952 . 114267) (\BOUTS 114269
- . 114580) (COPYBYTES 114582 . 117914) (COPYCHARS 117916 . 121714) (COPYFILE 121716 . 123076) (
-\COPYOPENFILE 123078 . 126277) (\INFER.FILE.TYPE 126279 . 127233) (EOFP 127235 . 127532) (FORCEOUTPUT 
-127534 . 127781) (\FLUSH.OPEN.STREAMS 127783 . 128139) (CHARSET 128141 . 129500) (ACCESS-CHARSET 
-129502 . 130139) (GETEOFPTR 130141 . 130391) (GETFILEINFO 130393 . 133586) (\TYPE.FROM.FILETYPE 133588
- . 134058) (\FILETYPE.FROM.TYPE 134060 . 134239) (GETFILEPTR 134241 . 134493) (SETFILEINFO 134495 . 
-138732) (SETFILEPTR 138734 . 140453) (BOUT16 140455 . 140640) (BIN16 140642 . 140831)) (140936 148116 
-(\GENERIC.BINS 140946 . 141226) (\GENERIC.BOUTS 141228 . 141493) (\GENERIC.RENAMEFILE 141495 . 143743)
- (\GENERIC.OPENP 143745 . 145060) (\GENERIC.READP 145062 . 146214) (\GENERIC.CHARSET 146216 . 148114))
- (148117 148456 (\MAP-OPEN-STREAMS 148127 . 148454)) (150311 152391 (\EOF.ACTION 150321 . 150572) (
-\EOSERROR 150574 . 150767) (\GETEOFPTR 150769 . 150951) (\INCFILEPTR 150953 . 151303) (\PEEKBIN 151305
- . 151496) (\SETCLOSEDFILELENGTH 151498 . 151832) (\SETEOFPTR 151834 . 152022) (\SETFILEPTR 152024 . 
-152389)) (152392 152934 (\FIXPOUT 152402 . 152702) (\FIXPIN 152704 . 152932)) (152935 153501 (\BOUTEOL
- 152945 . 153499)) (156397 166261 (\BUFFERED.BIN 156407 . 157259) (\BUFFERED.PEEKBIN 157261 . 158043) 
-(\BUFFERED.BOUT 158045 . 158905) (\BUFFERED.BINS 158907 . 162592) (\BUFFERED.BOUTS 162594 . 164395) (
-\BUFFERED.COPYBYTES 164397 . 166259)))))
+  (FILEMAP (NIL (27757 31873 (STREAMPROP 27767 . 28201) (GETSTREAMPROP 28203 . 28952) (PUTSTREAMPROP 
+28954 . 31721) (STREAMP 31723 . 31871)) (31916 35295 (\DEFPRINT.BY.NAME 31926 . 33078) (
+\STREAM.DEFPRINT 33080 . 34988) (\FDEV.DEFPRINT 34990 . 35293)) (35553 40594 (\GETACCESS 35563 . 36017
+) (\SETACCESS 36019 . 40592)) (60820 66789 (\DEFINEDEVICE 60830 . 63146) (\GETDEVICEFROMNAME 63148 . 
+63621) (\GETDEVICEFROMHOSTNAME 63623 . 64667) (\REMOVEDEVICE 64669 . 65792) (\REMOVEDEVICE.NAMES 65794
+ . 66787)) (66829 94486 (\CLOSEFILE 66839 . 67664) (\DELETEFILE 67666 . 67960) (\DEVICEEVENT 67962 . 
+69732) (\GENERATEFILES 69734 . 70681) (\GENERATENEXTFILE 70683 . 71334) (\GENERATEFILEINFO 71336 . 
+71797) (\GETFILENAME 71799 . 72188) (\GENERIC.OUTFILEP 72190 . 72660) (\OPENFILE 72662 . 75240) (
+\DO.PARAMS.AT.OPEN 75242 . 79364) (\RENAMEFILE 79366 . 80322) (\REVALIDATEFILE 80324 . 82926) (
+\PAGED.REVALIDATEFILELST 82928 . 84486) (\PAGED.REVALIDATEFILES 84488 . 86207) (\PAGED.REVALIDATEFILE 
+86209 . 88492) (\BUFFERED.REVALIDATEFILE 88494 . 90780) (\BUFFERED.REVALIDATEFILELST 90782 . 91966) (
+\PRINT-REVALIDATION-RESULT 91968 . 92810) (\TRUNCATEFILE 92812 . 93203) (\FILE-CONFLICT 93205 . 94484)
+) (94522 99185 (\GENERATENOFILES 94532 . 96628) (\NULLFILEGENERATOR 96630 . 96874) (\NOFILESNEXTFILEFN
+ 96876 . 98867) (\NOFILESINFOFN 98869 . 99183)) (99304 101212 (\FILE.NOT.OPEN 99314 . 99827) (
+\FILE.WONT.OPEN 99829 . 100157) (\ILLEGAL.DEVICEOP 100159 . 100441) (\IS.NOT.RANDACCESSP 100443 . 
+100889) (\STREAM.NOT.OPEN 100891 . 101210)) (101347 103645 (\FDEVINSTANCE 101357 . 103643)) (104847 
+111818 (CNDIR 104857 . 106162) (DIRECTORYNAME 106164 . 109944) (DIRECTORYNAMEP 109946 . 110562) (
+HOSTNAMEP 110564 . 111371) (\ADD.CONNECTED.DIR 111373 . 111816)) (111863 140810 (\BACKFILEPTR 111873
+ . 112061) (\BACKPEEKBIN 112063 . 112424) (\BACKBIN 112426 . 112777) (BIN 112779 . 112996) (\BIN 
+112998 . 113275) (\BINS 113277 . 113563) (BOUT 113565 . 113927) (\BOUT 113929 . 114244) (\BOUTS 114246
+ . 114557) (COPYBYTES 114559 . 117891) (COPYCHARS 117893 . 121691) (COPYFILE 121693 . 123053) (
+\COPYOPENFILE 123055 . 126254) (\INFER.FILE.TYPE 126256 . 127210) (EOFP 127212 . 127509) (FORCEOUTPUT 
+127511 . 127758) (\FLUSH.OPEN.STREAMS 127760 . 128116) (CHARSET 128118 . 129477) (ACCESS-CHARSET 
+129479 . 130116) (GETEOFPTR 130118 . 130368) (GETFILEINFO 130370 . 133563) (\TYPE.FROM.FILETYPE 133565
+ . 134035) (\FILETYPE.FROM.TYPE 134037 . 134216) (GETFILEPTR 134218 . 134470) (SETFILEINFO 134472 . 
+138709) (SETFILEPTR 138711 . 140430) (BOUT16 140432 . 140617) (BIN16 140619 . 140808)) (140913 148093 
+(\GENERIC.BINS 140923 . 141203) (\GENERIC.BOUTS 141205 . 141470) (\GENERIC.RENAMEFILE 141472 . 143720)
+ (\GENERIC.OPENP 143722 . 145037) (\GENERIC.READP 145039 . 146191) (\GENERIC.CHARSET 146193 . 148091))
+ (148094 148433 (\MAP-OPEN-STREAMS 148104 . 148431)) (150288 152368 (\EOF.ACTION 150298 . 150549) (
+\EOSERROR 150551 . 150744) (\GETEOFPTR 150746 . 150928) (\INCFILEPTR 150930 . 151280) (\PEEKBIN 151282
+ . 151473) (\SETCLOSEDFILELENGTH 151475 . 151809) (\SETEOFPTR 151811 . 151999) (\SETFILEPTR 152001 . 
+152366)) (152369 152911 (\FIXPOUT 152379 . 152679) (\FIXPIN 152681 . 152909)) (152912 153478 (\BOUTEOL
+ 152922 . 153476)) (156374 166238 (\BUFFERED.BIN 156384 . 157236) (\BUFFERED.PEEKBIN 157238 . 158020) 
+(\BUFFERED.BOUT 158022 . 158882) (\BUFFERED.BINS 158884 . 162569) (\BUFFERED.BOUTS 162571 . 164372) (
+\BUFFERED.COPYBYTES 164374 . 166236)))))
 STOP
diff --git a/sources/FILEIO.LCOM b/sources/FILEIO.LCOM
index d120ea24..102917fc 100644
Binary files a/sources/FILEIO.LCOM and b/sources/FILEIO.LCOM differ
