O6QYROOU25ZES3OE4QQUU5MNFLUWZNFYRQY2535JOERYUYB5BNUQC
GAD7OJC2Y6CZTLAQVQKJRB7HVBNFRF2PR3P64PSDBCNMLKMCC5TQC
IFPV5C6EJUWOBQUBIF4FUQ6AUYQSZ56CQLJPYZIPOWH6Y3HF4N2QC
NZFPRI5PD5IHUB7TIJWDEL53QGS7POWJES7JPMET6KFCP3RWBFRQC
QZUFJMD5OTAZGSUO4HSJ2NNNRJR7NOKIVOIIGHWM6IF4PFNMQZHAC
NI7WCDVACHGU5X536NUPQ6LBXGAPTMDPEUJSK6KXMPMOIUL5HPJQC
BULPIBEGL7TMK6CVIE7IS7WGAHGOSUJBGJSFQK542MOWGHP2ADQQC
O4ZGUPZNPNAQUCBV47GSEH33HGIXYODGDMOG2PM3T6D7EVR5YEEAC
3GITFJZKVNOZGJR24ANV4FASDIXMCGMLTSVLIMXPVO2QYKYIHABAC
ALFXBWFQ2XHGX4TNLQZKMFMWSLDSKUBC4PFHIDGMMO72TJIDTGGAC
2CK5QI7WA7M4IVSACFGOJYAIDKRUTZVMMPSFWEJTUNMWTN7AX4NAC
SPSW74Y5OJ54Y7VQ3SJFCJR5CYDKTR4A3TOEVZODDZLUSDDU2GZAC
GX5PD3CLX63YPRCVKQTLSPDZTBWLZFJ4G6LJTPSMR6UGXFBM4AYAC
A3XJXFLE7IX524G4HWJKMQYKJCMR3N2MVFFSW7ILAEDROTOUNF3QC
3TDOZESEOYHGF6LYKR6PYSPNFI3QUGED2BKM5LUDEKJKRIX3ACEAC
MTJEVRJR5GLWUSK7HMIM4UXM6GS6O6YCRWJT3DUSU2RYMHCQNOEQC
G3DLS5OUO77V4MC6754KTETRCTVUBYBHMGR7MTV52IYYM7QA3ROQC
R2ASHK5CEE3PTRLS37GP4PXJ7HIGJ6UD72KKBI57UDJI7VRROQGQC
2L5MEZV344TOZLVY3432RHJFIRVXFD6O3GWLL5O4CV66BGAFTURQC
MD3W5IRAC6UQALQE4LJC52VQNDO3I3HXF3XE2XHDABXBYJBUVAXQC
FS2ITYYHBLFT66YUC3ENPFYI2HOYHOVEPQIN7NQR6KF5MEK4NKZAC
I2X3UM5Y4ELUKVCX6EBK5HSRTF3SXHHDZOWKFVAZ4UZ3NTKFKHOQC
D4FEFHQCSILZFQ5VLWNXAIRZNUMCDNGJSM4UJ6T6FDMMIWYRYILQC
--== shortcuts that mutate text (must schedule_save)
record_undo_event(State, {before=before, after=snapshot(State, before_line, State.cursor1.line)})
schedule_save(State)
record_undo_event(State, {before=before, after=snapshot(State, State.cursor1.line)})
schedule_save(State)