GOOF----LE-8-2.0 )]V4hð] gguile¤ ¤ gdefine-module*¤ ¤ ¤ gice-9¤ g gap-buffer¤ ¤ gfilenameS¤ fice-9/gap-buffer.scm¤ gexportsS¤ ggb?¤ gmake-gap-buffer¤ ggb-point¤ g gb-point-min¤ g gb-point-max¤ ggb-insert-string!¤ ggb-insert-char!¤ ggb-delete-char!¤ g gb-erase!¤ g gb-goto-char¤ g gb->string¤ g gb-filter!¤ g gb->lines¤ ggb-filter-lines!¤ gmake-gap-buffer-port¤   ¤ g autoloadsS¤ gsrfi¤ gsrfi-13¤ ¤ g string-join¤ ! ¤ "!¤ #gset-current-module¤ $#¤ %#¤ &gmake-record-type¤ 'gs¤ (gall-sz¤ )ggap-ofs¤ *gaft-ofs¤ +'()*¤ ,grecord-predicate¤ -grecord-accessor¤ .gs:¤ /gall-sz:¤ 0ggap-ofs:¤ 1gaft-ofs:¤ 2grecord-modifier¤ 3gs!¤ 4gall-sz!¤ 5ggap-ofs!¤ 6gaft-ofs!¤ 7gdefault-initial-allocation¤ 8gdefault-chunk-size¤ 9gdefault-realloc-threshold¤ :ground-up¤ ;grecord-constructor¤ gsubstring-move!¤ ?grealloc¤ @gport?¤ Ag eof-object?¤ Bg list->string¤ Cgreverse¤ Dg read-char¤ Egstring?¤ Fg string-length¤ Ggerror¤ Hf bad init type¤ Ig insert-prep¤ Jg string-set!¤ Kgmax¤ Lgmin¤ Mg point++n!¤ Ng point+-n!¤ Og string-append¤ Pg substring¤ Qg string-index¤ Rfnot a gap-buffer:¤ Sgmake-soft-port¤ Tg string-ref¤ Ufrw¤C5h¨ †]4   "54%>"G4&i+5R4,ii5 R4-ii'5.R4-ii(5/R4-ii)50R4-ii*51R42ii'53R42ii(54R42ii)55R42ii*56R €7R €8R 9R8h‡]œ—šCgn  gfilenamefice-9/gap-buffer.scmŒ „ ŒŒ … ŒŒ … ŒŒ … ŒŒ  gnameground-upŒC:R4;ii5346 h Å]:4545–454545–4  >"G4>"G4>"G4>"G 6½ggb  Ÿginc  Ÿgold-s  Ÿgall-sz   Ÿgnew-sz   Ÿggap-ofs  " Ÿgaft-ofs  + Ÿgnew-s  4 Ÿg new-aft-ofs  ; Ÿ gfilenamefice-9/gap-buffer.scmŒ ‰ ŒŒ  Š ŒŒ Š ŒŒ ‹ ŒŒ  Š ŒŒ  Œ ŒŒ  Š ŒŒ  ŒŒ " Š ŒŒ % Ž ŒŒ + Š ŒŒ . ŒŒ 4 Š ŒŒ ; ŒŒ ; Š ŒŒ > ‘ ŒŒ V ’ ŒŒ p “ ŒŒ „ ” ŒŒ Ÿ • ŒŒ  Ÿ gnamegreallocŒC?R<3=7456@ABC:>.DEFGHhQ-1345(X445>"G4>"G4 >"G4>"G"45$Ò"·4 5$“4 4 554 5445>"G4>"G4  45 >"G4>"G4>"9G"245Œ—"ÿÿI45 "ÿÿ6"«45$Ž454 5445>"G4>"G4  45 >"G4>"G4>"G"4>"GCIginit ggb  gv  q þgc  ‚ 9gacc  ‚ 9glen  ‚ 9gstring  ™  galloc  ¢ glen  b ågalloc  k â gfilenamefice-9/gap-buffer.scmŒ — ŒŒ ˜ ŒŒ  ˜ ŒŒ  ™ ŒŒ  š ŒŒ  š ŒŒ ' š ŒŒ 0 › ŒŒ D œ ŒŒ W ŒŒ q ¥ ŒŒ q ž ŒŒ t ¦ ŒŒ ~ ¦ ŒŒ ‚ ¨ ŒŒ ƒ © !ŒŒ © ŒŒ Ž ª 'ŒŒ ‘ ª 5ŒŒ ™ ª 'ŒŒ ™ ª !ŒŒ œ Ÿ +ŒŒ ¢ Ÿ ŒŒ ¥   ŒŒ ª   'ŒŒ µ   ŒŒ ¾ ¡ ŒŒ Ò ¢ ŒŒ Ú ¢ >ŒŒ æ ¢ ŒŒ ï £ ŒŒ  ¤ ŒŒ ! § 0ŒŒ , « .ŒŒ / « ;ŒŒ 9 « !ŒŒ 9 ¨ ŒŒ : § 0ŒŒ A ¨ 6ŒŒ L ¨ ŒŒ Q ¬ ŒŒ [ ¦ ŒŒ \ ­ !ŒŒ b ­ ŒŒ e Ÿ +ŒŒ k Ÿ ŒŒ n   ŒŒ s   'ŒŒ ~   ŒŒ ‡ ¡ ŒŒ › ¢ ŒŒ £ ¢ >ŒŒ ¯ ¢ ŒŒ ¸ £ ŒŒ Ì ¤ ŒŒ ê ® ŒŒ î ® %ŒŒ ó ® ŒŒ;  gnamegmake-gap-bufferŒC R0h]45—Cwggb  gfilenamefice-9/gap-buffer.scmŒ ± ŒŒ  ² ŒŒ ² ŒŒ  gnameggb-pointŒCRhq] Ciggb  gfilenamefice-9/gap-buffer.scmŒ ´ ŒŒ   gnameg gb-point-minŒCR/10h §]454545˜˜—CŸggb  gfilenamefice-9/gap-buffer.scmŒ ¶ ŒŒ  · ŒŒ · ŒŒ  · 'ŒŒ  · ŒŒ  · ŒŒ  · ŒŒ   gnameg gb-point-maxŒCR019?:hP<]4545˜˜’$44 ˜5>"G"C4ggb  Iglen  Iggap-ofs  Igaft-ofs   Igslack   Igfilenamefice-9/gap-buffer.scmŒ ¹ ŒŒ  º ŒŒ º ŒŒ » ŒŒ  º ŒŒ  ¼ ŒŒ  ¼ ŒŒ  º ŒŒ # ½ ŒŒ ' ½ ŒŒ ( ¾ ŒŒ - ¾ ŒŒ 0 ¾ ŒŒ 5 ¾ ŒŒ : ¾ ŒŒ  I gnameg insert-prepŒCIRFI>.5h@]45454 45>"G–6ùggb  ?gstring  ?glen  ?ggap-ofs   ?gfilenamefice-9/gap-buffer.scmŒ Á ŒŒ   ŒŒ  ŒŒ à ŒŒ   ŒŒ  Ä ŒŒ  Ä "ŒŒ , Ä ŒŒ = Å ŒŒ ? Å ŒŒ  ? gnameggb-insert-string!ŒCRIJ.5h0Ú] 4 5445>"G—6Òggb  0gchar  0ggap-ofs  0gfilenamefice-9/gap-buffer.scmŒ Ç ŒŒ  È ŒŒ È ŒŒ É ŒŒ  É ŒŒ  É ŒŒ . Ê ŒŒ 0 Ê ŒŒ  0 gnameggb-insert-char!ŒCR5K06L/1hP ] ’$4 45–56 ”$44545–56 ‘$CCggb  Pgcount  Pgfilenamefice-9/gap-buffer.scmŒ Ì ŒŒ  Í ŒŒ Í ŒŒ  Î ŒŒ  Î ŒŒ  Î ŒŒ  Î ŒŒ Î ŒŒ $ Ï ŒŒ ( Í ŒŒ - Ð ŒŒ 0 Ð ŒŒ 7 Ð +ŒŒ @ Ð (ŒŒ B Ð ŒŒ D Ð ŒŒ H Ñ ŒŒ L Í ŒŒ  P gnameggb-delete-char!ŒCR56/h(‰]4 >"G456ggb  "gfilenamefice-9/gap-buffer.scmŒ Ô ŒŒ  Õ ŒŒ  Ö ŒŒ " Ö ŒŒ  " gnameg gb-erase!ŒCR>56hHþ]4–>"G4–>"G–6öggb  Agn  Ags   Aggap-ofs   Agaft-ofs   Agfilenamefice-9/gap-buffer.scmŒ Ø ŒŒ  Ù ŒŒ  Ù ŒŒ  Ù ŒŒ Ú ŒŒ ) Ú ŒŒ . Ú ŒŒ ? Û ŒŒ A Û ŒŒ  A gnameg point++n!ŒCMR>56hH]4––>"G4–>"G–6ÿggb  Dgn  Dgs   Dggap-ofs   Dgaft-ofs   Dgfilenamefice-9/gap-buffer.scmŒ Ý ŒŒ  Þ ŒŒ Þ ŒŒ  Þ -ŒŒ  Þ ŒŒ # ß ŒŒ , ß ŒŒ 1 ß ŒŒ B à ŒŒ D à ŒŒ  D gnameg point+-n!ŒCNRNM.01 h¸¬]*45 ’$ 4 5"$"”$ 45"$"Y45˜ ‘$"74 ’$"454545>"GC¤ggb  ´g new-point  ´gpmax  ±gt  ®gt  C «gdelta  Y ¨gt  _ ¥gfilenamefice-9/gap-buffer.scmŒ â ŒŒ  ã ŒŒ ã ŒŒ  ä ŒŒ  ä ŒŒ  ä ŒŒ ä ŒŒ 1 å ŒŒ 5 å ŒŒ 6 å ŒŒ C ä ŒŒ R æ "ŒŒ Y æ ŒŒ Y æ ŒŒ _ ç ŒŒ _ ç ŒŒ l è ŒŒ p è ŒŒ t è ŒŒ ë ŒŒ ˆ ë ŒŒ ë .ŒŒ š è ŒŒ  ´ gnameg gb-goto-charŒCR.OP01h0Î] 454 45544556Æggb  ,gs ,gfilenamefice-9/gap-buffer.scmŒ î ŒŒ  ï ŒŒ ï ŒŒ  𠌌  ð "ŒŒ  𠌌  ñ ŒŒ " ñ ŒŒ * ñ ŒŒ , 𠌌  , gnameg gb->stringŒCRh0Ï] 44554>"G6Çggb  *g string-proc  *gnew   *gfilenamefice-9/gap-buffer.scmŒ ó ŒŒ  ô ŒŒ  ô ŒŒ  ô ŒŒ  ô ŒŒ  õ ŒŒ * ö ŒŒ  * gnameg gb-filter!ŒCRQPChX8]!45"<4 5$—45Œ"ÿÿÔ45Œ6 "ÿÿº0ggb  Ugstr Ugstart   Kgacc   Kgt   Kgfilenamefice-9/gap-buffer.scmŒ ø ŒŒ  ù ŒŒ ù ŒŒ  ú ŒŒ  û ŒŒ  û ŒŒ % ý ŒŒ & ý %ŒŒ 3 ý ŒŒ ; ý ŒŒ > þ !ŒŒ I þ ŒŒ K þ ŒŒ K ú ŒŒ M ú ŒŒ U ú ŒŒ  U gnameg gb->linesŒCR h8ã] 44554>"G4 56Ûggb  1g lines-proc  1g new-lines   1gfilenamefice-9/gap-buffer.scmŒ  ŒŒ   ŒŒ   ŒŒ   ŒŒ   ŒŒ   ŒŒ '  ŒŒ 1  ŒŒ  1 gnameggb-filter-lines!ŒCR GRSha]L6Ygc  gfilenamefice-9/gap-buffer.scmŒ  ŒŒ  ŒŒ  Cha]L6Ygs  gfilenamefice-9/gap-buffer.scmŒ  ŒŒ  ŒŒ  C01/.TJ56 h€)] 4L54L54L5‘$C4L5454>"G4L—>"G4L—>"GC!ggap-ofs  {gaft-ofs  {gs  + {gc  6 {gfilenamefice-9/gap-buffer.scmŒ  ŒŒ   ŒŒ  ŒŒ   ŒŒ   ŒŒ   ŒŒ "  ŒŒ %  ŒŒ +  ŒŒ .  ŒŒ 6  ŒŒ 9  ŒŒ O  ŒŒ V  $ŒŒ [  ŒŒ d  ŒŒ k  $ŒŒ p  ŒŒ  { CU hPÏ] 45$"4>"GOOO6Çggb  Lgt ,gfilenamefice-9/gap-buffer.scmŒ  ŒŒ   ŒŒ  ŒŒ   ŒŒ   ŒŒ !  ŒŒ H  ŒŒ J  ŒŒ L  ŒŒ  L gnamegmake-gap-buffer-portŒCRC~gm  ,gfilenamefice-9/gap-buffer.scmŒ  Y ŒŒ - l ŒŒ 3 l ŒŒ 5 m ŒŒ 7 l ŒŒ : k ŒŒ ; s ŒŒ H s ŒŒ I u ŒŒ S u -ŒŒ U u ŒŒ X u ŒŒ Y v ŒŒ c v -ŒŒ e v ŒŒ h v ŒŒ i w ŒŒ s w -ŒŒ u w ŒŒ x w ŒŒ y x ŒŒ ƒ x -ŒŒ … x ŒŒ ˆ x ŒŒ ‰ z ŒŒ “ z -ŒŒ • z ŒŒ ˜ z ŒŒ ™ { ŒŒ £ { -ŒŒ ¥ { ŒŒ ¨ { ŒŒ © | ŒŒ ³ | -ŒŒ µ | ŒŒ ¸ | ŒŒ ¹ } ŒŒ à } -ŒŒ Å } ŒŒ È } ŒŒ Î € ŒŒ Ô ŒŒ Ù ‚ ŒŒ ‚ „ ŒŒ ƒ ‡ ŒŒ Œ ‡ +ŒŒ Ž ‡ ŒŒ ‘ ‡ ŒŒ  ‰ ŒŒ ¬ — ŒŒ R ± ŒŒ Ü ´ ŒŒ º ¶ ŒŒ g ¹ ŒŒ Ä Á ŒŒ í Ç ŒŒ { Ì ŒŒ D Ô ŒŒ ¡ Ø ŒŒ  Ý ŒŒ  â ŒŒ © î ŒŒ Â ó ŒŒ k ø ŒŒ ž  ŒŒ ¢  ŒŒC  ¤ C6