(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) (FILECREATED "13-Nov-2023 20:28:57" ("compiled on " {WMEDLEY}ADIR.;31) "13-Nov-2023 14:02:34" brecompiled changes%: UNPACKFILENAME.STRING in "FULL 13-Nov-2023 ..." dated "13-Nov-2023 14:02:38") (FILECREATED "13-Nov-2023 20:28:57" {WMEDLEY}ADIR.;31 67473 :EDIT-BY rmk :CHANGES-TO (FNS UNPACKFILENAME.STRING) :PREVIOUS-DATE "14-Sep-2023 23:20:17" {WMEDLEY}ADIR.;30) DELFILE :D8 (L (0 FILE)) @dih@ (14 \DELETEFILE) NIL () FULLNAME :D8 (L (1 RECOG 0 X)) P@@@A gb)g"AgAgAdg @A (77 \GETFILENAME 69 \ILLEGAL.ARG) (62 OLDEST 53 NEW 44 OLD/NEW 35 OLD 26 OLD 12 STREAM 5 STREAM) () INFILE :D8 (L (0 FILE)) @gg (20 INPUT 15 OPENSTREAM) (10 OLD 5 INPUT) () INFILEP :D8 (L (0 FILE)) @g (10 \GETFILENAME) (5 OLD) () IOFILE :D8 (L (0 FILE)) @gg (15 OPENSTREAM) (10 OLD 5 BOTH) () OPENFILE :D8 (L (4 OPTIONAL 3 PARAMETERS 2 RECOG 1 ACCESS 0 FILE)) @ABCD  (15 FULLNAME 10 OPENSTREAM) NIL () OPENSTREAM :D8 (L (4 OBSOLETE 3 PARAMETERS 2 RECOG 1 ACCESS 0 FILE))  Ag"AgAgAdg BdgQdgHdg?dg6dg-&Adggggg XD C@did7A YAC ICdloloD b@d@ @AHC Y(232 \OPENFILE 222 INTERLISP-NAMESTRING 196 \APPEND2 162 \DO.PARAMS.AT.OPEN 154 \GETSTREAM 132 \ILLEGAL.ARG 42 \ILLEGAL.ARG) (214 PATHNAME 206 PATHNAME 126 OLD/NEW 120 NEW 113 OUTPUT 106 OLD 98 INPUT 86 OLDEST 77 OLD/NEW 68 OLD 59 NEW 50 EXACT 35 APPEND 26 BOTH 17 OUTPUT 8 INPUT) ( 190 ((TYPE BINARY)) 179 ((TYPE TEXT))) OUTFILE :D8 (L (0 FILE)) @gg (20 OUTPUT 15 OPENSTREAM) (10 NEW 5 OUTPUT) () OUTFILEP :D8 (L (0 FILE)) @g (10 \GETFILENAME) (5 NEW) () RENAMEFILE :D8 (L (1 NEWFILE 0 OLDFILE)) ?@d@ bAdA b@d@ihdih @A (60 \RENAMEFILE 31 INTERLISP-NAMESTRING 14 INTERLISP-NAMESTRING) (23 PATHNAME 6 PATHNAME) () SIMPLE.FINDFILE :D8 (L (2 DIRLST 1 DUMMY 0 FILE)) >B!HIdB h@ gJg@ YHX(52 INFILEP 47 PACKFILENAME.STRING 27 INFILEP 17 MEMB) (41 BODY 35 DIRECTORY) () VMEMSIZE :D8 NIL `lR (11 \GETBASEFIXP) (4 \InterfacePage) () \COPYSYS :D8 (L (2 DONTSAVE 1 SYSNAME 0 FILE)) ?`g@gog`  b @ Zg [dgBgKgggggJgK X Ydg,oKoJgK X Y2o ]oM oJo I"JHJ ` LJ JIjIHjI i @Hh(309 \RESETKEYBOARD 303 \CLEARSYSBUF 293 \LISPERROR 272 PSEUDOFILENAME 263 \DAYTIME0 252 RENAMEFILE 239 COPYFILE 222 CONCAT 209 UNIX-GETENV 198 \FLUSHVM 190 \FLUSHVM 184 CONCAT 179 \UFS.RECOGNIZE.FILE 174 \GETDEVICEFROMNAME 140 \FLUSHVM 134 PACKFILENAME.STRING 128 \UFS.RECOGNIZE.FILE 123 \GETDEVICEFROMNAME 69 U-CASE 64 FILENAMEFIELD 53 TRUEFILENAME 46 PSEUDOHOSTP 39 OUTFILEP 34 PACKFILENAME.STRING) (258 \LASTUSERACTION 168 NON 148 UNIX 117 NON 111 BODY 106 SYSOUT 101 EXTENSION 96 tmp 91 NAME 85 HOST 76 DSK 59 HOST 28 \CONNECTED.DIRECTORY 23 BODY 13 BODY 7 BODY) ( 234 ((TYPE BINARY)) 228 "{DSK}~/lisp.virtualmem" 216 "{DSK}" 204 "LDEDESTSYSOUT" 162 "}" 156 "{" 18 "WORK.SYSOUT") \FLUSHVM :D8 (L (0 MAIKO.SYSOUTFILE) P 1 \INTERRUPTABLE P 0 \INTERRUPTABLE) `g0`@2`h4l~`6dhdko>dlo1dlo$dlodlolo il~`dh i(153 SET 129 ERROR) (144 \SYSTEMCACHEVARS 136 \DOFAULTINIT 45 \InterfacePage 32 \InterfacePage 23 \InterfacePage 15 \DOFLUSHVM 10 \InterfacePage) ( 124 "Connection timed out" 114 "Can not write sysout file" 101 "Can not seek sysout file" 88 "Can not open sysout file" 75 "FILE-SYSTEM-RESOURCES-EXCEEDED" 62 "Can not find sysout file") \LOGOUT0 :D8 (L (0 FAST)) @ @} (7 \FLUSHVM) NIL () UNPACKFILENAME.STRING :D8 (L (5 CLFLG 4 PACKFLG 3 OSTYPE 2 DIRFLG 1 ONEFIELDFLG 0 FILE)) H/@d _@d3@X@d3 bI@ABD @d +@A g@hgC@ b k@Id WIdj _(Idj XmIl _*Idj lD_,Ijh#d3@+I_(_*I jh_,i_.O,O(HI YmO(Ho^HO*Lk_2_0O2O0,O,O(O2O(O2dNO2l'O2kԁO2k_2O*kؽ0!ldhdjdk0Lk_@jh_4dO4kjPdlCdO@MkLkk_>dlO> dlO> _BdjOBO(OBO.kjO*MMkXH_HO*O,O(HO(Hºl!JJdl>Jdldl/dlJdl/O4O__OH_H_h_&_"_ _:HkO,?O(O;HkO,O(HkO(Hkdl>dl/dldl/ihi_H_ul.(OOOk؁O_HHk_ H_"h_$Jdl;.O&OOOk؁O_O"Hk_$Hk_ H_&^l'Hk԰UJl!NCiCKg gbg+l;Zl:ZOOOO"O&O_H_k_HkX OOZO O*OPOkذGO;O,O(OO(Odl
dl/dlO@O>_BhO>_BO>_>OBdgKYgOG0%ldhdjdk0O_Hjh_6dO6kjPdlCdOHEOkفOOk_FdlOF dlOF _JdjOJO(OJO.kjOBdglOO,O(OO(Odl
dl/gKOgggBggOOOO(O,O. RgOBdgnO7OBO,O(OO(Odl
dl/gKOggBgOOOO(O,O. hgO0(ldhdjdk0O_Njh_8dO8kjPdlCdONO O*Ok_LdlOL dlOL _PdjOPO(OPO.kjBo:OBdgO"$0+ldhdjdk0O"k_Tjh_:dO:kjPdlCdOTO$O*O"kk_RdlOR dlOR _VdjOVO(OVO.kjogO&0.ldhdjdk0O&k_Zjh_o1A@HH@kbBA@m3 A@khdD _dj _ML{NkԾDCMCM_l>Ol/GDONl>ONl>ǿAMkغJdIDCJCJdl>dl/ihJkٰJkZDONOONOǿMk]OlN OlN OdONhO0ldhdjdk0@]jhdKkjPdlCdMAk@kؼdlL dlL ^djNCNEkj(343 \PUTBASEFIXP 333 \PUTBASEFIXP 246 \PUTBASEFIXP 235 \PUTBASEFIXP 93 %%ARRAY-BASE 79 ALLOCSTRING) NIL ( 37 ">" 26 "<") UNPACKFILENAME :D8 (L (2 OSTYPE 1 ONEFIELDFLG 0 FILE)) @AhBi (10 UNPACKFILENAME.STRING) NIL () LASTCHPOS :D8 (L (2 START 1 STR 0 CH)) 3 BkbAB YH@@Id@BXIl'BkԀBk԰(15 NTHCHARCODE) NIL () FILENAMEFIELD :D8 (L (1 FIELDNAME 0 FILE)) ?@AgAdgggAdggghi (60 UNPACKFILENAME.STRING) (52 FIELD 47 DEVICE 39 STRUCTURE 30 DEVICE 23 VERSION 15 GENERATION 6 VERSION) () FILENAMEFIELD.STRING :D8 (L (1 FIELDNAME 0 FILE)) <@AgAdgggAdggg (57 UNPACKFILENAME.STRING) (52 FIELD 47 DEVICE 39 STRUCTURE 30 DEVICE 23 VERSION 15 GENERATION 6 VERSION) () PACKFILENAME :D8 (L (0 N) P 14 ACCOUNT P 13 PROTECTION P 12 TEMPORARY P 11 VERSION P 10 EXTENSION P 9 NAME P 7 SUBDIRECTORY P 6 DIRECTORY P 5 STRUCTURE P 4 DEVICE P 3 HOST) 'eHkkagka ok JHWJa_JkZHJa_ _ O_h_ O $O O l OdgO OgO d hg d_"dgKO"I[dgLO"I\dgNOI^O"I^dgOwO"I_kdgO^NI_VO"I_KdgO?O"I_3dgO'O"I_gOO"I_OdgVKO I[ dl{dl[dl(-O lO m dl}dl]dl)mm O gOdgO NwI^qhg _ d_$dgKO$I[udgLjO$I\_dgNSOI^KO$I^AdgO5O$I_)gNOI^O$I^oO jO ddgLIgNIgOO I_OdgO{O I_qgLhO I\_OdgOQO I_GgO=O I_3OdgO%O I_gOO I_O JkZKIhLIhNIhOIh_OIh_KoKohLl:Lk eLohNdoo +oNk `N`hAN Nk _&oO&lIh8`Od3 # dl.dl!dl;Olm Oh  (1316 PACK 1309 \NCONC2 1304 \NCONC2 1299 \NCONC2 1294 \NCONC2 1289 \NCONC2 1284 \NCONC2 1279 \NCONC2 1267 SUBSTRING 1240 CHCON1 1190 CHCON1 1124 NCHARS 1103 LASTCHPOS 1069 NCHARS 1037 NTHCHARCODE 1027 NCHARS 1001 LASTCHPOS 987 STREQUAL 962 LASTCHPOS 888 \ILLEGAL.ARG 681 ERROR 533 UNPACKFILENAME.STRING 480 SUBSTRING 453 NTHCHARCODE 423 CHCON1 379 SHOULDNT 157 UNPACKFILENAME.STRING 146 PACKFILENAME.STRING 122 \ILLEGAL.ARG 102 \TYPEMASK.UFN 87 STRINGP 24 APPLY) (1225 \FILENAME.SYNTAX 1201 %. 1140 \FILENAME.SYNTAX 1112 \FILENAME.SYNTAX 1081 \FILENAME.SYNTAX 1015 \FILENAME.SYNTAX 1008 \FILENAME.SYNTAX 868 TEMPORARY 847 VERSION 824 EXTENSION 803 NAME 782 DEVICE 761 RELATIVEDIRECTORY 735 SUBDIRECTORY 716 DEVICE 703 HOST 647 DIRECTORY 624 RELATIVEDIRECTORY 594 SUBDIRECTORY 572 DEVICE 548 HOST 528 RETURN 502 DIRECTORY 492 PATHNAME 400 HOST 359 VERSION 336 EXTENSION 312 NAME 280 RELATIVEDIRECTORY 256 SUBDIRECTORY 222 DIRECTORY 196 DEVICE 170 HOST 152 OK 130 BODY 112 BODY 17 PACKFILENAME) ( 1095 (62 47) 1044 (60 47) 994 (62 47) 982 "<" 970 ":" 946 "}" 940 "{" 674 "Illegal field in DIRECTORY slot" 30 "") PACKFILENAME.STRING :D8 (L (0 N) P 14 ACCOUNT P 13 PROTECTION P 12 TEMPORARY P 11 VERSION P 10 EXTENSION P 9 NAME P 7 SUBDIRECTORY P 6 DIRECTORY P 5 STRUCTURE P 4 DEVICE P 3 HOST) 'eHkkagka ok JHWJa_JkZHJa_ _ O_h_ O $O O l OdgO OgO d hg d_"dgKO"I[dgLO"I\dgNOI^O"I^dgOwO"I_kdgO^NI_VO"I_KdgO?O"I_3dgO'O"I_gOO"I_OdgVKO I[ dl{dl[dl(-O lO m dl}dl]dl)mm O gOdgO NwI^qhg _ d_$dgKO$I[udgLjO$I\_dgNSOI^KO$I^AdgO5O$I_)gNOI^O$I^oO jO ddgLIgNIgOO I_OdgO{O I_qgLhO I\_OdgOQO I_GgO=O I_3OdgO%O I_gOO I_O JkZKIhLIhNIhOIh_OIh_KoKohLl:Lk eLohNdoo +oNk `N`hAN Nk _&oO&lIh8`Od3 # dl.dl!dl;Olm Oh  (1316 CONCATLIST 1309 \NCONC2 1304 \NCONC2 1299 \NCONC2 1294 \NCONC2 1289 \NCONC2 1284 \NCONC2 1279 \NCONC2 1267 SUBSTRING 1240 CHCON1 1190 CHCON1 1124 NCHARS 1103 LASTCHPOS 1069 NCHARS 1037 NTHCHARCODE 1027 NCHARS 1001 LASTCHPOS 987 STREQUAL 962 LASTCHPOS 888 \ILLEGAL.ARG 681 ERROR 533 UNPACKFILENAME.STRING 480 SUBSTRING 453 NTHCHARCODE 423 CHCON1 379 SHOULDNT 157 UNPACKFILENAME.STRING 146 PACKFILENAME.STRING 122 \ILLEGAL.ARG 102 \TYPEMASK.UFN 87 STRINGP 24 APPLY) (1225 \FILENAME.SYNTAX 1201 %. 1140 \FILENAME.SYNTAX 1112 \FILENAME.SYNTAX 1081 \FILENAME.SYNTAX 1015 \FILENAME.SYNTAX 1008 \FILENAME.SYNTAX 868 TEMPORARY 847 VERSION 824 EXTENSION 803 NAME 782 DEVICE 761 RELATIVEDIRECTORY 735 SUBDIRECTORY 716 DEVICE 703 HOST 647 DIRECTORY 624 RELATIVEDIRECTORY 594 SUBDIRECTORY 572 DEVICE 548 HOST 528 RETURN 502 DIRECTORY 492 PATHNAME 400 HOST 359 VERSION 336 EXTENSION 312 NAME 280 RELATIVEDIRECTORY 256 SUBDIRECTORY 222 DIRECTORY 196 DEVICE 170 HOST 152 OK 130 BODY 112 BODY 17 PACKFILENAME.STRING) ( 1095 (62 47) 1044 (60 47) 994 (62 47) 982 "<" 970 ":" 946 "}" 940 "{" 674 "Illegal field in DIRECTORY slot" 30 "") FILEDIRCASEARRAY :D8 NIL ;lzlaIHJll/ JJIdl IkY(50 SETCASEARRAY 37 SETCASEARRAY 26 SETCASEARRAY 8 CASEARRAY) NIL () LOGOUT :D8 (L (0 FAST)) cg @ig g @ g g g h(95 INTERPRET.REM.CM 90 \USEREVENT 80 \PROCESS.AFTER.EXIT 70 \OPENLINEBUF 65 \DEVICEEVENT 55 \RESETKEYBOARD 50 \LOGOUT0 44 \SETTOTALTIME 39 \DEVICEEVENT 29 \PROCESS.BEFORE.LOGOUT 23 \FLUSHVMOK? 9 \USEREVENT) (85 AFTERLOGOUT 75 AFTERLOGOUT 60 AFTERLOGOUT 34 BEFORELOGOUT 18 LOGOUT 4 BEFORELOGOUT) () MAKESYS :D8 (I 1 NAME I 0 FILE) g A ` okl o g @ g g @g g `i g (152 RESET 147 INTERPRET.REM.CM 142 \USEREVENT 132 PRIN1 121 \PROCESS.AFTER.EXIT 111 \DEVICEEVENT 99 \USEREVENT 89 \DEVICEEVENT 76 \COPYSYS 70 \DEVICEEVENT 60 HERALD 55 CONCAT 45 SUBSTRING 32 DATE 22 CL:STRING-CAPITALIZE 9 \USEREVENT) (137 AFTERMAKESYS 126 HERALDSTRING 116 AFTERMAKESYS 106 AFTERMAKESYS 94 AFTERDOMAKESYS 84 AFTERDOMAKESYS 65 BEFOREMAKESYS 37 MAKESYSDATE 17 MAKESYSNAME 4 BEFOREMAKESYS) ( 50 " ..." 27 " ") SYSOUT :D8 (I 0 FILE) |g g `l @ Yd"`lH g g#g g g I(120 \USEREVENT 109 INTERPRET.REM.CM 103 \PROCESS.AFTER.EXIT 92 \DEVICEEVENT 74 \DEVICEEVENT 63 \PUTBASEFIXP 45 \COPYSYS 39 \SETTOTALTIME 31 \GETBASEFIXP 19 \DEVICEEVENT 9 \USEREVENT) (115 AFTERSYSOUT 98 AFTERSYSOUT 87 AFTERSYSOUT 80 AFTERDOSYSOUT 69 AFTERDOSYSOUT 55 \MISCSTATS 24 \MISCSTATS 14 BEFORESYSOUT 4 BEFORESYSOUT) () SAVEVM :D8 NIL Vg g 'g g g ig g (83 \USEREVENT 73 \DEVICEEVENT 61 \USEREVENT 51 \PROCESS.AFTER.EXIT 41 \DEVICEEVENT 31 \RESETKEYBOARD 24 \FLUSHVM 19 \DEVICEEVENT 9 \USEREVENT) (78 AFTERDOSAVEVM 68 AFTERDOSAVEVM 56 AFTERSAVEVM 46 AFTERSAVEVM 36 AFTERSAVEVM 14 BEFORESAVEVM 4 BEFORESAVEVM) () HERALD :D8 (L (0 STR)) @@`NIL (12 HERALDSTRING 7 HERALDSTRING) () INTERPRET.REM.CMA0001 :D8 (P 1 SI::*CATCH-RETURN-FROM* P 0 SI::*DUMMY-FOR-CATCH* F 2 FILE F 3 SI::NLSETQ-VALUE) i@Ri hcg(11 READ) (20 :NORMAL) () INTERPRET.REM.CM :D8 (L (0 RETFLG) P 7 *CONDITION-HANDLER-BINDINGS* P 6 SI::*NLSETQFLAG* P 5 *PROCEED-CASES* P 4 SI::NLSETQ-VALUE P 0 FILE F 8 *PROCEED-CASES* F 9 *CONDITION-HANDLER-BINDINGS*) o 1Hdg Xdg jHi gy`WioWM gLYMH @LI kKJ.IK dl dl dl ihIKl Kk[I H @IIi(186 CLOSEF 179 BKSYSBUF 166 RPLCHARCODE 136 NTHCHARCODE 121 NCHARS 111 CLOSEF 90 INTERPRET.REM.CMA0001 53 SKIPSEPRS 40 GETFILEINFO 28 OPENSTREAM 9 UNIX-GETENV) (96 :NORMAL 69 SI::NLSETQ-PROCEED-CASE 58 %" 35 LENGTH 23 INPUT) ( 78 (CL:ERROR . SI::NLSETQHANDLER) 4 "LDEINIT") \USEREVENT :D8 (L (0 EVENT)) E@g@g@g@g`` d@kHh(49 REVERSE) (44 AROUNDEXITFNS 37 AROUNDEXITFNS 30 BEFOREMAKESYS 22 BEFORESAVEVM 14 BEFORESYSOUT 5 BEFORELOGOUT) () USERNAME :D8 (L (2 PRESERVECASE 1 STRPTR 0 FLG)) N @h"`XjoHAi `YBd d IhA IkmA I(73 SUBSTRING 62 STRINGP 51 U-CASE 33 GetBcplString) (39 \USERNAME 12 \InterfacePage) () SETUSERNAME :D8 (L (0 NAME)) 9@6`HjoH@ hi @ (49 CONCAT 37 USERNAME 30 SetBcplString) (54 \USERNAME 42 USERNAME 7 \InterfacePage) () (PRETTYCOMPRINT ADIRCOMS) (RPAQQ ADIRCOMS ((COMS (* ; "user-level i/o routines") (FNS DELFILE FULLNAME INFILE INFILEP IOFILE OPENFILE OPENSTREAM OUTFILE OUTFILEP RENAMEFILE SIMPLE.FINDFILE VMEMSIZE \COPYSYS \FLUSHVM \LOGOUT0) ( CONSTANTS (MULTIPLE.STREAMS.PER.FILE.ALLOWED T)) (P (MOVD? (QUOTE SIMPLE.FINDFILE) (QUOTE FINDFILE) NIL T) (MOVD? (QUOTE EVQ) (QUOTE TRUEFILENAME)) (MOVD? (QUOTE EVQ) (QUOTE PSEUDOFILENAME)) (MOVD? ( QUOTE NILL) (QUOTE PSEUDOHOSTP))) (DECLARE%: DONTEVAL@LOAD DOCOPY (P (* ;; "for the benefit of the call to PATHNAMEP in OPENSTREAM. PATHNAMEP (and pathnames) get defined much later in the loadup." ) (MOVD? (QUOTE NILL) (QUOTE CL:PATHNAMEP))))) (COMS (FNS UNPACKFILENAME.STRING \UPF.DIRECTORY) ( DECLARE%: DONTCOPY (MACROS \UPF.EXTRACT \UPF.DIRTYPE) (CONSTANTS (FILENAMECODES (CHARCODE (%: < > / %. ; ! %'))) (MINFILENAMECODE (APPLY (FUNCTION IMIN) FILENAMECODES)) (MAXFILENAMECODE (APPLY (FUNCTION IMAX) FILENAMECODES))))) (COMS (FNS UNPACKFILENAME LASTCHPOS FILENAMEFIELD FILENAMEFIELD.STRING PACKFILENAME PACKFILENAME.STRING) (DECLARE%: DONTCOPY (MACROS PACKFILENAME.ASSEMBLE)) (VARS \FILENAME.SYNTAX) (FNS FILEDIRCASEARRAY) (VARS (FILEDIRCASEARRAY (FILEDIRCASEARRAY))) (GLOBALVARS \FILENAME.SYNTAX)) (COMS (* ; "saving and restoring system state") (FNS LOGOUT MAKESYS SYSOUT SAVEVM HERALD INTERPRET.REM.CM \USEREVENT) (ADDVARS (AROUNDEXITFNS)) (INITVARS (HERALDSTRING "") (\USERNAME)) (GLOBALVARS HERALDSTRING USERNAME \USERNAME AROUNDEXITFNS) (FNS USERNAME SETUSERNAME)) (LOCALVARS . T ) (DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY (FILES (LOADCOMP) FILEIO)) (DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA) (NLAML) (LAMA PACKFILENAME.STRING PACKFILENAME) )))) (RPAQQ MULTIPLE.STREAMS.PER.FILE.ALLOWED T) (CONSTANTS (MULTIPLE.STREAMS.PER.FILE.ALLOWED T)) (MOVD? (QUOTE SIMPLE.FINDFILE) (QUOTE FINDFILE) NIL T) (MOVD? (QUOTE EVQ) (QUOTE TRUEFILENAME)) (MOVD? (QUOTE EVQ) (QUOTE PSEUDOFILENAME)) (MOVD? (QUOTE NILL) (QUOTE PSEUDOHOSTP)) (MOVD? (QUOTE NILL) (QUOTE CL:PATHNAMEP)) (RPAQQ \FILENAME.SYNTAX ("<" ">" ";")) (RPAQ FILEDIRCASEARRAY (FILEDIRCASEARRAY)) (ADDTOVAR AROUNDEXITFNS) (RPAQ? HERALDSTRING "") (RPAQ? \USERNAME) NIL