Commit 43f36b80 authored by Richard M. Stallman's avatar Richard M. Stallman
Browse files

Initial revision

parent 03059963
;;; handwrite.el --- turns your emacs buffer into a handwritten document.
;;
;; (C) Copyright 1996 Free Software Foundation, Inc.
;;
;; Author: Danny Roozendaal (danny@tvs.kun.nl)
;; Created: October 21 1996
;; Keywords: cursive writing
;;
;; This file is part of GNU Emacs.
;;
;; GNU Emacs is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.
;;
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
;;
;;; Commentary:
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; The function handwrite creates PostScript output containing a
;; handwritten version of the current buffer..
;; Other functions that may be useful are
;;
;; handwrite-10pt: sets the font size to 10 and finds corresponding
;; values for the line spacing and the number of lines
;; on a page.
;; handwrite-11pt: which is similar
;; handwrite-12pt: which is also similar
;; handwrite-13pt: which is similar, too
;;
;; handwrite-set-pagenumber: set and unset page numbering
;;
;;
;; If you are not satisfied with the type page there are a number of
;; variables you may want to set.
;;
;;
;; Installation
;;
;; type at your prompt "emacs -l handwrite.el" or put this file on your
;; Emacs-Lisp load path, add the following into your ~/.emacs startup file
;;
;; (require 'handwrite)
;;
;; "M-x handwrite" or "Write by hand" in the edit menu should work now.
;;
;;
;; I tried to make it `iso_8859_1'-friendly, but there are some exotic
;; characters missing.
;;
;;
;; Known bugs: -Page feeds do not do their work, but are ignored instead.
;; -Tabs are not always properly displayed.
;; -Handwrite may create corrupt PostScript if it encounters
;; unknown characters.
;;
;; Thanks to anyone who emailed me suggestions!
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; Code:
;; Variables
(defvar handwrite-version "2.0"
"The version of handwrite.el")
(defvar handwrite-psindex 0
"The index of the PostScript buffer")
(defvar menu-bar-handwrite-map (make-sparse-keymap "Handwrite functions."))
(fset 'menu-bar-handwrite-map (symbol-value 'menu-bar-handwrite-map))
;; User definable variables
(defvar handwrite-numlines 60
"*The number of lines on a page of the PostScript output")
(defvar handwrite-fontsize 11
"*The size of the font for the PostScript output")
(defvar handwrite-linespace 12
"*The spacing for the PostScript output")
(defvar handwrite-xstart 30
"*Translation in the x-direction of the origin in the PostScript output")
(defvar handwrite-ystart 810
"*Translation in the y-direction of the origin in the PostScript output")
(defvar handwrite-pagenumbering nil
"*If t then number each page of the PostScript output")
(defvar handwrite-10pt-numlines 65
"*The number of lines on a page for the function handwrite-10pt")
(defvar handwrite-11pt-numlines 60
"*The number of lines on a page for the function handwrite-11pt")
(defvar handwrite-12pt-numlines 55
"*The number of lines on a page for the function handwrite-12pt")
(defvar handwrite-13pt-numlines 50
"*The number of lines on a page for the function handwrite-13pt")
;; Interactive functions
(defun handwrite ()
"Turns the buffer into a handwritten document.
Variables: handwrite-linespace (default 12)
handwrite-fontsize (default 11)
handwrite-numlines (default 60)
handwrite-pagenumbering (default nil)"
(interactive)
(let
((pmin) ; thanks, Havard
(lastp)
(cur-buf (current-buffer))
(tpoint (point))
(ps-ypos 63)
(lcount 0)
(ipage 1)
(nlan next-line-add-newlines) ;remember the old value
(buf-name (buffer-name) )
(textp)
(ps-buf-name) ;name of the PostScript buffer
)
(goto-char (point-min)) ;start at beginning
(setq handwrite-psindex (1+ handwrite-psindex))
(setq ps-buf-name
(format "*handwritten%d.ps*" handwrite-psindex))
(setq next-line-add-newlines t)
(switch-to-buffer ps-buf-name)
(handwrite-insert-header buf-name)
(insert "\n(\\nCreated by Gnu Emacs' handwrite version "
handwrite-version "\\n\\n)=print flush\n")
(handwrite-insert-preamble)
(handwrite-insert-info)
(handwrite-insert-font)
(setq textp (point))
(insert "%%Page: 1 1\n")
(insert "Hwjst\n")
(insert "/Hwsave save def\n")
(if handwrite-pagenumbering (insert "20 30 m\nxym(page 1)a\n"))
(insert "44 63 m\n")
(insert "xym( )a")
(backward-char 3)
(switch-to-buffer cur-buf)
(goto-char (point-min)) ;start at beginning
(save-excursion
;;as long as we see a newline the document is not ended.
(while (re-search-forward "\n" nil t)
(previous-line 1)
(beginning-of-line)
(setq pmin (point))
(search-forward "\n" nil t)
(backward-char 1)
(copy-region-as-kill (point) pmin)
(forward-char 1)
(switch-to-buffer ps-buf-name)
(yank)
(message "write write write...")
(search-forward ")a" nil t)
(backward-char 2)
(setq lastp (point))
(beginning-of-line)
(search-forward "(" nil t)
(while (re-search-forward "[()\\]" lastp t)
(save-excursion
(setq lastp (+ lastp 1))
(forward-char -1)
(insert "\\")))
(setq ps-ypos (+ ps-ypos handwrite-linespace))
(end-of-line)
(insert "\n")
(setq lcount (+ lcount 1))
(cond ( (eq lcount handwrite-numlines)
(setq ipage (+ ipage 1))
(insert "0 0 m\n")
(insert "showpage exec Hwsave restore\n")
(insert "%%Page: " (number-to-string ipage) " "
(number-to-string ipage) "\n")
(insert "Hwjst\n")
(insert "/Hwsave save def\n")
(if handwrite-pagenumbering
(insert "20 30 m\nxym(page "
(number-to-string ipage) ")a\n"))
(setq ps-ypos 63)
(setq lcount 0)
))
(insert "44 "(number-to-string ps-ypos) " m\n")
(insert "xym( )a")
(backward-char 3)
(switch-to-buffer cur-buf)
))
(switch-to-buffer ps-buf-name)
(next-line 1)
(insert "showpage exec Hwsave restore\n\n")
(insert "%%Pages " (number-to-string ipage) " 0\n")
(insert "%%EOF\n")
(goto-char textp) ;start where the inserted text begins
(while (search-forward "ÿ" nil t)
(replace-match "\\" nil t) (insert "264"))
(goto-char textp)
(while (search-forward "á" nil t)
(replace-match "\\" nil t) (insert "207"))
(goto-char textp)
(while (search-forward "à" nil t)
(replace-match "\\" nil t) (insert "210"))
(goto-char textp)
(while (search-forward "â" nil t)
(replace-match "\\" nil t) (insert "211"))
(goto-char textp)
(while (search-forward "ä" nil t)
(replace-match "\\" nil t) (insert "212"))
(goto-char textp)
(while (search-forward "ã" nil t)
(replace-match "\\" nil t) (insert "213"))
(goto-char textp)
(while (search-forward "å" nil t)
(replace-match "\\" nil t) (insert "214"))
(goto-char textp)
(while (search-forward "é" nil t)
(replace-match "\\" nil t) (insert "216"))
(goto-char textp)
(while (search-forward "è" nil t)
(replace-match "\\" nil t) (insert "217"))
(goto-char textp)
(while (search-forward "ê" nil t)
(replace-match "\\" nil t) (insert "220"))
(goto-char textp)
(while (search-forward "ë" nil t)
(replace-match "\\" nil t) (insert "221"))
(goto-char textp)
(while (search-forward "í" nil t)
(replace-match "\\" nil t) (insert "222"))
(goto-char textp)
(while (search-forward "ì" nil t)
(replace-match "\\" nil t) (insert "223"))
(goto-char textp)
(while (search-forward "î" nil t)
(replace-match "\\" nil t) (insert "224"))
(goto-char textp)
(while (search-forward "ï" nil t)
(replace-match "\\" nil t) (insert "225"))
(goto-char textp)
(while (search-forward "ó" nil t)
(replace-match "\\" nil t) (insert "227"))
(goto-char textp)
(while (search-forward "ò" nil t)
(replace-match "\\" nil t) (insert "230"))
(goto-char textp)
(while (search-forward "ô" nil t)
(replace-match "\\" nil t) (insert "231"))
(goto-char textp)
(while (search-forward "ö" nil t)
(replace-match "\\" nil t) (insert "232"))
(goto-char textp)
(while (search-forward "õ" nil t)
(replace-match "\\" nil t) (insert "233"))
(goto-char textp)
(while (search-forward "ú" nil t)
(replace-match "\\" nil t) (insert "234"))
(goto-char textp)
(while (search-forward "ù" nil t)
(replace-match "\\" nil t) (insert "235"))
(goto-char textp)
(while (search-forward "û" nil t)
(replace-match "\\" nil t) (insert "236"))
(goto-char textp)
(while (search-forward "ü" nil t)
(replace-match "\\" nil t) (insert "237"))
(goto-char textp)
(while (search-forward "ß" nil t)
(replace-match "\\" nil t) (insert "247"))
(goto-char textp)
(while (search-forward "°" nil t)
(replace-match "\\" nil t) (insert "241"))
(goto-char textp)
(while (search-forward "®" nil t)
(replace-match "\\" nil t) (insert "250"))
(goto-char textp)
(while (search-forward "©" nil t)
(replace-match "\\" nil t) (insert "251"))
(goto-char textp)
(while (search-forward "ij" nil t)
(replace-match "\\" nil t) (insert "264"))
(goto-char textp)
(while (search-forward "ç" nil t)
(replace-match "\\" nil t) (insert "215"))
(goto-char textp)
(while (search-forward "§" nil t)
(replace-match "\\" nil t) (insert "244"))
(goto-char textp)
(while (search-forward "ñ" nil t)
(replace-match "\\" nil t) (insert "226"))
(goto-char textp)
(while (search-forward "£" nil t)
(replace-match "\\" nil t) (insert "243"))
;;To avoid cumbersome code we simply ignore pagefeeds
(goto-char textp)
(while (search-forward "\f" nil t)
(replace-match "" nil t) )
(untabify textp (point-max)) ; this may result in strange tabs
(if (y-or-n-p "Send this to the printer? ")
(call-process-region (point-min)
(point-max) lpr-command nil nil nil))
(message "")
(bury-buffer ())
(switch-to-buffer cur-buf)
(goto-char tpoint)
(setq next-line-add-newlines nlan)
))
(defun handwrite-set-pagenumber ()
"Toggle the value of handwrite-pagenumbering"
(interactive)
(if handwrite-pagenumbering
(handwrite-set-pagenumber-off)(handwrite-set-pagenumber-on)))
(defun handwrite-10pt ()
"Sets the variable `handwrite-fontsize' to 10 and finds correct
values for `handwrite-linespace' and `handwrite-numlines'"
(interactive)
(setq handwrite-fontsize 10)
(setq handwrite-linespace 11)
(setq handwrite-numlines handwrite-10pt-numlines)
(define-key menu-bar-handwrite-map [10pt]
'("10 pt *" . handwrite-10pt))
(define-key menu-bar-handwrite-map [11pt]
'("11 pt" . handwrite-11pt))
(define-key menu-bar-handwrite-map [12pt]
'("12 pt" . handwrite-12pt))
(define-key menu-bar-handwrite-map [13pt]
'("13 pt" . handwrite-13pt))
(message "Joepie set to 10 points"))
(defun handwrite-11pt ()
"Sets the variable `handwrite-fontsize' to 11 and finds correct
values for `handwrite-linespace' and `handwrite-numlines'"
(interactive)
(setq handwrite-fontsize 11)
(setq handwrite-linespace 12)
(setq handwrite-numlines handwrite-11pt-numlines )
(define-key menu-bar-handwrite-map [10pt]
'("10 pt" . handwrite-10pt))
(define-key menu-bar-handwrite-map [11pt]
'("11 pt *" . handwrite-11pt))
(define-key menu-bar-handwrite-map [12pt]
'("12 pt" . handwrite-12pt))
(define-key menu-bar-handwrite-map [13pt]
'("13 pt" . handwrite-13pt))
(message "Joepie set to 11 points"))
(defun handwrite-12pt ()
"Sets the variable `handwrite-fontsize' to 12 and finds correct
values for `handwrite-linespace' and `handwrite-numlines'"
(interactive)
(setq handwrite-fontsize 12)
(setq handwrite-linespace 13)
(setq handwrite-numlines handwrite-12pt-numlines)
(define-key menu-bar-handwrite-map [10pt]
'("10 pt" . handwrite-10pt))
(define-key menu-bar-handwrite-map [11pt]
'("11 pt" . handwrite-11pt))
(define-key menu-bar-handwrite-map [12pt]
'("12 pt *" . handwrite-12pt))
(define-key menu-bar-handwrite-map [13pt]
'("13 pt" . handwrite-13pt))
(message "Joepie set to 12 points"))
(defun handwrite-13pt ()
"Sets the variable `handwrite-fontsize' to 13 and finds correct
values for `handwrite-linespace' and `handwrite-numlines'"
(interactive)
(setq handwrite-fontsize 13)
(setq handwrite-linespace 14)
(setq handwrite-numlines handwrite-13pt-numlines)
(define-key menu-bar-handwrite-map [10pt]
'("10 pt" . handwrite-10pt))
(define-key menu-bar-handwrite-map [11pt]
'("11 pt" . handwrite-11pt))
(define-key menu-bar-handwrite-map [12pt]
'("12 pt" . handwrite-12pt))
(define-key menu-bar-handwrite-map [13pt]
'("13 pt *" . handwrite-13pt))
(message "Joepie set to 13 points"))
;; Internal Functions
;;The header for the PostScript output. The argument is the name of
;;the original buffer
(defun handwrite-insert-header (buf-name)
(insert "%!PS-Adobe-2.0\n")
(insert "%%Title: " buf-name "\n")
(insert "%%CreationDate: " (current-time-string) "\n" )
(insert "%%Pages: (atend)\n")
(insert "%%For: " user-mail-address "\n")
(insert "%%EndComments\n"))
;;Some PostScript definitions for using our font.
(defun handwrite-insert-preamble ()
(insert "\n%%BeginPreamble
/m {moveto} def
/r {roll} def
/e {exch} def
/a {awidthshow} def
/xym {0.52490 0. 32 0.05249 0.} def
/HwJdict 80 dict def
/Hwfdict 80 dict def
/getsymb {Hwfdict /Jsymb get 3 1 r put} def
/Chread{
{ e begin
HwJdict begin %read in character specifications
/jnum e def
/jnum1 jnum 6 mul def
save symbstr jnum1 6 getinterval{
}forall
/pixvol e def
/pixwid e def
/charwidth e def
/trx e def
/try e def
/pixf e def
.02666667 .02666667 scale
/pixwid pixwid 1.042 mul def
/pixwidn pixwid trx add def
/pixvoln pixvol try add def
charwidth 0 trx try pixwidn pixvoln setcachedevice
newpath 0 0 m
pixf 0 gt{
pixf 3 bitshift
trx try translate
pixwid pixvol scale
/pixvol1 {pixvol 4 add true} def
/pixvol2 pixvol neg def
/pixvol3 pixvol 2 add def
pixvol1 pixwid 0 0 pixvol2 0 pixvol3 6 array astore
Jsymb jnum get
imagemask
}if
restore
end
end
}def
}def
/Hwjst{
/Joepie findfont [Hws 0 Hws pop 0 Hws neg 0 0] makefont setfont
}def
%%EndPreamble\n"))
;;The the font size for the PostScript output.
;;Also the x-y-translations of the PostScript stuff.
(defun handwrite-insert-info ()
(insert "\n%%BeginSizeTranslate\n")
(insert "/Hws " (number-to-string handwrite-fontsize) " def")
(insert " %The size of the font\n")
(insert (number-to-string handwrite-xstart)" "
(number-to-string handwrite-ystart))
(insert " translate %Translate the origin to the current location\n")
(insert "1 -1 scale %Flip the y coordinate\n")
(insert "%%EndSizeTranslate\n\n"))
;;Bitmap PostScript font for pseudo handwritten documents.
;;Two years ago, I created the 36 points font for my
;;Apple Macintosh Classic II resulting in unusual ascii numbers.
(defun handwrite-insert-font ()
(insert "\n%%BeginFont Joepie
Hwfdict begin
/Jsymb 256 array def
/FontType 3 def
/FontBBox [0 0 1 1] def
/FontMatrix [1 0 0 1 0 0] def
/Encoding 256 array def
end
<002809000000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000
FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 002809080000
FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 002809000000 FF28FFFF0000
FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000
FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000
FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000
FF28FFFF0000 FF28FFFF0000 002809080000 020A0E08031E 021C0B0E0A0A
040C09161418 04050A121323 040D0F1C141B 040C141C0F19 021B0B08060D
02080B0C091E 0208080C0B20 041A0B100F0C 040E09141314 02060B08060B
0219090C0C03 020C0B080304 04090C120F1F 04080A121017 020C10120514
040A09121216 040C09121216 02090B120D15 040C0B121015 040A0A12121B
020209120D1D 040A09121018 04040A12101C 020C0D080412 020408080717
040B0B141116 040C0B16140B 040B0B141018 020A0D120C1C 04090B1C191F
040A091A1C1C 0408071A1E20 040A0B1A1A1E 040E0D201E1A 040C0916181C
040E0916171A 04010B1C1C27 060A0C20201E 040E060E141A 0401070E1327
040E0A1C1D1A 040C0916181C 060C07262B1C 060C0520261C 04080D1E1C20
040A05161C1C 040A0B1E1E1E 040A091A1D1E 040C0914171C 040E07161A1A
060E091E1F1A 040E071A1D1A 060A0B2C2C1E 040808181B20 040409161722
040C08181A1C 020A080A0A1D 040A0610121E 0208090A0A1F 041C0714160A
040505161903 021B0C0C060D 040C08141713 040C0916181C 040C08121412
040D0916181B 040C09141615 0202090C0D26 04040814171B 040A0916181E
020C090A0D1B 0202090A0C23 040A0814171E 020C080A0D1C 060C09222412
040C08161910 040C08141611 04000816191C 04020914171B 040A090E1014
040A09101213 040C090C0F1B 040C09161812 040A09121412 040C09181A10
040C08121511 04020812151C 040C08101312 040A050A0F1E 020A1114031C
0208070A0E20 04140A141409 FF28FFFF0000 040A071A1B1C 040A091A181C
040A0B1A171E 020F0F160E16 040A0F201A1E 04080D1E1A20 040E0B1E1D1A
040C0814171B 040D0714171B 040D0714171A 040D0814171A 040D0814171B
040D0814171B 04000912141C 040C0914151C 040C0914161C 040C0914151C
040C0914151B 020B070A0D1C 020B070A0D1C 020B080A0D1C 020B070A0D1A
040C0616191A 040B0714171D 040B08141719 040B0814171A 040B08141718
040B08141718 040B0716191B 040B0716191B 040B0716191C 040B08161919
040A0912111C 02180C0E090C 04050712141F 040A0816151C 04080A121220
020F0A120E10 040408181522 04040816191D 040A0D201A1E 040A09201C1C
06190B24210E 021C0B0C0708 0221090E0D03 040809141415 040C121E1619
04080F1E1920 04130F1A1309 040C0B141216 04090914141E 040A0914131B
040209161823 04030A161519 020B0B120E19 0407091A1921 040A0B1E141E
040C0914140F 0401090C0F25 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000
FF28FFFF0000 040A0B14121A 04010910101B FF28FFFF0000 040A0614181C
040A09141618 0407090E1221 040D0A141510 002800160000 04080A141119
04080614151A 040A0B1E1804 FF28FFFF0000 040A071A1B1D 040A071A191D
FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 041408141303 061409262404
041A0B120F0B 021D0B120D0A 021E0E0A050A 021E0B0A060A FF28FFFF0000
FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 040600060F1C FF28FFFF0000
020C0A0C0B16 020D080C0C17 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000
02140B0A0506 02040908060E FF28FFFF0000 0608092A291E FF28FFFF0000
FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000
FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000
040A0B1C181B 060C071E221C FF28FFFF0000 FF28FFFF0000 FF28FFFF0000
FF28FFFF0000 021D0C0E0C08 021E090E0C06 0421060E1105 FF28FFFF0000
021F0A0A0506 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000 FF28FFFF0000
041E09101107>
Hwfdict begin /symbstr e def end
255< 00000000 00000000 80018000 60030000 38060000 0E1C0000 03F00000
01C00000 01800000 00000000 00000000>getsymb
250< 0000 0000 6000 7800 7800 F800 F800 7000 0000 0000>getsymb
248< 00000000 00000000 F8000000 3F800000 03F80000 007E0000 00038000
00000000 00000000 >getsymb
247< 0000 0000 0030 0060 38E0 7FC0 C300 8000 0000 0000 >getsymb
246< 0000 0000 0C00 1E00 3F00 3380 60C0 4040 C020 0010 0000 0000
>getsymb
241< 000000000000 000000000000 008000000000 00C000000000 03C000000000
038000000000 000000000000 000000000000 000000000000 000000000000
010000000000 010000000000 010007C00000 03001FE00000 070038700000
070030300000 0F0060300000 1B00C0700000 3300C0600000 6300C0C0C000
C300C3818000 030046030000 03007C020000 0300F0060000 0180F00C0000
018198180000 01C30C300000 00CE06300000 00FC03E00000 007801C00000
000000000000 000000000000 >getsymb
240< 00000000 00000000 00004000 0003C000 00038000 000E0000 000C0000
00080000 00180000 0E187C00 1F98FC00 3FDCFF00 3FFFFF00 7FFFFE00
7FFFFC00 FFFFF800 FFFFF000 FFFFF000 FFFFF000 FFFFF000 FFFFF000
FFFFFC00 7FFFFC00 7FFFFF00 3FFFFF00 1FFFFE00 0FFFFE00 07FFF800
03F3F000 00000000 00000000 >getsymb
228< 000000000000 000000000000 03C010000000 07C0F0000000 1C7330000000
383F20000000 303040000000 2030C0000000 6030C0000000 C01080000000
C01180000000 C03100000000 406300000000 604200000000 60C40E000080
71843F01E080 3F0CE183B180 1E0880CE1F00 001180FA0600 003100460600
0023004C0200 0047004C0300 004B004C0300 00B300CC0300 00E300CC0200
01C1818C0200 03C1830C0600 0380830C0C00 0600FE061800 1C007C03F000
180000000000 300000000000 000000000000 000000000000 >getsymb
226< 0000 0000 2000 1800 1800 0C00 0C00 0C00 0C00 0C00 0C00 1800 1000
3000 6000 8000 0000 0000 >getsymb
225< 0000 0000 7000 E800 F800 F800 F000 F000 0000 0000 >getsymb
221< 0000 0000 8000 E000 3000 1C00 0E00 0700 0380 01C0 01C0 00E0 0030
0030 0030 0060 00C0 0180 0300 0200 0600 0C00 1800 3000 4000 0000 0000
>getsymb
220< 0000 0000 0060 0040 00C0 0180 0300 0600 0C00 1C00 3000 7000 6000
C000 4000 6000 3000 3000 1800 1C00 0E00 0600 0300 0100 0000 0000
>getsymb
218< 00000000 00000000 00020000 00060000 000E0000 000C0000 000C0000
00180000 00180000 00100000 00300000 00200000 00200000 00400000
00C00000 00C00000 01800000 01800000 03000000 03000000 06000000
06000000 0C000000 1C000000 18000000 38000000 30000000 70000000
60000000 C0000000 00000000 00000000 >getsymb
213< 0000 0000 2000 1800 0C00 0400 0400 0C00 1800 3000 6000 8000 0000
0000 >getsymb
212< 0000 0000 0800 3000 6000 C000 C000 C000 6000 3000 1000 0800 0000
0000 >getsymb
211< 0000 0000 0040 1020 0810 0C18 0C18 1818 3010 4030 8060 0040 0000
0000 >getsymb
210< 00000000 00000000 00060000 04180000 18300000 30600000 60C00000
C0C00000 C0C00000 C0C00000 C0400000 40200000 20000000 00000000
00000000 >getsymb
209< 000000000000 000000000000 FFF000000000 0FFFC0000000 000FFFFE0000
000007FFF000 000000000000 000000000000 >getsymb
208< 00000000 00000000 FFC00000 7FFF8000 007FE000 00000000 00000000
>getsymb
204< 00000000 00000000 00000200 00038C00 0007F800 001CF000 00380000
00200000 00000000 00000000 00080000 00060000 00030000 00078000
0007C000 000CE000 001CF000 00303000 00303E00 003FF800 00FF1800
00400C00 00C00C00 01800600 01800600 03000300 06000300 1C000380
30000380 60000380 E0000700 00000000 00000000 >getsymb
203< 00000000 00000000 00300000 00180000 000E0000 00038000 0003C000
0000E000 0000F000 00001800 00060800 00030000 00038000 00078000
000EC000 000C6000 00182000 00302000 00703000 01FC3000 00FFF800
01807F80 03800E00 07000200 06000200 0E000300 1C000100 38000180
600000C0 C0000060 C0000060 00000000 00000000 >getsymb
201< 00000000 00000000 80180600 E03C0700 E07C0700 703C0E00 00000000
00000000 >getsymb
200< 00000000 00000000 00100000 00180000 E00C0000 30060000 18060000
0C070000 0E018000 0E01C000 0780C000 03806000 00E07000 00E03000
00703800 00303800 00607000 00606000 01C0C000 0180C000 03018000
06070000 0C060000 380C0000 30080000 00100000 00200000 00600000
00000000 00000000 >getsymb
199< 00000000 00000000 00010000 00620000 00C60000 018C0000 03180000
06180000 0C300000 18600000 10600000 70C00000 60C00000 E1C00000
61C00000 30E00000 38600000 18300000 1C100000 0E080000 070C0000
03060000 01C30000 00C30000 00438000 00418000 00008000 00000000
00000000 >getsymb
197< 00000000 00000000 00003800 0000F000 0C038000 3F870000 70FE0000
603C0000 C0000800 80001000 00003000 03802000 0FE06000 38F06000
701CC000 600F8000 60078000 00030000 00000000 00000000 >getsymb
196< 00000000 00000000 0001C000 001F8000 00380000 00600000 00600000
00400000 00400000 00C00000 00C00000 00C00000 00C00000 00CC0000
00980000 01F00000 0F800000 0D800000 01800000 01800000 01800000
01800000 01800000 01800000 01800000 01800000 01800000 01800000
01800000 01800000 03000000 02000000 06000000 8C000000 78000000
00000000 00000000 >getsymb
195< 00000000 00000000 00000400 00001800 0003F000 00078000 00060000
00040000 000C0000 000C0000 600C0000 F00C0000 300C0000 18180000
18180000 18180000 08100000 08300000 0C300000 0C600000 0C600000
0C400000 0DC00000 07800000 07000000 02000000 00000000 00000000
>getsymb
194< 00000000 00000000 03018000 0F07C000 188C6000 10C83000 20701800
60300C00 40200600 C0200300 C0000300 C0000300 40000300 40000300
60000300 60000600 20000C00 30000800 10001800 18003000 0C006000
0C00C000 06018000 03070000 010C0000 00980000 00F00000 00600000