diff --git a/sources/LLKEY b/sources/LLKEY
index 5b03412d..acf83bbe 100644
--- a/sources/LLKEY
+++ b/sources/LLKEY
@@ -1,12 +1,12 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED " 3-Jan-2024 00:14:32" {MEDLEY}<SOURCES>LLKEY.;2 199648 
+(FILECREATED " 3-Jan-2024 12:32:52" {MEDLEY}<SOURCES>LLKEY.;4 199606 
 
       :EDIT-BY "mth"
 
-      :CHANGES-TO (VARS LLKEYCOMS)
+      :CHANGES-TO (FNS \DECODETRANSITION SHIFTDOWNP)
+                  (VARS LLKEYCOMS)
                   (RECORDS KEYBOARDEVENT)
-                  (FNS SHIFTDOWNP \DECODETRANSITION)
 
       :PREVIOUS-DATE "27-Aug-2021 16:18:18" {MEDLEY}<SOURCES>LLKEY.;1)
 
@@ -35,7 +35,7 @@
                      (\TOSHIBA.JIS 7))
               (INITVARS (\MOUSECHORDTICKS)
                      (\MOUSECHORDMILLISECONDS 50)
-                     (KEYBOARD.SHIFTXORLOCK NIL))
+                     (SHIFTXORLOCKFLG NIL))
               (DECLARE%: DONTEVAL@LOAD DOCOPY (P (\KEYBOARDINIT)))
               [DECLARE%: DONTCOPY (MACROS .NOTELASTUSERACTION)
                      (CONSTANTS ALLUP \CTRLMASK \METABIT)
@@ -70,7 +70,7 @@
                      \MOUSECHORDTICKS \KEYBOARDEVENTQUEUE \KEYBUFFERING \CURRENTKEYACTION 
                      \COMMANDKEYACTION \DEFAULTKEYACTION \TIMER.INTERRUPT.PENDING \ORIGKEYACTIONS 
                      \KEYBOARD.META \MOUSECHORDMILLISECONDS \DORADOKEYACTIONS \DLIONKEYACTIONS 
-                     \DLIONOSDKEYACTIONS \DOVEKEYACTIONS \DOVEOSDKEYACTIONS KEYBOARD.SHIFTXORLOCK))
+                     \DLIONOSDKEYACTIONS \DOVEKEYACTIONS \DOVEOSDKEYACTIONS SHIFTXORLOCKFLG))
         (COMS                                                (* ; "Key interpretation")
               (FNS KEYACTION KEYACTIONTABLE KEYBOARDTYPE RESETKEYACTION 
                    \KEYBOARD.MACHINE-SPECIFIC-KEYACTIONS \KEYACTION1 KEYDOWNP KEYNUMBERP 
@@ -854,7 +854,7 @@
     T])
 
 (\DECODETRANSITION
-  [LAMBDA (KEYNUMBER DOWNFLG)                                (* ; "Edited  3-Jan-2024 00:12 by mth")
+  [LAMBDA (KEYNUMBER DOWNFLG)                                (* ; "Edited  3-Jan-2024 12:31 by mth")
                                                              (* ; "Edited 19-Nov-87 16:29 by Snow")
 
     (* ;; "KEYNUMBER is the key number in the hardware keyboard layout, DOWNFLG is T if the key just went down.  PENDINGINTERRUPT, bound in \KEYHANDLER, is set to the decoded character if it is an interrupt.")
@@ -868,10 +868,10 @@
               (LOCKSHIFT.TF 
                             (* ;; "Take shift action if either Shift or Caps Lock is down. ")
 
-                            (* ;; "If KEYBOARD.SHIFTXORLOCK then, but not both!")
+                            (* ;; "If SHIFTXORLOCKFLG then, but not both!")
 
-                            (IF (OR (AND KEYBOARD.SHIFTXORLOCK (fetch (KEYBOARDEVENT SHIFTXORLOCK)
-                                                                  of KEYSTATE))
+                            (IF (OR (AND SHIFTXORLOCKFLG (fetch (KEYBOARDEVENT SHIFTXORLOCK)
+                                                            of KEYSTATE))
                                     (fetch (KEYBOARDEVENT SHIFTORLOCK) of KEYSTATE))
                                 THEN (SETQ SHIFTED T)))
               (NOLOCKSHIFT.TF 
@@ -1082,7 +1082,7 @@
 
 (RPAQ? \MOUSECHORDMILLISECONDS 50)
 
-(RPAQ? KEYBOARD.SHIFTXORLOCK NIL)
+(RPAQ? SHIFTXORLOCKFLG NIL)
 (DECLARE%: DONTEVAL@LOAD DOCOPY 
 
 (\KEYBOARDINIT)
@@ -1967,7 +1967,7 @@
        \KEYBOARDEVENTQUEUE \KEYBUFFERING \CURRENTKEYACTION \COMMANDKEYACTION \DEFAULTKEYACTION 
        \TIMER.INTERRUPT.PENDING \ORIGKEYACTIONS \KEYBOARD.META \MOUSECHORDMILLISECONDS 
        \DORADOKEYACTIONS \DLIONKEYACTIONS \DLIONOSDKEYACTIONS \DOVEKEYACTIONS \DOVEOSDKEYACTIONS 
-       KEYBOARD.SHIFTXORLOCK)
+       SHIFTXORLOCKFLG)
 )
 
 
@@ -3923,33 +3923,33 @@
 (ADDTOVAR LAMA CURSORPROP METASHIFT MOUSECHORDWAIT)
 )
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (14756 22072 (BKSYSCHARCODE 14766 . 15115) (\CLEARSYSBUF 15117 . 15675) (\GETKEY 15677
- . 16852) (\NSYSBUFCHARS 16854 . 17596) (\SAVESYSBUF 17598 . 19207) (\SYSBUFP 19209 . 19513) (
-\GETSYSBUF 19515 . 19695) (\PUTSYSBUF 19697 . 20910) (\PEEKSYSBUF 20912 . 22070)) (23357 60896 (
-\KEYBOARDINIT 23367 . 25087) (\KEYBOARDEVENTFN 25089 . 29789) (\ALLOCLOCKED 29791 . 30381) (
-\SETIOPOINTERS 30383 . 34919) (\KEYBOARDOFF 34921 . 35335) (\KEYBOARDON 35337 . 35716) (\KEYHANDLER 
-35718 . 35849) (\KEYHANDLER1 35851 . 43297) (\RESETKEYBOARD 43299 . 44947) (\DOMOUSECHORDING 44949 . 
-48769) (\DOTRANSITIONS 48771 . 49448) (\DECODETRANSITION 49450 . 56844) (MOUSECHORDWAIT 56846 . 57510)
- (\TRACKCURSOR 57512 . 60894)) (95367 117240 (KEYACTION 95377 . 96230) (KEYACTIONTABLE 96232 . 97414) 
-(KEYBOARDTYPE 97416 . 98518) (RESETKEYACTION 98520 . 100279) (\KEYBOARD.MACHINE-SPECIFIC-KEYACTIONS 
-100281 . 102183) (\KEYACTION1 102185 . 112301) (KEYDOWNP 112303 . 112638) (KEYNUMBERP 112640 . 112838)
- (\KEYNAMETONUMBER 112840 . 113534) (\KEYNUMBERTONAME 113536 . 113726) (MODIFY.KEYACTIONS 113728 . 
-114589) (METASHIFT 114591 . 115535) (SHIFTDOWNP 115537 . 117238)) (117303 117599 (
-SETUP.OFFICE.KEYBOARD 117313 . 117597)) (120578 122290 (\INIT.KEYBOARD.STREAM 120588 . 122288)) (
-122555 138932 (\DOBUFFEREDTRANSITIONS 122565 . 137995) (\TIMER.INTERRUPTFRAME 137997 . 138722) (
-\PERIODIC.INTERRUPTFRAME 138724 . 138930)) (139186 143263 (\HARDCURSORUP 139196 . 141078) (
-\HARDCURSORPOSITION 141080 . 143116) (\HARDCURSORDOWN 143118 . 143261)) (143264 167324 (CURSOR.INIT 
-143274 . 146974) (\CURSORDESTINATION 146976 . 149294) (\SOFTCURSORUP 149296 . 154550) (
-\SOFTCURSORUPCURRENT 154552 . 161588) (\SOFTCURSORPOSITION 161590 . 162355) (\SOFTCURSORDOWN 162357 . 
-163065) (CURSORPROP 163067 . 163409) (GETCURSORPROP 163411 . 163599) (PUTCURSORPROP 163601 . 164756) (
-\CURSORBITSPERPIXEL 164758 . 166874) (\CURSORIMAGEPROPNAME 166876 . 167100) (\CURSORMASKPROPNAME 
-167102 . 167322)) (167325 185275 (CURSORCREATE 167335 . 170010) (CURSOR 170012 . 171824) (
-\CURSOR-VALID-P 171826 . 172913) (\CURSORUP 172915 . 174630) (\CURSORPOSITION 174632 . 177160) (
-\CURSORDOWN 177162 . 177395) (ADJUSTCURSORPOSITION 177397 . 177975) (CURSORPOSITION 177977 . 179519) (
-CURSORSCREEN 179521 . 180177) (CURSOREXIT 180179 . 181570) (FLIPCURSOR 181572 . 182698) (FLIPCURSORBAR
- 182700 . 183680) (LASTMOUSEX 183682 . 183936) (LASTMOUSEY 183938 . 184192) (CREATEPOSITION 184194 . 
-184400) (POSITIONP 184402 . 184686) (CURSORHOTSPOT 184688 . 185273)) (186513 188061 (GETMOUSESTATE 
-186523 . 187182) (\EVENTKEYS 187184 . 188059)) (194260 195056 (MACHINETYPE 194270 . 194670) (
-SETMAINTPANEL 194672 . 195054)) (195086 196225 (BEEPON 195096 . 195749) (BEEPOFF 195751 . 196223)) (
-196676 196939 (WITHOUT-INTERRUPTS 196686 . 196937)))))
+  (FILEMAP (NIL (14744 22060 (BKSYSCHARCODE 14754 . 15103) (\CLEARSYSBUF 15105 . 15663) (\GETKEY 15665
+ . 16840) (\NSYSBUFCHARS 16842 . 17584) (\SAVESYSBUF 17586 . 19195) (\SYSBUFP 19197 . 19501) (
+\GETSYSBUF 19503 . 19683) (\PUTSYSBUF 19685 . 20898) (\PEEKSYSBUF 20900 . 22058)) (23345 60866 (
+\KEYBOARDINIT 23355 . 25075) (\KEYBOARDEVENTFN 25077 . 29777) (\ALLOCLOCKED 29779 . 30369) (
+\SETIOPOINTERS 30371 . 34907) (\KEYBOARDOFF 34909 . 35323) (\KEYBOARDON 35325 . 35704) (\KEYHANDLER 
+35706 . 35837) (\KEYHANDLER1 35839 . 43285) (\RESETKEYBOARD 43287 . 44935) (\DOMOUSECHORDING 44937 . 
+48757) (\DOTRANSITIONS 48759 . 49436) (\DECODETRANSITION 49438 . 56814) (MOUSECHORDWAIT 56816 . 57480)
+ (\TRACKCURSOR 57482 . 60864)) (95325 117198 (KEYACTION 95335 . 96188) (KEYACTIONTABLE 96190 . 97372) 
+(KEYBOARDTYPE 97374 . 98476) (RESETKEYACTION 98478 . 100237) (\KEYBOARD.MACHINE-SPECIFIC-KEYACTIONS 
+100239 . 102141) (\KEYACTION1 102143 . 112259) (KEYDOWNP 112261 . 112596) (KEYNUMBERP 112598 . 112796)
+ (\KEYNAMETONUMBER 112798 . 113492) (\KEYNUMBERTONAME 113494 . 113684) (MODIFY.KEYACTIONS 113686 . 
+114547) (METASHIFT 114549 . 115493) (SHIFTDOWNP 115495 . 117196)) (117261 117557 (
+SETUP.OFFICE.KEYBOARD 117271 . 117555)) (120536 122248 (\INIT.KEYBOARD.STREAM 120546 . 122246)) (
+122513 138890 (\DOBUFFEREDTRANSITIONS 122523 . 137953) (\TIMER.INTERRUPTFRAME 137955 . 138680) (
+\PERIODIC.INTERRUPTFRAME 138682 . 138888)) (139144 143221 (\HARDCURSORUP 139154 . 141036) (
+\HARDCURSORPOSITION 141038 . 143074) (\HARDCURSORDOWN 143076 . 143219)) (143222 167282 (CURSOR.INIT 
+143232 . 146932) (\CURSORDESTINATION 146934 . 149252) (\SOFTCURSORUP 149254 . 154508) (
+\SOFTCURSORUPCURRENT 154510 . 161546) (\SOFTCURSORPOSITION 161548 . 162313) (\SOFTCURSORDOWN 162315 . 
+163023) (CURSORPROP 163025 . 163367) (GETCURSORPROP 163369 . 163557) (PUTCURSORPROP 163559 . 164714) (
+\CURSORBITSPERPIXEL 164716 . 166832) (\CURSORIMAGEPROPNAME 166834 . 167058) (\CURSORMASKPROPNAME 
+167060 . 167280)) (167283 185233 (CURSORCREATE 167293 . 169968) (CURSOR 169970 . 171782) (
+\CURSOR-VALID-P 171784 . 172871) (\CURSORUP 172873 . 174588) (\CURSORPOSITION 174590 . 177118) (
+\CURSORDOWN 177120 . 177353) (ADJUSTCURSORPOSITION 177355 . 177933) (CURSORPOSITION 177935 . 179477) (
+CURSORSCREEN 179479 . 180135) (CURSOREXIT 180137 . 181528) (FLIPCURSOR 181530 . 182656) (FLIPCURSORBAR
+ 182658 . 183638) (LASTMOUSEX 183640 . 183894) (LASTMOUSEY 183896 . 184150) (CREATEPOSITION 184152 . 
+184358) (POSITIONP 184360 . 184644) (CURSORHOTSPOT 184646 . 185231)) (186471 188019 (GETMOUSESTATE 
+186481 . 187140) (\EVENTKEYS 187142 . 188017)) (194218 195014 (MACHINETYPE 194228 . 194628) (
+SETMAINTPANEL 194630 . 195012)) (195044 196183 (BEEPON 195054 . 195707) (BEEPOFF 195709 . 196181)) (
+196634 196897 (WITHOUT-INTERRUPTS 196644 . 196895)))))
 STOP
diff --git a/sources/LLKEY.LCOM b/sources/LLKEY.LCOM
index fd112f34..6c9999ef 100644
Binary files a/sources/LLKEY.LCOM and b/sources/LLKEY.LCOM differ
